Good to Know Database

Raspbian Wheezy: Rsyslog-Daemon als zentralen Log-Server konfigurieren


Standardmäßig ist Rsyslog bei Raspbian bereits installiert und kümmert sich um die Logmeldungen der lokalen Dienste. Mit wenigen Handgriffen kann man den Rsyslog-Daemon so konfigurieren, dass er auch Lognachrichten von anderen Systemen aus Ihrem Netzwerk entgegen nimmt und diese zentral auf einem System in den Logdateien archiviert. Ein weiterer Vorteil eines zentralen Log-Servers ist, dass Sie nur auf einem System die Filter für die einzelnen Dienste konfigurieren müssen.

Als Grundlage für die folgende Anleitung dient das momentan aktuelle Raspbian Image vom 26.07.2013 (2013-07-26-wheezy-raspbian.zip), welches Sie zuvor auf eine SD-Karte installieren müssen.

Die Konfiguration des Rsyslog-Daemons befindet sich in der Datei /etc/rsyslog.conf und kann mit einem Editor bearbeitet werden.

pi@raspberrypi ~ $ sudo vi /etc/rsyslog.conf

Der Rsyslog-Daemon kann sowohl über das User Datagram Protocol (UDP) als auch über das Transmission Control Protocol (TCP) Nachrichten von anderen Systemen empfangen. Standardmäßig setzt Rsyslog das Transmission Control Protocol ein. Wenn Sie das verbindungslose User Datagram Protocol verwenden wollen, suchen Sie in der rsyslog.conf nach den folgenden Zeilen.

# provides UDP syslog reception
#$ModLoad imudp
#$UDPServerRun 514

Entfernen Sie bei den letzten zwei Zeilen das Kommentarzeichen am Zeilenanfang.

# provides UDP syslog reception
$ModLoad imudp
$UDPServerRun 514

Sollten Sie hingegen das verbindungsorientierte Transmission Control Protocol einsetzen wollen oder auch beide Protokolle nutzen wollen, suchen Sie nach dem folgenden Abschnitt.

# provides TCP syslog reception
#$ModLoad imtcp
#$InputTCPServerRun 514

Entfernen Sie auch hier die Kommentarzeichen am Zeilenanfang der beiden letzten Zeilen.

# provides TCP syslog reception
$ModLoad imtcp
$InputTCPServerRun 514

Speichern Sie jetzt die Änderungen an der Konfigurationsdatei ab und schließen die Datei. Sollten Sie später die Filterregeln individuell anpassen wollen, finden Sie diese ebenfalls in der /etc/rsyslog.conf.

Nachdem die Konfiguration angepasst wurde, müssen Sie den rsyslogd neu starten.

pi@raspberrypi ~ $ sudo /etc/init.d/rsyslog restart
[ ok ] Stopping enhanced syslogd: rsyslogd.
[ ok ] Starting enhanced syslogd: rsyslogd.

Ob der Rsyslog-Daemon Logmeldungen entgegen nimmt, können Sie wie folgt testen. Um die TCP-Verbindung zu testen rufen Sie einfach den folgenden Befehl auf. Ändern Sie jedoch vorher den Domainnamen (hier raspberrypi.home.lan) ab beziehungsweise ersetzen diesen durch die IP-Adresse Ihres Raspberry Pi's.

pi@raspberrypi ~ $ echo "Dies ist eine Testnachricht über TCP" | nc raspberrypi.home.lan 514

Für den Test der UDP-Verbindung verwenden Sie jedoch den nachfolgenden Befehl.

pi@raspberrypi ~ $ echo "Dies ist eine Testnachricht über UDP" | nc -q 1 raspberrypi.home.lan -u 514

Wenn Sie parallel dazu in einem zweiten Terminal die Logdatei /var/log/messages beobachten, sollten Sie die gesendeten Nachrichten direkt angezeigt bekommen.

pi@raspberrypi ~ $ tail -f /var/log/messages
[...]
Aug 12 08:12:20 Dies ist eine Testnachricht über TCP
Aug 12 08:12:21 Dies ist eine Testnachricht über UDP

Damit wäre die Konfiguration des Rsyslog-Daemons auf dem zentralen Log-Server bereits abgeschlossen und Sie können den Log-Server auf Ihren Client-Systemen bekannt geben.

Weiterführende Tutorials

Raspbian Wheezy: Logs an zentralen Log-Server weiterleiten


Dieser Eintrag wurde am 12.08.2013 erstellt und zuletzt am 25.09.2016 bearbeitet.

Direkter Link zu dieser Seite: http://www.gtkdb.de/index_36_2293.html

[ Zur Startseite ]   [ Zur Kategorie ]


Valid XHTML 1.0 Transitional Valid CSS Valid Atom 1.0

© 2004-2018 by Georg Kainzbauer