Date: Mon, 29 Dec 2008 14:19:42 GMT From: Rene Ladan <rene@FreeBSD.org> To: Perforce Change Reviews <perforce@FreeBSD.org> Subject: PERFORCE change 155416 for review Message-ID: <200812291419.mBTEJgHD079800@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=155416 Change 155416 by rene@rene_self on 2008/12/29 14:19:17 MFen handbook/network-servers 1.111 -> 1.113 Affected files ... .. //depot/projects/docproj_nl/nl_NL.ISO8859-1/books/handbook/network-servers/chapter.sgml#11 edit Differences ... ==== //depot/projects/docproj_nl/nl_NL.ISO8859-1/books/handbook/network-servers/chapter.sgml#11 (text+ko) ==== @@ -5,7 +5,7 @@ $FreeBSDnl: doc/nl_NL.ISO8859-1/books/handbook/network-servers/chapter.sgml,v 1.48 2006/01/05 21:13:23 siebrand Exp $ %SOURCE% en_US.ISO8859-1/books/handbook/network-servers/chapter.sgml - %SRCID% 1.111 + %SRCID% 1.113 --> <chapter id="network-servers"> @@ -86,6 +86,10 @@ een tijdserver opgezet kan worden met het NTP-protocol.</para> </listitem> + <listitem> + <para>Hoe het standaard log-daemon <command>syslogd</command> in + te stellen om logs van hosts op afstand te accepteren.</para> + </listitem> </itemizedlist> <para>Veronderstelde voorkennis:</para> @@ -4211,7 +4215,7 @@ </varlistentry> </variablelist> - <para>Het is altijd een goed idee om reservekopiën te maken + <para>Het is altijd een goed idee om reservekopieën te maken van het instellingenbestand voor <application>Apache</application> vóór het maken van wijzigingen. Als de juiste instellingen gemaakt zijn, kan @@ -5331,6 +5335,289 @@ <filename>/usr/share/doc/ntp/</filename>.</para> </sect2> </sect1> + + <sect1 id="network-syslogd"> + <sect1info> + <authorgroup> + <author> + <firstname>Tom</firstname> + <surname>Rhodes</surname> + <contrib>Bijgedragen door </contrib> + </author> + </authorgroup> + </sect1info> + + <title>Hosts op afstand loggen met + <command>syslogd</command></title> + + <para>Het omgaan met systeemlogs is een cruciaal aspect van zowel + beveiligings- als systeembeheer. Het in de gaten houden van + logbestanden van meerdere hosts kan nogal onhandelbaar worden als + deze hosts over (middel)grote netwerken zijn verspreid, of wanneer + ze deel zijn van verschillende soorten netwerken. In deze + gevallen kan het op afstand loggen het gehele proces een stuk + aangenamer maken.</para> + + <para>Het centraal loggen naar een specifieke loghost kan wat van de + administratieve last van het beheren van logbestanden wegnemen. + Het aggregeren, samenvoegen, en roteren van logbestanden kan op + één enkele plaats worden ingesteld, door gebruik te + maken van de eigen gereedschappen van &os;, zoals &man.syslogd.8; + en &man.newsyslog.8;. In de volgende voorbeeldconfiguratie zal + host <hostid>A</hostid>, genaamd <hostid + role="fqdn">logserv.example.com</hostid>, loginformatie voor het + plaatselijke netwerk verzamelen. Host <hostid>B</hostid>, genaamd + <hostid role="fqdn">logclient.example.com</hostid>, zal + loginformatie aan het serversysteem doorgeven. In echte + configuraties hebben beide hosts degelijke voor- en terugwaartse + <acronym>DNS</acronym> of regels in + <filename>/etc/hosts</filename> nodig. Anders worden de gegevens + geweigerd door de server.</para> + + <sect2> + <title>Configuratie van de logserver</title> + + <para>Logservers zijn machines die zijn geconfigureerd om + loginformatie van hosts op afstand te accepteren. In de meeste + gevallen is dit om de configuratie te vergemakkelijken, in + andere gevallen kan het gewoon een beheersbeslissing zijn. + Ongeacht de reden zijn er enkele eisen voordat er verder wordt + gegaan.</para> + + <para>Een juist geconfigureerde logserver voldoet aan de volgende + minimale eisen:</para> + + <itemizedlist> + <listitem> + <para>De regels van de firewall staan toe dat + <acronym>UDP</acronym> wordt doorgegeven op poort 514 van + zowel de cliënt als de server;</para> + </listitem> + + <listitem> + <para>syslogd is ingesteld om berichten op afstand van + cliëntmachines te accepteren;</para> + </listitem> + + <listitem> + <para>De syslogd-server en alle cliëntmachines moeten + geldige regels hebben voor zowel voorwaartse als + terugwaartse <acronym>DNS</acronym>, of correct zijn + geconfigureerd in <filename>/etc/hosts</filename>.</para> + </listitem> + </itemizedlist> + + <para>Om de logserver te configureren, moet de cliënt vermeld + zijn in <filename>/etc/syslog.conf</filename>, en moet de + logfaciliteit zijn gespecificeerd:</para> + + <programlisting>+logclient.example.com +*.* /var/log/logclient.log</programlisting> + + <note> + <para>Meer informatie over de verschillende ondersteunde en + beschikbare <emphasis>faciliteiten</emphasis> kan gevonden + worden in de handleidingpagina &man.syslog.conf.5;.</para> + </note> + + <para>Eenmaal toegevoegd worden alle + <literal>faciliteits</literal>-berichten gelogd naar het eerder + gespecificeerde bestand, + <filename>/var/log/logclient.log</filename>.</para> + + <para>Als laatste dient het logbestand gecreëerd te worden. + De gebruikte manier maakt niet uit, maar &man.touch.1; werkt + prima in dit soort situaties:</para> + + <screen>&prompt.root; <userinput>touch <filename>/var/log/logclient.log</filename></userinput></screen> + + <para>Nu dient het <command>syslogd</command>-daemon herstart en + geverifieerd worden:</para> + + <screen>&prompt.root; <userinput>/etc/rc.d/syslogd restart</userinput> +&prompt.root; <userinput>pgrep syslog</userinput></screen> + + <para>Als er een <acronym>PID</acronym> wordt teruggegeven, dan is + de server succesvol herstart, en kan er begonnen worden met de + configuratie van de cliënt. Raadpleeg de log + <filename>/var/log/messages</filename> voor uitvoer als de + server niet is herstart.</para> + </sect2> + + <sect2> + <title>Configuratie van de logcliënt</title> + + <para>Een logcliënt is een machine die loginformatie naar een + logserver verstuurt en daarnaast lokale kopieën + bewaart.</para> + + <para>Net als logservers moeten logcliënten ook aan enkele + minimumeisen voldoen.</para> + + <itemizedlist> + <listitem> + <para>&man.syslogd.8; moet zijn ingesteld om berichten van + bepaalde soorten naar een logserver te sturen, die ze moet + accepteren;</para> + </listitem> + + <listitem> + <para>De firewall moet <acronym>UDP</acronym>-pakketten + doorlaten op poort 512;</para> + </listitem> + + <listitem> + <para>Zowel voorwaartse als terugwaartse + <acronym>DNS</acronym> moeten geconfigureerd zijn of juiste + regels in <filename>/etc/hosts</filename> hebben.</para> + </listitem> + </itemizedlist> + + <para>De configuratie van cliënten is wat soepeler dan die + van servers. De cliëntmachine moet ook de volgende regels + in <filename>/etc/rc.conf</filename> hebben:</para> + + <programlisting>syslogd_enable="YES" +syslogd_flags="-a logclient.example.com -vv"</programlisting> + + <para>De eerste optie zet de daemon <command>syslogd</command> aan + tijdens het opstarten, en de tweede regel staat toe dat gegevens + van de cliënt op deze server worden geaccepteerd. Het + laatste gedeelte, dat <option>-vv</option> gebruikt, verhoogt de + verbositeit van gelogde berichten. Dit is extreem handig voor + het optimaal instellen van faciliteiten aangezien beheerders + kunnen zien welk soort berichten onder welke faciliteit worden + gelogd.</para> + + <para>Faciliteiten beschrijven het systeemgedeelte waarvoor een + bericht is gegenereerd. <acronym>ftp</acronym> en + <acronym>ipfw</acronym> bijvoorbeeld zijn beide faciliteiten. + Wanneer er logberichten worden gegenereerd voor deze twee + diensten, zullen ze normaalgesproken deze twee gereedschappen in + elk logbericht opnemen. Faciliteiten worden vergezeld van een + prioriteit of niveau, welke wordt gebruikt om aan te geven hoe + belangrijk een logbericht is. De meest voorkomende zullen + <literal>warning</literal> en <literal>info</literal> zijn. + Bekijk de handleidingpagina &man.syslog.3; voor een volledige + lijst van beschikbare faciliteiten en prioriteiten.</para> + + <para>De logserver moet in <filename>/etc/syslog.conf</filename> + van de cliënt zijn gedefinieerd. In dit geval wordt het + symbool <literal>@</literal> gebruikt om loggegevens naar een + server op afstand te sturen en zou er ongeveer als de volgende + regel uit moeten zien:</para> + + <programlisting>*.* @logserv.example.com</programlisting> + + <para>Eenmaal toegevoegd moet <command>syslogd</command> worden + herstart zodat de veranderingen effect hebben:</para> + + <screen>&prompt.root; <userinput>/etc/rc.d/syslogd restart</userinput></screen> + + <para>Om te testen of logberichten over het netwerk worden + verzonden, wordt &man.logger.1; gebruikt om een bericht naar + <command>syslogd</command> te sturen:</para> + + <screen>&prompt.root; <userinput>logger "Testbericht van logclient"</userinput></screen> + + <para>Dit bericht dient nu in + <filename>/var/log/messages</filename> van zowel de cliënt + als de server te staan.</para> + </sect2> + + <sect2> + <title>Logservers debuggen</title> + + <para>In bepaalde gevallen kan het nodig zijn om te debuggen als + berichten niet door de logserver worden ontvangen. Er zijn + verschillende redenen waarom dit kan gebeuren; de twee meest + voorkomende zijn echter voorvallen met de netwerkverbinding en + <acronym>DNS</acronym>. Om deze gevallen te testen, dient te + worden nagegaan dat beide hosts elkaar kunnen bereiken door + de hostnaam in <filename>/etc/rc.conf</filename> te gebruiken. + Als dit juist lijkt te werken, dient de optie + <literal>syslogd_flags</literal> in + <filename>/etc/rc.conf</filename> te worden veranderd.</para> + + <para>In het volgende voorbeeld is + <filename>/var/log/logclient.log</filename> leeg, en noemt + <filename>/var/log/messages</filename> geen reden waarom het + mislukt. Verander de optie <literal>syslogd_flags</literal> + zoals in het volgende voorbeeld en herstart om de debuguitvoer + te verhogen:</para> + + <programlisting>syslogd_flags="-d -a logclien.example.com -vv"</programlisting> + + <screen>&prompt.root; <userinput>/etc/rc.d/syslogd restart</userinput></screen> + + <para>Debuggegevens zoals de volgende zullen meteen na de herstart + over het scherm vliegen:</para> + + <screen>logmsg: pri 56, flags 4, from logserv.example.com, msg syslogd: restart +syslogd: restarted +logmsg: pri 6, flags 4, from logserv.example.com, msg syslogd: kernel boot file is /boot/kernel/kernel +Logging to FILE /var/log/messages +syslogd: kernel boot file is /boot/kernel/kernel +cvthname(192.168.1.10) +validate: dgram from IP 192.168.1.10, port 514, name logclient.example.com; +rejected in rule 0 due to name mismatch.</screen> + + <para>Het is duidelijk dat de berichten worden geweigerd wegens + een niet-overeenkomende naam. Na de configuratie grondig te + hebben herzien, lijkt het of een typefout in de volgende regel + in <filename>/etc/rc.conf</filename> een probleem heeft:</para> + + <programlisting>syslogd_flags="-d -a logclien.example.com -vv"</programlisting> + + <para>De regel dient <literal>logclient</literal>, niet + <literal>logclien</literal> te bevatten. Nadat de juiste + wijzigingen zijn gemaakt, wordt er herstart met de verwachte + resultaten:</para> + + <screen>&prompt.root; <userinput>/etc/rc.d/syslogd restart</userinput> +logmsg: pri 56, flags 4, from logserv.example.com, msg syslogd: restart +syslogd: restarted +logmsg: pri 6, flags 4, from logserv.example.com, msg syslogd: kernel boot file is /boot/kernel/kernel +syslogd: kernel boot file is /boot/kernel/kernel +logmsg: pri 166, flags 17, from logserv.example.com, +msg Dec 10 20:55:02 <syslog.err> logserv.example.com syslogd: exiting on signal 2 +cvthname(192.168.1.10) +validate: dgram from IP 192.168.1.10, port 514, name logclient.example.com; +accepted in rule 0. +logmsg: pri 15, flags 0, from logclient.example.com, msg Dec 11 02:01:28 trhodes: Test message 2 +Logging to FILE /var/log/logclient.log +Logging to FILE /var/log/messages</screen> + + <para>Nu worden de berichten juist ontvangen en in het correcte + bestand geplaatst.</para> + </sect2> + + <sect2> + <title>Beveiligingsoverwegingen</title> + + <para>Zoals bij alle netwerkdiensten, dienen beveiligingseisen in + acht te worden genomen voordat deze configuratie wordt + geïmplementeerd. Soms kunnen logbestanden gevoelige + gegevens bevatten over diensten die aanstaan op de lokale host, + gebruikersaccounts, en configuratiegegevens. Netwerkgegevens + die van de cliënt naar de server worden verzonden worden + niet versleuteld noch met een wachtwoord beveiligd. Als + versleuteling nodig is, kan <filename + role="package">security/stunnel</filename> worden gebruikt, + wat gegevens over een versleutelde tunnel verstuurt.</para> + + <para>Aan lokale beveiliging moet ook gedacht worden. + Logbestanden worden niet versleuteld tijdens gebruik of na + logrotatie. Lokale gebruikers kunnen deze bestanden benaderen + om aanvullende inzichten over de systeemconfiguratie op te doen. + In deze gevallen is het van kritiek belang om de juiste rechten + op deze bestanden in te stellen. Het gereedschap + &man.syslogd.8; ondersteunt het instellen van rechten op nieuw + aangemaakte en geroteerde logbestanden. Het instellen van + logbestanden op modus <literal>600</literal> dient al het + ongewenste spieken door lokale gebruikers te verhinderen.</para> + </sect2> + </sect1> </chapter> <!--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200812291419.mBTEJgHD079800>