Aus Linux-Magazin 05/2008

Aus dem Alltag eines Sysadmin: Rsyslog

Abbildung 1: Rsyslog füttert Log-Informationen statt in eine Datei in eine Datenbank. Die wiederum dient als Quelle für Statistiken, hier eine über Spam.

Stark beanspruchte Dienste schreiben gigantisch Log-Informationen auf die Platte. Das ist nicht nur Storage-mäßig bedenklich, sondern führt auch Grep und die üblichen Statistiktools über ihre Grenzen. Den Syslog-Daemon mit einer Datenbank zu verheiraten könnte helfen. Gesagt, getan.

Inhalt

62 | Kurztest: Portbunny

Die Entwickler versprechen einfachere Handhabung und schnellere
Scanzeiten als mit den altbekannten Tools.

64 | Portscanner-Duell

Die Nmap- und die Portbunny-Entwickler im
Linux-Magazin-Interview.

66 | Sicheres DNS

Manche Angriffe richten sich gegen die Namensauflösung. DNSSEC
versieht diesen Dienst mit moderner Kryptographie.

72 | LPI-Zertifizierung – Teil 22

Drucksysteme verwalten gehört zum Admin-Alltag – auch im
Linux-Büro: LPI-Prüfungsfragen zu LPRng und Cups.

78 | Group-E von Endo

Eine Südtiroler Softwareschmiede versorgt fast alle
Behörden des Alto Adige mit Open-Source-Groupware.

Von wegen, auf die Länge käme es nicht an. Allein meine Spamfilter beglücken mich mit einem rund 3 GByte großen Logfile – pro Tag! Würde ich das gewaltige Ding nur benötigen, um hie und da einem Fehler hinterherzuforschen, wäre das zu verkraften. Aber ich ziehe aus der Datei eine Reihe statistischer Auswertungen über das Spam- und Virenaufkommen, und ein »grep« über derart große Dateien dauert elend lange und erzeugt eine Menge I/O-Last.

Datenbank für Datenmengen

Rsyslog [1] bringt mich der Lösung des Problems ungemein näher. Es loggt unmittelbar in eine MySQL- oder PostgreSQL-Datenbank und gibt mir damit die Möglichkeit, meine Grep-Kommandos durch flotte SQL-Statements zu ersetzen. Rsyslog ist in vielen Distributionen bereits enthalten, in Fedora 8 gehört es sogar zu Serienausstattung.

Auf meinem Ubuntu läuft per se der Sysklogd, was mir den Umstieg auf Rsyslog besonders geschmeidig macht. Ich darf meine alte »syslog.conf« erst mal weiter benutzen, denn Rsyslogs Konfigurationsdatei ist mit dem alten Format weitgehend deckungsgleich, kennt aber ein paar Optionen mehr, zum Beispiel zum Anknoten der Datenbank.

Bevor es losgeht, brauche ich noch eine Datenbank. Die erzeuge ich mit dem Skript »createDB.sql«, das freundlicherweise bereits im Rsyslog-Paket steckt:

mysql -u root -pPasswort < ./createDB.sql

Es entsteht automatisch eine Datenbank namens »Syslog« mit den erforderlichen Tabellen. Am MySQL-Prompt erschafft

> grant ALL ON Syslog.* to rsyslog@localhost identified by 'geheim';
> flush privileges;

einen Benutzer mit den richtigen Rechten. Jetzt weise ich Rsyslog an, die Datenbank zu benutzen. Das ist erfrischend unkompliziert, zwei Zeilen in der Datei »/etc/rsyslog.d/mysql.conf« reichen:

$ModLoad MySQL
mail.* >localhost,Syslog,rsyslog,geheim

Die erste Zeile lädt das Modul, das Rsyslog benötigt, um die Datenbank anzusprechen. In der zweiten Zeile steht zunächst die Log-Facility, deren Einträge Rsyslog in die Datenbank pumpt. Für meine Spamfilter-Statistiken reichen die Daten der Mail-Facility. Danach folgen die Zugriffsparameter für die Datenbank: Hostname, Datenbankname, MySQL-Benutzername und dessen Passwort.

Zu meiner Genugtuung füllt sich nach dem Neustart des Daemon die Datenbank (Abbildung 1). Das macht die Spam-Statistik zwar nicht angenehmer, verschafft sie mir aber in wesentlich kürzerer Zeit. Das Beispiel hier funktioniert mit der Stable-Release 2.0.2. Der Rsyslog-Autor Rainer Gerhards arbeitet intensiv an der 3er Version, die, so verspricht er, weitere tolle Dinge bieten wird. (jk)

Abbildung 1: Rsyslog füttert Log-Informationen statt in eine Datei in eine Datenbank. Die wiederum dient als Quelle für Statistiken, hier eine über Spam.

Abbildung 1: Rsyslog füttert Log-Informationen statt in eine Datei in eine Datenbank. Die wiederum dient als Quelle für Statistiken, hier eine über Spam.

Infos

[1] Rsyslog: [http://www.rsyslog.com]

Der Autor


Charly Kühnast administriert Unix-Betriebssysteme im Rechenzentrum Niederrhein in Moers. Zu seinen Aufgaben gehören die Sicherheit und Verfügbarkeit der Firewalls und der DMZ. Im heißen Teil seiner Freizeit frönt er dem Kochen, im feuchten Teil der Süßwasseraquaristik und im östlichen lernt er Japanisch.

LINUX-MAGAZIN KAUFEN
EINZELNE AUSGABE Print-Ausgaben Digitale Ausgaben
ABONNEMENTS Print-Abos Digitales Abo
TABLET & SMARTPHONE APPS Readly Logo
E-Mail Benachrichtigung
Benachrichtige mich zu:
0 Kommentare
Älteste
Neuste Beste Bewertung
Nach oben