Syslog-ng

Aus Fedorawiki.de

Wechseln zu: Navigation, Suche


Dieser Artikel ist Teil der HOWTO Sammlung

Syslog-ng ist ein oft gebrauchter syslog-Server auf Linux- und Unix-Plattformen und implementiert das syslog-Protokoll, jedoch ohne die bekannten Schwachstellen des Original-Protokolles. Syslog-ng bietet eine einheitliche syslog-Implementierung auf einer Vielzahl von Plattformen, damit wird der Aufbau einer heterogenen Logging-Lösung erst ermöglicht.


Inhaltsverzeichnis

Installation

Syslog-ng lässt sich einfach aus dem Fedora Repository mit Yum, pirut oder Yumex installieren.

[root]# yum install syslog-ng


Konfiguration

Konfiguriert wird syslog-ng über die Datei /etc/syslog-ng/syslog-ng.conf. Die Datei enthält mehrere Bereiche. Die Syntax ist sehr verständlich und intuitiv. Die mitinstallierte Konfigurationsdatei sollte erst mal ausreichen, um Beispiele zu haben, wie es aussehen soll und um syslog-ng als gleichwertigen syslog-Ersatz zu betreiben.

Options

options {}; enthält grundlegende Einstellungen in der Form Name (Wert); z.B.

  sync (0);
  time_reopen (10);
  log_fifo_size (1000);

Hier empfiehlt es sich den Eintrag stats hinzuzufügen. Dieser beschreibt die Zeit in Sekunden bis der syslog-ng seinen Status in /var/log/messages schreibt. Der default Wert liegt bei etwa 2 1/2 Minuten, was den Logfile schnell unübersichtlich werden lässt. 0 deaktiviert die Status Meldung.

Source

source enthält die Quellen aus denen die Meldungen kommen, in der Form Name {Quelle}; z.B.

 source s_sys {
   unix-stream ("/dev/log");
 };

Destination

destination enthält die Ziele, wo die Meldungen hin ausgegeben werden, in der Form Name {Ziel}; z.B.

 destination d_mesg { file("/var/log/messages"); };

Filter

filter Name enthält Filterregeln, nach denen die Meldungen gefiltert werden, in der Form Name {Ausdruck}; z.B.

 filter f_filter2 { level(info..emerg) and not facility(mail,authpriv,cron);};

Ein Ausdruck liefert ein booleschen Wert und es können mehrere Ausdrücke mit "and" oder "or" verknüpft werden. Mit "not" lässt sich das Ergebniss negieren. Es gibt auch mehrere Funktionen wie level, facility mit denen nach festen Werten (mehrere durch Komma getrennt) oder host, match mit denen durch einen regulären Ausdruck gefiltert wird.

Log

log hier werden Quelle, Filter und Ziel verknüpft, z.B.

 log { source(s_sys); filter(f_filter2); destination(d_mesg); };


Start

erster Start

1. syslog stoppen

[root]# service syslog stop

2. syslog-ng starten

[root]# service syslog-ng start

immer starten

Um syslog-ng bei jedem Rechnerstart aufzurufen müssen die links in den /etc/rc Verzeichnissen angepasst werden oder komfortabler unter X mit system-config-services.

Links