Logfiles gelten zu Recht als eins der wichtigsten Handwerkszeuge für Administratoren. Unter Unix übernimmt das Logging seit jeher der Syslog-Daemon, der jedoch gerade im Einsatz als zentraler Logserver einige Einschränkungen mit sich bringt. Wie es besser geht, zeigt die ungarische Firma Balabit IT Security seit einigen Jahren mit Hilfe von Syslog-ng. Dieser ist durchaus in der Lage, dem altehrwürdigen Syslogd den Rang abzulaufen, wobei die ungewohnte, teils sehr mächtige Konfiguration für manche eine Hürde für den Einstieg bedeutet. Dieses Mankos hat sich Balabit nun angenommen, und mit der Syslog-ng Store Box (kurz SSB) eine Appliance vorgestellt, die für das zentrale System-Logging prädestiniert ist.
Log me tender: Der Hersteller Balabit bewirbt die Appliance mit einem Elvis-Kalauer.
Die Hardware
Bei den hier durchgeführten Tests kam die kleinste der von Balabit angebotenen Appliances, die SSB500, zum Einsatz. Zum Lieferumfang gehören die als Hardwareplattform dienende Sun Fire X2100 M2 mit den zugehörigen Schienen zum Einbau ins Rack, ein Stromkabel, die Lizenzvereinbarung, eine Recovery-CD, das Handbuch zur Hardwareinstallation, sowie ein USB-Stick, der die als Datei vorliegende Lizenz enthält. Komplettiert wird die Lieferung durch das Zertifikat, das Aufschluss über die gekauften Lizenz- und Supportoptionen gibt, und weiterhin die Passworte für das BIOS und ILOM-System angibt.
Der 1 Höheneinheit messende Server ist ausgestattet mit einem auf 2,2 GHz getakteten AMD Opteron Dual Core-Prozessor, 2 GByte RAM, sowie zwei 500 GByte SATA-Festplatten, die im Raid-1-Verbund laufen. Das geschieht per Software-Raid in Form der kernelseitigen MD-Implementation.
Neben einer seriellen Schnittstelle zum direkten Konsolen-Zugriff bietet die Appliance vier 10/100/1000-MBit-Netzwerkkarten, wobei eine bereits hardwareseitig für den ILOM-Zugriff "geblockt" ist. Die verbleibenden drei Ports können, sofern gewünscht, für drei dedizierte Anwendungsbereiche genutzt werden.
Der als "lan0" gekennzeichnete Port dient als "externes" Interface, das den Empfang von Syslog-Meldungen entfernter Clients dient, und somit die grundlegenden Schnittstelle des Systems darstellt. Sie wird initial exklusiv für die Konfiguration verwendet, die im weiteren jedoch dediziert dem für das Management gedachte "lan1" zugeordnet werden kann. Hierdurch lassen sich Nutzdaten und die für die Administration anfallenden explizit voneinander trennen.
Die mit "lan3" bezeichnete Schnittstelle kommt systembedingt nur dann zum Einsatz, wenn die SSB im HA-Betrieb genutzt wird und dient dabei dann zum Austausch der Daten der Clusternodes untereinander.
Syslog-ng, als Appliance verpackt in Sun-Hardware.
Software-Features
Die SSB-Software basiert auf der kommerziell vertriebenen Premium Edition des Syslog-ng. Der Hersteller hat sie für die Box nicht nur mit einem angepassten Linux ergänzt, sondern vor allem durch ein komfortables Webfrontend komplettiert. Dieses dient nicht nur der Konfiguration, sondern vor allem der Auswertung der angefallenen Daten. Eine entsprechende Einarbeitung in komplexe Konfigurationen entfällt damit, umso angenehmer kommt dafür die Möglichkeit hinzu, das Logging und wichtige Systemparameter grafisch unterstützt analysieren zu können.
Ein Manko der bisherigen Syslog-Implementierung ist der Transport der Daten über das UDP-Protokoll, das die Nutzung der zuverlässigen Paketzustellung den Applikationen überlässt. Da diese Möglichkeit im Syslogd niemals implementiert wurde, ist nicht sichergestellt, dass die Meldungen auch wirklich beim Logserver ankommen. Noch schwerwiegender wiegt die Leichtigkeit, mit der UDP-Pakete mit fremden Absenderadressen versehen werden können, was eine bewusste Fälschung des Loggings ermöglicht.
Aus diesen Gründen schafft Syslog-ng die Möglichkeit, Daten über das verlässlichere, und in dieser Hinsicht sichere TCP-Protokoll einzuliefern. Möchte man ganz auf Nummer sicher gehen, kann man diesen Kanal zusätzlich noch mit Hilfe von SSL/TLS verschlüsseln. Hierdurch wird nicht nur das Mitschneiden der Pakete verhindert, sondern auch noch die Authentizität von Syslog-Client und Server sichergestellt.
Syslog-ng biete nicht nur das altbekannte BSD-Logformat, sondern auch den neueren IETF-Standard laut RFC 3195. Darüber hinaus deckt der Empfang von Windows-Logs über den Syslog-ng Agent for Windows eine große Offenheit gegenüber den im Netz befindlichen Betriebssystemen ab. Der Agent ist auf der gesamten Palette der aktuellen Betriebssysteme aus Redmond nutzbar, angefangen bei Windows XP bis hin zum Windows Server 2008. Komplettiert werden die unterstützten Mechanismen durch die Möglichkeit, SNMP-Traps entfernter Systeme zu sammeln, und mit ins Logging einfließen zu lassen.
Den Speicherplatz auf der Festplatte, an dem die Daten abgelegt werden, wird beim Syslogd anhand der so genannten "Facilities" fest gemacht. An dieser Stelle bietet Syslog-ng die größtmögliche Flexibilität: es ist nicht nur ein Einfaches, jedem Host sein eigenes Logfile zu verpassen, sondern auch, die Nachrichten zusätzlich noch an weitere Logserver weiter zu leiten. Selbst die Nutzung von SQL-Datenbanken als Backend ist ohne weiteres möglich.
Zum Schutz vor unbefugten Zugriffen oder gar Veränderungen besteht weiterhin die Möglichkeit, ein oder mehrere Logfiles verschlüsselt abzuspeichern, und mit zusätzlichen Zeitstempeln zu versehen. Besonders für die Nutzung in sicherheitskritischen Bereichen ist die Software aus diesem Grund geeignet.
Zu guter Letzt lässt sich die Anzahl der gleichzeitig zu verarbeitenden Logs pro Eingangskanal begrenzen, so dass eine Überlastung der Appliance vermieden wird. Sollte das Aufkommen so groß sein, dass die Verarbeitung verzögert wird, stellt die Nutzung eines festplattenbasierten Puffers sicher, dass keine Nachrichten verloren gehen.