Protokollierung

Aus Mikiwiki
Wechseln zu: Navigation, Suche

Protokollierung (angl. logging bezeichnet jeden Vorgang, über den ein Betriebssystem oder ein Anwendungsprogramm Ereignisse aufzeichnet und diese Aufzeichnungen für später aufhebt. Im Sicherheitsbereich kann eine Protokolldatei einen eindeutigen Hinweis darauf geben, dass ein Angriff, ein Einbruch oder eine andere kriminelle Tat stattgefunden hat. Eine wichtige Arbeit des Systemverwalters ist die regelmässige Protokolldateiauswertung.

Die meisten Linuxdienste geben Log-Informationen an unter "/var/log" stehende Standard- oder sogar gemeinsam genutzte Protokolldateien aus:

  • lastlog gibt die letzten Login-Informationen zu allen in "/etc/passwd" aufgelisteten Benutzern aus. Diese Daten sind nur temporär und müssen bei Bedarf täglich gesichert werden.
  • last wertet die Datei "/var/log/wtmp" aus und gibt Berichte über die login-Zeiten von Benutzern aus.
  • httpd speichert seine Protokolldateien unter "/var/log/apache2/access_log" und "/var/log/apache2/error_log". Die Ausgabe dieser Protokolldateien kann mittels verschiedener Direktiven angepasst werden.
  • klogd fängt Kernelmeldungen ab und übergibt sie an den syslogd.
  • syslogd gibt die Art von Protokollierung aus, die von vielen Programmen benutzt wird. Typische verfolgte Werte sind u. a. der Programmname, Funktionstyp, Priorität und die Protokollmeldung. Die System-, Kernel- und Netzwerkdienst-Diagnosemeldungen werden in die Datei "/var/log/messages" geschrieben. Die Protokollierung kann in der Datei "/etc/syslog.conf" angepasst werden.
  • Syslog-ng ersetzt auf vielen Distributionen inzwischen die beiden Dienste "Syslog" und "Klog". Die Konfigurationsdatei heisst "/etc/syslog-ng/syslog-ng.conf".

Einige Dienste wie der Apache HTTP Server, Mysql oder CUPS verwenden eigene Protokolldateien.

Die meisten Protokolldateien wachsen langsam genug, dass sie bei Bedarf auch mit Hilfe von Shell-Befehlen wie tail, less, more, cut oder grep kontrolliert werden können. Für weniger übersichtliche Protokolldateien wie etwa die von Webservern empfehlen sich Protokolldateibetrachter und eigene Programme zur Protokolldateiauswertung.

Das Programm logrotate wird über einen Cronjob aufgerufen, benennt jede von ihm verwaltete Datei regelmässig um und erstellt eine neue leere Datei. Alte Dateien werden mit gzip gepackt, um so Speicherplatz zu sparen. Protokolldateien mit einem bestimmten Alter werden gelöscht.

Protokolldateien

Der Kernel-Log-Daemon klogd führt Protokoll über die Meldungen des Linux-Kernels. Der Syslog-Daemon syslogd ist der Hauptprotokollführer von Linux - er wird von fast jedem Programm benutzt, das eine Protokolldatei schreiben will.

Datei unter
/var/log
Funktion
messages Haupt-Protokolldatei des Betriebssystems. Mandrake Linux führt zusätzlich auch noch die Datei "/var/log/syslog". Protokolliert werden z. B. Netzwerkfehler, Anmeldeinformationen und Meldungen über angeschlossene Hardware (z. B. USB-Speicher, Digitalkameras, Drucker, Scanner). Wenn 20 Minuten lang nichts Bemerkenswertes geschieht, schreibt der Syslogdaemon den Eintrag "- MARK -" in die Datei.

Mit "tail -f /var/log/messages" sowie auf der zehnten Konsole (CTRL+ALT+F10) können die Systemmeldungen live mitverfolgt werden.

auth.log
boot.* Systemmeldungen während dem Hochfahren des Betriebssystems. Jede Zeile steht für eine bestimmte Aufgabe. Am Zeilenende vermerkt der Kernel, ob er die Aufgabe erfüllen konnte (Done, OK, Succeeded) oder ob dabei Fehler auftraten (Failed).
Distribution Verzeichnis
SUSE Linux /var/log/boot.msg
Fedora Core /var/log/boot.log
Mandrake Linux /var/log/dmesg

Mit dmesg können die Bootmeldungen angesehen werden.

XFree86.0.log Protokolldatei des X-Servers.
warn Protokolldatei über kritische Warnungen des Kernels.
wtmp Protokolldatei über die An- und Abmeldevorgänge. Die Datei lässt sich mit dem Befehl last ansehen. Damit Eindringlingen das Spurenverwischen schwerer gemacht wird, handelt es sich um eine Datei im Binärformat.
YaST2 Protokolldateien von YaST2.
  • In der Datei "y2log" werden sämtliche Einstellungen festgehalten.
  • In den Dateien "y2log-1" bis "y2log9" speichert YaST2 Informationen zu den einzelnen Modulen.
  • In der Datei "y2logRPM" hält YaST die Installation von RPM-Paketen fest. Die Datei "badlist" enthält Informationen über nicht erfüllte Paketabhängigkeiten.
  • In der Datei "y2log.SuSEconfig" finden sich die Meldungen, die YaST beim Ausführen von SuSEconfig ausgibt.