MFen 1.111 -> 1.113

This commit is contained in:
Rene Ladan 2008-12-29 14:21:59 +00:00
parent 8a170d2082
commit 9e74bc03aa
Notes: svn2git 2020-12-08 03:00:23 +00:00
svn path=/head/; revision=33561

View file

@ -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 @@ www IN CNAME @</programlisting>
</varlistentry>
</variablelist>
<para>Het is altijd een goed idee om reservekopi&euml;n te maken
<para>Het is altijd een goed idee om reservekopie&euml;n te maken
van het instellingenbestand voor
<application>Apache</application> v&oacute;&oacute;r het maken
van wijzigingen. Als de juiste instellingen gemaakt zijn, kan
@ -5331,6 +5335,289 @@ set filter alive 2 permit 0/0 0/0</programlisting>
<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
&eacute;&eacute;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&euml;nt als de server;</para>
</listitem>
<listitem>
<para>syslogd is ingesteld om berichten op afstand van
cli&euml;ntmachines te accepteren;</para>
</listitem>
<listitem>
<para>De syslogd-server en alle cli&euml;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&euml;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&euml;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&euml;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&euml;nt</title>
<para>Een logcli&euml;nt is een machine die loginformatie naar een
logserver verstuurt en daarnaast lokale kopie&euml;n
bewaart.</para>
<para>Net als logservers moeten logcli&euml;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&euml;nten is wat soepeler dan die
van servers. De cli&euml;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&euml;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&euml;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&euml;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 &lt;syslog.err&gt; 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&iuml;mplementeerd. Soms kunnen logbestanden gevoelige
gegevens bevatten over diensten die aanstaan op de lokale host,
gebruikersaccounts, en configuratiegegevens. Netwerkgegevens
die van de cli&euml;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>
<!--