Bundesamt für Sicherheit in der Informationstechnik

M 4.106 Aktivieren der Systemprotokollierung

Verantwortlich für Initiierung: IT-Sicherheitsbeauftragter, Leiter IT

Verantwortlich für Umsetzung: Administrator

Die systemeigene Unix-Protokollierung syslog dient dem Festhalten von Informationen, die vom Betriebssystem oder von Anwendungsprozessen generiert werden. Sicherheitsrelevante Ereignisse, wie versuchte Anmeldung bzw. Ausführung des Befehls su sollten unbedingt protokolliert werden und einer späteren Auswertung zur Verfügung stehen.

Der erforderliche Daemon syslogd wird in der Regel automatisch gestartet und über die Datei /etc/syslog.conf konfiguriert. Durch geeignete Rechtevergabe muss sichergestellt werden, dass nur Systemadministratoren diese Datei ändern können und dass die Protokolldateien in /var/log und /var/adm nur von Systemadministratoren gelesen werden können. Alle Änderungen an /etc/syslog.conf sind zu dokumentieren. Bei der Anpassung an das vorliegende IT-System sollte zunächst alles protokolliert werden, danach können bei Bedarf stufenweise einzelne Bereiche deaktiviert werden. Durch eine ausreichende Dimensionierung der /var-Partition ist sicherzustellen, dass ausreichend Platz für die Protokolldateien zur Verfügung steht. Das folgende Beispiel für eine Konfigurationsdatei ist in Anlehnung an eine SunOS-Konfiguration erstellt worden und definiert eine ausführliche Protokollierung in verschiedenen Dateien.

#ident "@(#)syslog.conf 1.3 93/12/09 SMI" /* SunOS 5.0 */
#
# Alle Meldungen werden zu einem Loghost geschickt, der in der Datei
# /etc/hosts definiert werden muss.
#
# Es muss TAB als Separator verwendet werden!
#
# Test: . syslogd mit der Option "-d" starten
# . syslogd mit kill -HUP nach jeder Änderung dieser Datei starten
# . die Logdatei muss vor dem Start/Neustart bereits existieren
# . mit/usr/ucb/logger können Testmeldungen für jede facility
# und priority generiert werden
#
*.err;kern.warning;auth.err;daemon.err /dev/console
*.alert;kern.err;daemon.err operator
*.alert root
# zeigt emerg-Meldungen auf Terminals an (verwendet WALL)
*.emerg *
#
kern.info ifdef(`LOGHOST', /var/log/kernlog, @loghost)
user.info ifdef(`LOGHOST', /var/log/userlog, @loghost)
mail.info ifdef(`LOGHOST', /var/log/maillog, @loghost)
daemon.info ifdef(`LOGHOST', /var/log/daemonlog, @loghost)
auth.info ifdef(`LOGHOST', /var/log/authlog, @loghost)
lpr.info ifdef(`LOGHOST', /var/log/lprlog, @loghost)
news,uucp.info ifdef(`LOGHOST', /var/log/newslog, @loghost)
cron.info ifdef(`LOGHOST', /var/log/cronlog, @loghost)
#

## alle anderen "local" Nachrichten, für eigene Programme
local0,local1.info ifdef(`LOGHOST', /var/log/locallog, @loghost)
local2,local3,local4.info ifdef(`LOGHOST', /var/log/locallog, @loghost)
local5,local6,local7.info ifdef(`LOGHOST', /var/log/locallog, @loghost)

#
# alle Alarme und höher werden in eine separate Datei geschrieben:
*.err ifdef(`LOGHOST', /var/log/alertlog, @loghost)

#
# Beispiel Log levels:
# ------------------------------------
# 'su root' failed for .. auth.err
# ROOT LOGIN REFUSED ON ... auth.err
# 'su root' succeeded for.. auth.notice

Prüffragen:

  • Werden unter Unix sicherheitsrelevante Ereignisse, wie versuchte Anmeldung bzw. Ausführung des Befehls su, protokolliert?

  • Ist sichergestellt, dass die Konfigurationsdatei zur Protokollierung (/etc/syslog.conf) nur vom Systemadministrator geändert werden kann?

  • Ist sichergestellt, dass die Protokolldateien (in /var/log bzw. /var/adm) nur für den Systemadministrator lesbar sind?

  • Werden alle Änderungen in der Konfigurationsdatei zur Protokollierung (/etc/syslog.conf) nachvollziehbar dokumentiert?

  • Ist sichergestellt, dass die Partition für die Protokolldaten ausreichend dimensioniert ist?

Stand: 13. EL Stand 2013