NTSyslog

Siehe dazu auch Syslog und NXLog

Für Unix Administratoren ist der SYSLOG Dienst ein alter Hut. Er wird schon seit vielen Jahren genutzt, um Mitteilungen von Systemen an eine zentrale Stelle zu melden und entsprechende Aktionen auszulösen.

Windows NT und Windows 2000 nutzen diesen Dienst bisher nicht. Das hindert aber nicht diverse freie Programmierer daran, diese Funktion auf Windows nachzubilden.

Interessant wird die nun, wenn es einen kleinen Dienst gibt, der das Eventlog überwacht und entsprechende Meldungen an einen Syslog Server sendet. Dabei kann er verschiedene "Schweregrade" und Quellen mit übermitteln, damit die Meldungen leichter zu kategorisieren und weiter zu verarbeiten sind.

Dieser Server kann dann wieder basierend darauf weitere zentrale Aktionen ausführen. Damit ist schon alles gesagt:

Syslog Daemon

Dieser Dienst muss auf jedem zu überwachenden Server installiert werden und sendet die entsprechenden Alarme an den Syslog-Server.

So kann z.B. der NTSYSLOG von http://ntsyslog.sourceforge.net genutzt werden, um Eventlogs als SYSLOG zu senden. Der Daemon ist gerade mal 64 Kilobyte und das Konfigurationsprogramm 40kbyte. Dank der übersichtlichen Konfiguration ist auch eine automatische Installation als MSI Paket oder Startup Skript einer Gruppenrichtlinie möglich. Auch die Konfiguration ist gut dokumentiert und umsetzbar.

Zur Installation werden beide Programme auf den Zielserver kopiert und als Administrator mit "NTSYSLOG.EXE -INSTALL" installiert. Schon ist der Dienst eingerichtet.

Über die Konfigurationskonsole NTSYSLOGCTRL.EXE werden die Parameter eingestellt: unter dem Button "Syslog Daemons" ist der Name oder die IP-Adresse des primären Syslog Servers einzutragen. Ein Backupserver kann ebenso angegeben werden.

Je Eventlog sind dann weitere Einstellungen möglich. Wobei die Standardwerte schon sehr gut passen.

Auch der Speicherbedarf dieser kleinen Lösung ist gering, wie im Task-Manager zu erkennen ist.

NTSYSLOG.EXE ist der Agent auf dem Client. Der Syslogd_Service ist der Serverprozess. Dessen Speicherbedarf kann aber zunehmen, je nach umfang der ausgelösten Aktionen.

Gruppenrichtlinie für Syslog

Mittels Windows 2000 können Sie z.B. über eine Gruppenrichtlinie den NTSYSLOG verteilen. Angenommen sie haben eine eigene OU für die Server angelegt, dann können Sie dort über die Funktion des "Startup Skripts" auf dem Computer automatisch die Installation durchführen.

Ich lege dazu in der Regel die notwendigen Dateien in die NETLOGON-Freigabe mit ab, so dass Sie durch Windows 2000 FRS automatisch repliziert werden.

Der Aufruf erfolgt dann einfach durch die Angabe von:

"\\domain.de\netlogon\ntsyslog\ntsyslog.cmd"

Die CMD-Datei wird vom System beim Start als "Localsystem" ausgeführt, kopiert die notwendigen Dateien auf die lokale Festplatte. Importiert die Einstellungen mittels Regedit, installiert und startet den Dienst. Hier als Muster das Skript und die Registrierungsdatei zum Download:

ntsyslog.zip

Natürlich wäre es optimaler, eine ADM-Datei für die Einstellungen zu verwenden, damit diese nicht erst durch den Neustart des Servers aktiv werden. Allerdings ist eine Änderung der Syslog Server durch Verwendung von CNAME im DNS unproblematisch. Übrigens wäre die Verteilung des Dienstes über eine MSI-Datei und die Konfiguration der Einstellungen über ein ADM-Vorlage für Gruppenrichtlinien sicher eine nette Praktikumsaufgabe für angehende Administratoren. Eine vorbereitete ADM Datei findet sich hier

nsyslog.adm

Ergebnis

Schon mit einfachsten kostenfreien Mitteln ist es möglich, von allen Windows Servern die Warnungen und Fehler in sämtlichen Eventlogs zentral zu melden und anzuzeigen. Und das ist einer der ersten Schritte, um Exchange besser zu überwachen.

Weitere Links

Etwas seltsam finde ich, dass für so ein einfaches Programm wie einen Syslog Server einige Firmen relativ viel Geld haben wollen. Also genau nachschauen und rechnen.