Update to r43707:

Finish up this section.
Some additional shuffling to improve the flow. Fix reference in another chapter.
This commit is contained in:
Bjoern Heidotting 2016-05-22 13:53:29 +00:00
parent 8b862fdcad
commit a3c111e113
Notes: svn2git 2020-12-08 03:00:23 +00:00
svn path=/head/; revision=48841
2 changed files with 88 additions and 148 deletions
de_DE.ISO8859-1/books/handbook
install
network-servers

View file

@ -2834,7 +2834,7 @@ Do you want to configure inetd and the network services that it provides?
<para>Die Dienste können Sie nach der Installation
aktivieren, indem Sie die Datei <filename>/etc/inetd.conf</filename>
editieren. Dies wird in <xref linkend="network-inetd-overview"/>
editieren. Dies wird in <xref linkend="network-inetd-conf"/>
beschrieben.</para>
<para>Wenn Sie jetzt weitere Dienste aktivieren möchten,

View file

@ -5,7 +5,7 @@
$FreeBSD$
$FreeBSDde: de-docproj/books/handbook/network-servers/chapter.xml,v 1.103 2011/12/24 15:51:18 bcr Exp $
basiert auf: r43706
basiert auf: r43707
-->
<chapter xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" version="5.0" xml:id="network-servers">
<!--
@ -123,6 +123,9 @@
</sect1>
<sect1 xml:id="network-inetd">
<title>Der <application>inetd</application>
<quote>Super-Server</quote></title>
<!--
<info>
<authorgroup>
@ -134,12 +137,6 @@
</info>
-->
<title>Der <application>inetd</application>
<quote>Super-Server</quote></title>
<sect2 xml:id="network-inetd-overview">
<title>Übersicht</title>
<para>Der &man.inetd.8;-Daemon wird manchmal auch als
<quote>Internet Super-Server</quote> bezeichnet, weil er
Verbindungen für viele Dienste verwaltet. Anstatt mehrere
@ -156,14 +153,16 @@
<para><application>inetd</application> wird vor allem dazu
verwendet, andere Daemonen zu aktivieren, einige Protokolle
werden aber auch direkt verwaltet. Dazu gehören
werden aber auch intern verwaltet. Dazu gehören
<application>chargen</application>,
<application>auth</application>, sowie
<application>auth</application>,
<application>time</application>,
<application>echo</application>,
<application>discard</application> sowie
<application>daytime</application>.</para>
<para>Dieser Abschnitt beschreibt die Konfiguration von
<application>inetd</application>.</para>
</sect2>
<sect2 xml:id="network-inetd-conf">
<title>Konfigurationsdatei</title>
@ -230,10 +229,11 @@ server-program-arguments</programlisting>
<listitem>
<para>Der Dienstname eines bestimmten Daemons. Er muss
einem in <filename>/etc/services</filename> aufgelisteten
Dienst entsprechen. In dieser Datei wird festgelegt,
welchen Port <application>inetd</application> abhören
muss. Wenn ein neuer Dienst erzeugt wird, muss er zuerst
in die Datei <filename>/etc/services</filename>
Dienst entsprechen. Hier wird festgelegt, auf
welchen Port <application>inetd</application>
eingehende Verbindungen für diesen Dienst entgegennimmt.
Wenn ein neuer Dienst benutzt wird, muss er zuerst
in <filename>/etc/services</filename>
eingetragen werden.</para>
</listitem>
</varlistentry>
@ -244,10 +244,11 @@ server-program-arguments</programlisting>
<listitem>
<para>Entweder <literal>stream</literal>,
<literal>dgram</literal>, <literal>raw</literal>, oder
<literal>seqpacket</literal>. <literal>stream</literal>
muss für verbindungsorientierte TCP-Daemonen
verwendet werden, während <literal>dgram</literal>
das <acronym>UDP</acronym>-Protokoll verwaltet.</para>
<literal>seqpacket</literal>. Nutzen Sie
<literal>stream</literal> für
<acronym>TCP</acronym>-Verbindungen und
<literal>dgram</literal> für
<acronym>UDP</acronym>-Dienste.</para>
</listitem>
</varlistentry>
@ -255,7 +256,7 @@ server-program-arguments</programlisting>
<term>protocol</term>
<listitem>
<para>Eines der folgenden:</para>
<para>Benutzen Sie eines der folgenden Protokolle:</para>
<informaltable frame="none" pgwide="1">
<tgroup cols="2">
@ -269,12 +270,12 @@ server-program-arguments</programlisting>
<tbody>
<row>
<entry>tcp, tcp4</entry>
<entry>tcp oder tcp4</entry>
<entry>TCP (IPv4)</entry>
</row>
<row>
<entry>udp, udp4</entry>
<entry>udp oder udp4</entry>
<entry><acronym>UDP</acronym> (IPv4)</entry>
</row>
@ -309,12 +310,17 @@ server-program-arguments</programlisting>
<term>{wait|nowait}[/max-child[/max-connections-per-ip-per-minute[/max-child-per-ip]]]</term>
<listitem>
<para><option>wait|nowait</option> gibt an, ob der von
<application>inetd</application> aktivierte Daemon seinen
eigenen Socket verwalten kann oder nicht.
<para>In diesem Feld muss <option>wait</option> oder
<option>nowait</option> angegeben werden.
<option>max-child</option>,
<option>max-connections-per-ip-per-minute</option> sowie
<option>max-child-per-ip</option> sind optional.</para>
<para><option>wait|nowait</option> gibt an, ob der Dienst
seinen eigenen Socket verwalten kann oder nicht.
<option>dgram</option>-Sockets müssen die Option
<option>wait</option> verwenden, während Daemonen mit
Stream-Sockets, die normalerweise auch aus mehreren
<option>stream</option>-Sockets, die normalerweise auch aus mehreren
Threads bestehen, die Option <option>nowait</option>
verwenden sollten. Die Option <option>wait</option>
gibt in der Regel mehrere Sockets an einen einzelnen
@ -324,65 +330,34 @@ server-program-arguments</programlisting>
<para>Die maximale Anzahl an Child-Daemonen, die
<application>inetd</application> erzeugen kann, wird durch
die Option <option>max-child</option> festgelegt. Wenn
ein bestimmter Daemon 10 Instanzen benötigt, sollte
ein bestimmter Daemon 10 Instanzen benötigt, wird
der Wert <literal>/10</literal> hinter die Option
<option>nowait</option> gesetzt werden. Geben Sie
hingegen den Wert <literal>/0</literal> an, gibt es
keine Beschränkung.</para>
<option>nowait</option> gesetzt. Der Wert
<literal>/0</literal> gibt an, das es keine
Beschränkung gibt.</para>
<para>Zusätzlich zu <option>max-child</option> kann
die maximale Anzahl von Verbindungen eines Rechners mit
einem bestimmten Daemon durch zwei weitere Optionen
beschränkt werden. Die Option
<option>max-connections-per-ip-per-minute</option>
legt die maximale Anzahl von Verbindungsversuchen fest,
<para><option>max-connections-per-ip-per-minute</option>
legt die maximale Anzahl von Verbindungsversuchen pro
Minute fest,
die von einer bestimmten <acronym>IP</acronym>-Adresse aus unternommen werden
können. Ein Wert von zehn würde die maximale
Anzahl von Verbindungsversuchen einer <acronym>IP</acronym>-Adresse mit einem
bestimmten Dienst auf zehn Versuche in der Minute
beschränken. Durch die Angabe der Option
<option>max-child-per-ip</option> können Sie hingegen
festlegen, wie viele Child-Daemonen von einer bestimmten
<acronym>IP</acronym>-Adresse aus gestartet werden können. Durch diese
Optionen lassen sich ein absichtlicher oder unabsichtlicher
Ressourcenverbrauch sowie die Auswirkungen eines
<literal>Denial of Service (DoS)</literal>-Angriffs auf
einen Rechner begrenzen.</para>
können. Sobald das Limit erreicht ist, werden weitere
Verbindungen von dieser <acronym>IP</acronym>-Adresse
geblockt, bis die Minute vorüber ist. Ein Wert von
<literal>/10</literal> würde die maximale Anzahl der
Verindungsversuche einer bestimmten
<acronym>IP</acronym>-Adresse auf zehn Versuche in der
Minute beschränken. <option>max-child-per-ip</option>
legt fest, wie viele Child-Daemonen von einer bestimmten
<acronym>IP</acronym>-Adresse aus gestartet werden
können. Durch diese Optionen lassen sich
Ressourcenverbrauch sowie die Auswirkungen eines
<literal>Denial of Service (DoS)</literal>-Angriffs
begrenzen.</para>
<para>Sie müssen hier entweder <option>wait</option>
oder <option>nowait</option> angeben. Die Angabe von
<option>max-child</option>,
<option>max-connections-per-ip-per-minute</option> und
<option>max-child-per-ip</option> ist hingegen
optional.</para>
<para>Ein Beispiel finden Sie in den Voreinstellungen für
&man.fingerd.8;:</para>
<para>Ein multithread-Daemon vom Streamtyp ohne die Optionen
<option>max-child</option>,
<option>max-connections-per-ip-per-minute</option> oder
<option>max-child-per-ip</option> sieht so aus:
<literal>nowait</literal></para>
<para>Der gleiche Daemon mit einer maximal möglichen
Anzahl von 10 parallelen Daemonen würde so aussehen:
<literal>nowait/10</literal></para>
<para>Wird zusätzlich die Anzahl der möglichen
Verbindungen pro Minute für jede <acronym>IP</acronym>-Adresse auf
20 sowie die mögliche Gesamtzahl von Childdaemonen
auf 10 begrenzt, so sieht der Eintrag so aus:
<literal>nowait/10/20</literal></para>
<para>All diese Optionen werden vom
&man.fingerd.8;-Daemon bereits in der Voreinstellung
verwendet:</para>
<programlisting>finger stream tcp nowait/3/10 nobody /usr/libexec/fingerd fingerd -s</programlisting>
<para>Will man die maximale Anzahl von Child-Daemonen auf
100 beschränken, wobei von jeder <acronym>IP</acronym>-Adresse aus
maximal 5 Child-Daemonen gestartet werden dürfen,
verwendet man den folgenden Eintrag:
<literal>nowait/100/0/5</literal>.</para>
<programlisting>finger stream tcp nowait/3/10 nobody /usr/libexec/fingerd fingerd -k -s</programlisting>
</listitem>
</varlistentry>
@ -391,11 +366,10 @@ server-program-arguments</programlisting>
<listitem>
<para>Der Benutzername, unter dem der jeweilige Daemon
laufen soll. Meistens laufen Daemonen als User
<systemitem class="username">root</systemitem>. Aus Sicherheitsgründen
laufen einige Server aber auch als User
<systemitem class="username">daemon</systemitem>, oder als am wenigsten
privilegierter User <systemitem class="username">nobody</systemitem>.</para>
laufen soll. Meistens laufen Daemonen als
<systemitem class="username">root</systemitem>,
<systemitem class="username">daemon</systemitem> oder
<systemitem class="username">nobody</systemitem>.</para>
</listitem>
</varlistentry>
@ -403,11 +377,10 @@ server-program-arguments</programlisting>
<term>server-program</term>
<listitem>
<para>Der vollständige Pfad des Daemons, der eine
Verbindung entgegennimmt. Wird der Daemon von
<application>inetd</application> intern bereitgestellt,
sollte die Option <option>internal</option> verwendet
werden.</para>
<para>Der vollständige Pfad des Daemons.
Wird der Daemon von <application>inetd</application>
intern bereitgestellt, verwenden Sie
<option>internal</option>.</para>
</listitem>
</varlistentry>
@ -415,17 +388,11 @@ server-program-arguments</programlisting>
<term>server-program-arguments</term>
<listitem>
<para>Dieser Eintrag legt (gemeinsam mit
<option>server-program</option> und beginnend mit
<literal>argv[0]</literal>), die Argumente fest, die bei
der Aktivierung an den Daemon übergeben werden.
Wenn die Anweisung auf der Kommandozeile also
<command>mydaemon -d</command> lautet, wäre
<literal>mydaemon -d</literal> auch der Wert der Option
<option>server program arguments</option>. Wenn es sich
beim Daemon um einen internen Dienst handelt, sollte
wiederum die Option <option>internal</option> verwendet
werden.</para>
<para>Dieser Eintrag legt die Argumente fest, die bei
der Aktivierung an den Daemon übergeben werden. Wenn es
sich beim Daemon um einen internen Dienst handelt,
verwenden Sie wiederum
<option>internal</option>.</para>
</listitem>
</varlistentry>
</variablelist>
@ -463,7 +430,8 @@ server-program-arguments</programlisting>
eines Dienstes fest; in der Voreinstellung gibt es keine
Einschränkung. Diese Einstellung kann für jeden Dienst
durch Setzen des Parameters <option>max-child</option>
festgelegt werden.</para>
in <filename>/etc/inetd.conf</filename> festgelegt
werden.</para>
</listitem>
</varlistentry>
@ -477,7 +445,8 @@ server-program-arguments</programlisting>
Einschränkung. Dieser Wert kann für jeden Dienst durch
das Setzen des Parameters
<option>max-connections-per-ip-per-minute</option>
festgelegt werden.</para>
in <filename>/etc/inetd.conf</filename> festgelegt
werden.</para>
</listitem>
</varlistentry>
@ -502,69 +471,40 @@ server-program-arguments</programlisting>
aktiviert werden kann; in der Voreinstellung gibt es
hier keine Beschränkung. Diese Einstellung kann für
jeden Dienst durch die Angabe von
<option>max-child-per-ip</option> angepasst
<option>max-child-per-ip</option> in
<filename>/etc/inetd.conf</filename> angepasst
werden.</para>
</listitem>
</varlistentry>
</variablelist>
<para>Es sind noch weitere Optionen verfügbar. Eine
vollständige Liste der Optionen finden Sie in
&man.inetd.8;.</para>
</sect2>
<sect2 xml:id="network-inetd-security">
<title>Sicherheit</title>
<title>Überlegungen zur Sicherheit</title>
<para>Abhängig von der bei der Installation festgelegten
Konfiguration werden viele der von
<application>inetd</application> verwalteten Dienste automatisch
aktiviert! Wenn Sie einen bestimmten Daemon nicht
benötigen, sollten Sie ihn deaktivieren! Dazu kommentieren
Sie den jeweiligen Daemon in <filename>/etc/inetd.conf</filename>
mit einem <quote>#</quote> aus, um danach die
<link linkend="network-inetd-reread">inetd-Konfiguration neu
einzulesen</link>. Einige Daemonen, zum Beispiel
<application>fingerd</application>, sollten generell deaktiviert
werden, da sie zu viele Informationen an einen potentiellen
Angreifer liefern.</para>
<para>Einige Daemonen sind nicht auf Sicherheit bedacht und
haben lange oder nicht existierende Timeouts für
Verbindungsversuche. Ein Angreifer kann dies ausnutzen, um
Verbindungen zu bestimmten Daemonen aufzubauen und somit die
verfügbaren Ressourcen zu verbrauchen, was zu einem
<foreignphrase>Denial of Service</foreignphrase>
(<acronym>DOS</acronym>) führen kann.
<para>Viele Daemonen, die von <application>inetd</application>
verwaltet werden, sind nicht auf Sicherheit bedacht. Einige
Damonen, wie beispielsweise
<application>fingerd</application>, liefern Informationen, die
für einen Angreifer nützlich sein könnten. Aktivieren Sie nur
erforderliche Dienste und überwachen Sie das System auf
übermäßige Verbindungsversuche.
<literal>max-connections-per-ip-per-minute</literal>,
<literal>max-child</literal> und
<literal>max-child-per-ip</literal> können verwendet werden,
um solche Angriffe zu begrenzen.</para>
<para>TCP-Wrapping ist in der Voreinstellung aktiviert. Lesen Sie
<para><application>TCP-Wrapper</application> ist in der
Voreinstellung aktiviert. Lesen Sie
&man.hosts.access.5;, wenn Sie weitere Informationen zum
Setzen von TCP-Beschränkungen für verschiedene von
<application>inetd</application> aktivierte Daemonen
benötigen.</para>
</sect2>
<sect2 xml:id="network-inetd-misc">
<title>Verschiedenes</title>
<para>Bei <application>daytime</application>,
<application>time</application>,
<application>echo</application>,
<application>discard</application>,
<application>chargen</application>, und
<application>auth</application> handelt es sich um intern
von <application>inetd</application> bereitgestellte Dienste.
</para>
<para>Der <application>auth</application>-Dienst bietet
Identifizierungsdienste über das Netzwerk
an und ist bis zu einem bestimmten Grad konfigurierbar,
während die meisten anderen Dienste nur aktiviert
oder deaktiviert werden können.</para>
<para>Eine ausführliche Beschreibung finden Sie in
&man.inetd.8;.</para>
</sect2>
</sect1>
<sect1 xml:id="network-nfs">