Ubuntu Syslog
Auf Linux Systemen befinden sich im Verzeichnis /var/log mehrere Logdateien, z.B. /var/log/syslog. In diesem Artikel zeigen wir am konkreten Beispiel eines Ubuntu 16.04 Systems, welche Logdateien konkret vom rsyslogd Dienst erstellt werden und wie die Konfiguration des rsyslogd funktioniert.
rsyslogd Konfiguration
Der rsyslogd Dienst wird über folgende Konfigurationsdateien eingerichtet:
- /etc/rsyslog.conf
- Dateien in /etc/rsyslog.d/, z.B:
- 50-default.conf
In der Datei /etc/rsyslog.d/50-default.conf sind die wichtigsten Standardkonfigurationen enthalten. Die einzelnen Einträge beginnen dabei in jeder Zeile mit facility.priority.[1] Mehrere Facilities bzw. Priorities können über Komma (,) getrennt angeführt werden. Außerdem können mehrere Einträge der Form facility.priority über Strichpunkt (;) getrennt ergänzt werden. Damit können z.B. bestimmte Meldungen ausgefiltert werden (siehe #syslog weiter unten).
Facility
Facility ist dabei eines der folgenden Schlüsselwörter:
- auth, authpriv, cron, daemon, kern, lpr, mail, mark, news, security (Synonym für auth), syslog, user, uucp und local0 bis local7.
Das Schlüsselwort security soll jedoch nicht mehr verwendet werden und ist nur für interne rsyslogd Zwecke gedacht. Die Facility gibt also die Quelle einer Meldung an. Beispielsweise loggen alle E-Mail-Server-Dienste unter der Facility mail. Ein Asterisk (*) steht für alle Facilities.
Priority
Priority ist eines der folgenden Schlüsselwörter (in aufsteigender Reihenfolge):
- debug, info, notice, warning, warn (Synonym für warning), err, error (Synonym für err), crit, alert, emerg, panic (Synonym für emerg).
Die Schlüsselwörter error, warn und panic sollen jedoch nicht mehr verwendet werden. Die Priority definiert den Schweregrad der Meldung. Ein Asterisk (*) steht für alle Priorities. Das Schlüsselwort none steht für keine Priority der angeführten Facility.
Bestimmte Meldungen separat filtern
Möchte man bestimmte Meldungen separat filtern, kann dies einfach mit einer "& ~" Zeile gelöst werden. Ein Beispiel dazu liefert /etc/rsyslog.d/20-ufw.conf:
# Log kernel generated UFW log messages to file :msg,contains,"[UFW " /var/log/ufw.log # Uncomment the following to stop logging anything that matches the last rule. # Doing this will stop logging kernel generated UFW log messages to the file # normally containing kern.* messages (eg, /var/log/kern.log) #& ~
Möchte man z.B. netfilter Meldungen nicht in /var/log/syslog, sondern in einer eigenen Datei /var/log/iptables.log haben, erstellt man dazu einfach beispielsweise eine Datei mit dem Namen /etc/rsyslog.d/20-iptables.conf und lädt anschließend die rsyslogd Konfiguration neu:
:msg,contains,"netfilter - dropped " /var/log/iptables.log & ~
Logdateien in /var/log
auth.log
Konfiguration:
auth,authpriv.* /var/log/auth.log
Zweck: Loggt alle Meldungen im Bereich Authentifizierung.
kern.log
Konfiguration:
kern.* -/var/log/kern.log
Zweck: Loggt alle Meldungen des Linux Kernels.
mail.log
Konfiguration:
mail.* -/var/log/mail.log
Zweck: Loggt Meldungen des Mailservers.
syslog
Konfiguration:
*.*;auth,authpriv.none -/var/log/syslog
Zweck: In dieser Logdatei finden sich alle Meldungen mit Außnahme von Meldungen der auth oder authpriv Facilities. Diese Datei eignet sich daher gut zur Analyse von vielen Problemen.
Beispiel einer /var/log/syslog Datei
Das folgende Beispiel zeigt die Einträge in /var/log/syslog nach dem Starten eines Ubuntu 16.04 Systems sowie weiter unten die Einträge, die beim Anschluss eines USB-Sticks entstehen:
Oct 25 13:16:38 wtp rsyslogd: [origin software="rsyslogd" swVersion="8.16.0" x-pid="889" x-info="http://www.rsyslog.com"] start Oct 25 13:16:38 wtp rsyslogd-2222: command 'KLogPermitNonKernelFacility' is currently not permitted - did you already set it via a RainerScript command (v6+ config)? [ v8.16.0 try http://www.rsyslog.com/e/2222 ] Oct 25 13:16:38 wtp rsyslogd: rsyslogd's groupid changed to 108 Oct 25 13:16:38 wtp rsyslogd: rsyslogd's userid changed to 104 Oct 25 13:16:38 wtp kernel: [ 0.000000] microcode: CPU0 microcode updated early to revision 0x1c, date = 2015-02-26 Oct 25 13:16:38 wtp kernel: [ 0.000000] Initializing cgroup subsys cpuset Oct 25 13:16:38 wtp kernel: [ 0.000000] Initializing cgroup subsys cpu Oct 25 13:16:38 wtp kernel: [ 0.000000] Initializing cgroup subsys cpuacct Oct 25 13:16:38 wtp kernel: [ 0.000000] Linux version 4.4.0-38-generic (buildd@lgw01-58) (gcc version 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.2) ) #57-Ubuntu SM P Tue Sep 6 15:42:33 UTC 2016 (Ubuntu 4.4.0-38.57-generic 4.4.19) Oct 25 13:16:38 wtp kernel: [ 0.000000] Command line: BOOT_IMAGE=/boot/vmlinuz-4.4.0-38-generic root=UUID=df14494b-8a88-4de4-9558-79950de0ea86 ro quiet splash vt.ha ndoff=7 Oct 25 13:16:38 wtp kernel: [ 0.000000] KERNEL supported cpus: Oct 25 13:16:38 wtp kernel: [ 0.000000] Intel GenuineIntel Oct 25 13:16:38 wtp kernel: [ 0.000000] AMD AuthenticAMD Oct 25 13:16:38 wtp kernel: [ 0.000000] Centaur CentaurHauls Oct 25 13:16:38 wtp kernel: [ 0.000000] x86/fpu: xstate_offset[2]: 576, xstate_sizes[2]: 256 [...] Oct 25 13:28:52 wtp kernel: [ 718.258171] usb 3-2: new high-speed USB device number 2 using xhci_hcd Oct 25 13:28:52 wtp kernel: [ 718.530477] usb 3-2: New USB device found, idVendor=058f, idProduct=6387 Oct 25 13:28:52 wtp kernel: [ 718.530485] usb 3-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3 Oct 25 13:28:52 wtp kernel: [ 718.530489] usb 3-2: Product: Mass Storage Oct 25 13:28:52 wtp kernel: [ 718.530492] usb 3-2: Manufacturer: USB Oct 25 13:28:52 wtp kernel: [ 718.530494] usb 3-2: SerialNumber: 0CE9FBFF Oct 25 13:28:52 wtp mtp-probe: checking bus 3, device 2: "/sys/devices/pci0000:00/0000:00:14.0/usb3/3-2" Oct 25 13:28:52 wtp mtp-probe: bus: 3, device: 2 was not an MTP device Oct 25 13:28:52 wtp kernel: [ 718.552158] usb-storage 3-2:1.0: USB Mass Storage device detected Oct 25 13:28:52 wtp kernel: [ 718.552971] scsi host6: usb-storage 3-2:1.0 Oct 25 13:28:52 wtp kernel: [ 718.553729] usbcore: registered new interface driver usb-storage Oct 25 13:28:52 wtp kernel: [ 718.558481] usbcore: registered new interface driver uas Oct 25 13:28:53 wtp kernel: [ 719.552271] scsi 6:0:0:0: Direct-Access USB USB 2.0 Flash 8.07 PQ: 0 ANSI: 2 Oct 25 13:28:53 wtp kernel: [ 719.553231] sd 6:0:0:0: Attached scsi generic sg1 type 0 Oct 25 13:28:53 wtp kernel: [ 719.554655] sd 6:0:0:0: [sdb] 3952640 512-byte logical blocks: (2.02 GB/1.88 GiB) Oct 25 13:28:53 wtp kernel: [ 719.554855] sd 6:0:0:0: [sdb] Write Protect is off Oct 25 13:28:53 wtp kernel: [ 719.554864] sd 6:0:0:0: [sdb] Mode Sense: 03 00 00 00 Oct 25 13:28:53 wtp kernel: [ 719.555033] sd 6:0:0:0: [sdb] No Caching mode page found Oct 25 13:28:53 wtp kernel: [ 719.555041] sd 6:0:0:0: [sdb] Assuming drive cache: write through Oct 25 13:28:54 wtp kernel: [ 719.935411] sdb: sdb1 Oct 25 13:28:54 wtp kernel: [ 719.936965] sd 6:0:0:0: [sdb] Attached SCSI removable disk Oct 25 13:28:54 wtp udisksd[2158]: Mounted /dev/sdb1 at /media/wfischer/F8B5-F1DF on behalf of uid 1000
Weitere Informationen
- rsyslog - rocket-fast system for log processing (www.rsyslog.com)
- Logdateien (wiki.ubuntuusers.de)
Einzelnachweise
- ↑ rsyslog.conf Manpage (manpages.ubuntu.com, Manpage von rsyslog.conf von Ubuntu 16.04 Xenial)
Autor: Werner Fischer Werner Fischer arbeitet im Product Management Team von Thomas-Krenn. Er evaluiert dabei neueste Technologien und teilt sein Wissen in Fachartikeln, bei Konferenzen und im Thomas-Krenn Wiki. Bereits 2005 - ein Jahr nach seinem Abschluss des Studiums zu Computer- und Mediensicherheit an der FH Hagenberg - heuerte er beim bayerischen Server-Hersteller an. Als Öffi-Fan nutzt er gerne Bus & Bahn und genießt seinen morgendlichen Spaziergang ins Büro.
|