Eine Schritt für Schritt Anleitung um unter OS X den vorhandenen Syslog-Server zu aktivieren und zu konfigurieren. Er sammelt dann z.B. erweiterte Logfiles Ihrer Router.

Syslog Server (syslogd) unter OS X 10.4 Tiger
1. Aktivieren des Empfangs externer syslogs von Routern, Switches oder anderen Macs

Im Terminal die Starteinstellung für syslogd sichern und dann erweitern (/System/Library/LaunchDaemons/com.apple.syslogd.plist)

Zuerst ein Backup:

sudo cp /System/Library/LaunchDaemons/com.apple.syslogd.plist com.apple.syslogd.plist.bak

Mit pico die com.apple.syslogd.plist Datei öffnen:

sudo pico /System/Library/LaunchDaemons/com.apple.syslogd.plist

Suchen nach:

<string>/usr/sbin/syslogd</string>

direkt darunter einfügen:

<string>-u</string>

dann speichern (ctrl-o) und pico beenden (ctrl-x)

Dies sagt dem Prozess am UDP Port 514 Daten anzunehmen. Also falls aktiviert die OSX Firewall für diesen Port öffnen.

Nun den Mac neu starten, oder den Prozess beenden und mit den erweiterten Starteinstellungen neu starten:

sudo launchctl unload /System/Library/LaunchDaemons/com.apple.syslogd.plist
sudo launchctl load /System/Library/LaunchDaemons/com.apple.syslogd.plist

2. Funktion nach cron-Neustart wiederherstellen

Stop und Start noch in eine cron-datei eintragen, die vom Script /etc/periodic/daily/500.daily automatisch aufgerufen wird

sudo pico /etc/daily.local

Hier eintragen:

launchctl unload /System/Library/LaunchDaemons/com.apple.syslogd.plist
sleep 1
launchctl load /System/Library/LaunchDaemons/com.apple.syslogd.plist

speichern (ctrl-o) und pico beenden (ctrl-x)

3. Logdateien anlegen und zuordnen

Jedes externe Gerät sollte in eine eigene Log-Datei schreiben, diese legen wir an mit:

sudo touch /var/log/meingerät.log (z.b. firewall_home.log)

Jetzt die Preference-Datei des syslogd sichern, und bekannt geben was in den Logfile eingefügt werden soll:

sudo cp /etc/syslog.conf syslog.conf.bak
sudo pico /etc/syslog.conf

Am Ende der conf einfügen:

local1.*                                                /var/log/meingerät.log (z.b. firewall_home.log)

speichern (ctrl-o) und pico beenden (ctrl-x)

Möglich ist local1 bis local7, nach dem Punkt steht der Filter, * für alles, mit z.b. err / emerg / notice / info / crit /alert können die Logs vor dem Speichern gefiltert werden. Zwei tabs und dann der Pfad zur Logdatei.

Am externen Gerät die Rechner-IP Nummer als Ziel für das Log eingeben, von local1 bis local7 passend zum Eintrag in der syslog.conf einstellen und speichern, ggf. neustarten.

4. Logrotation einrichten

Im Script /etc/periodic/weekly/500.weekly werden die neu angelegten Logfiles zur Rotation mit eingetragen. Auch dieses Script killt den syslogd, den wir mit unseren Starteinstellungen anschließend wieder starten. Das Terminalfenster breit aufziehen und:

sudo pico /etc/periodic/weekly/500.weekly

Suchen nach

cd /var/log
for i in ftp.log lookupd.log lpr.log mail.log netinfo.log hwmond.log ipfw.log ppp.log usw

hier die eigenen Logfiles anfügen, speichern und pico beenden.

Dieses Script ruft am Ende /etc/weekly.local auf, mit dem wir den syslogd wieder starten:

sudo cp /etc/daily.local /etc/weekly.local

5. Logfiles sichten

Logifiles dann per Terminal (tail -f /var/log/meingerät.log) aufrufen
oder im Finder mit dem Tool Konsole ansehen.


CDX | Netzwerk Service | Apple Service | Computer Service