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 <para>Die Dienste können Sie nach der Installation
aktivieren, indem Sie die Datei <filename>/etc/inetd.conf</filename> 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> beschrieben.</para>
<para>Wenn Sie jetzt weitere Dienste aktivieren möchten, <para>Wenn Sie jetzt weitere Dienste aktivieren möchten,

View file

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