Logcheck

From Gentoo Wiki
Jump to:navigation Jump to:search
This page is a translated version of the page Logcheck and the translation is 39% complete.
Outdated translations are marked like this.

logcheck ist ein Werkzeug zum Analysieren der Systemprotokolle.

Mit logcheck anfangen

Hintergrund

app-admin/logcheck ist eine aktualisierte Version von app-admin/logsentry, das ein Werkzeug zur Analyse von System-Logdateien ist. Zusätzlich kommt logcheck mit einer eingebauten Datenbank mit gewöhnlichen, nicht interessanten Log-Meldungen daher um das Rauschen herauszufiltern. Die grundsätzliche Idee dieses Tools ist, dass alle Meldungen interessant sind ausgenommen jene, die explizit als Rauschen markiert sind. Logcheck schickt Ihnen in periodischen Abständen eine E-Mail mit einer Zusammenstellung interessanter Meldungen.

logcheck installieren

Wichtig
Es wird sehr empfohlen logsentry zu entfernen, falls Sie es auf Ihrem System installiert haben. Zusätzlich sollten Sie /etc/logcheck entfernen um Zugriffs- und Dateikollisionsprobleme zu vermeiden.
root #emerge -c logsentry
root #rm -rf /etc/logcheck

Nun können Sie mit der Installation von logcheck fortfahren.

root #emerge --ask app-admin/logcheck

Grund-Konfiguration

app-admin/logcheck erzeugt einen eigenen User "logcheck" um zu verhindern, dass es als Root läuft. In der Tat wird es den Betrieb als Root verweigern. Um Ihm zu gestatten die Logdateien zu analysieren, müssen Sie sicherstellen, dass sie durch logcheck lesbar sind. Hier ist ein Beispiel für app-admin/syslog-ng:

DATEI /etc/syslog-ng/syslog-ng.conf/etc/syslog-ng/syslog-ng.conf Schnipsel
options {
        owner(root);
  
        ## (Machen Sie die Logdateien für logcheck gruppenlesbar)
        group(logcheck);
        perm(0640);
};

Laden Sie die Konfiguration erneut und stellen Sie sicher, dass die Änderungen wie erwartet funktionieren.

root #/etc/init.d/syslog-ng reload
root #ls -l /var/log/messages
-rw-r----- 1 root logcheck 1694438 Feb 12 12:18 /var/log/messages

Sie sollten nun einige grundlegenden logcheck Einstellungen in /etc/logcheck/logcheck.conf anpassen.

DATEI /etc/logcheck/logcheck.confGrundlegende /etc/logcheck/logcheck.conf Einstellung
# Kontrolliert die Stufe der Filterung:
# Kann auf "workstation", "server" oder "paranoid" für
# unterschiedliche Stufen der Filterung gesetzt werden.
# Der Standardwert ist server, wenn nichts eingestellt ist.
## (Die Stufe workstation beinhaltet server und server beinhaltet
##  paranoid. Die Stufe paranoid filtert fast keine Meldungen.)
REPORTLEVEL="server"

# Kontrolliert die Adresse an die die Mail geschickt wird:
# *HINWEIS* Das Skript setzt keinen Standard-Wert für dies Variable!
# Sollte auf eine externe Adresse gesetzt sein "emailadresse@some.domain.tld"
## (Stellen Sie sicher, dass Sie die logcheck E-Mails empfangen
##  können. Ein Test wird sehr empfohlen.)
SENDMAILTO="root"

# Steuert ob syslog-summary über jeden Abschnitt lauft.
# Alternativ stellen Sie es auf "1" um eine extra Zusammenfassung zu
# ermöglichen. TIPP: syslog-summary muss installiert sein.
## (Wenn Sie viele ähnliche Meldungen in den Logdateien bekommen,
##  möchten Sie vielleicht app-admin/syslog-summary installieren und
##  diese Einstellung aktivieren.)
SYSLOGSUMMARY=0

Sie müssen logcheck auch sagen, welche Logdateien es scannen soll (/etc/logcheck/logcheck.logfiles).

DATEI /etc/logcheck/logcheck.logfilesGrundlegende /etc/logcheck/logcheck.logfiles Einstellung
## (Dies ist ein Beispiel für syslog-ng.)
/var/log/messages

Enable periodical log check

Abschliessend aktivieren Sie den logcheck Cron-Job.

Cron users

If logcheck is emerged with the cron USE flag enabled, it can read /etc/cron.hourly/logcheck.cron

DATEI /etc/cron.hourly/logcheck.cronBasic /etc/cron.hourly/logcheck.cron
#!/bin/sh
#
# To enable sync via cron, execute "sudo -u logcheck touch /etc/logcheck/cron-logcheck-enabled"
if [[ ! -f /etc/logcheck/cron-logcheck-enabled ]]; then
    exit
fi
if [ ! -d /var/lock/logcheck ]; then
    mkdir -p /var/lock/logcheck
    chown logcheck:logcheck /var/lock/logcheck
fi
sudo -u logcheck nice -n10 /usr/sbin/logcheck

To enable an hourly cron job, run:

root #sudo -u logcheck touch /etc/logcheck/cron-logcheck-enabled
Hinweis
Für weitere Informationen zu Cron lesen Sie die Cron Anleitung.

Systemd users

If logcheck is emerged with systemd USE flag enabled, a logcheck.timer can be activated running:

root #systemctl enable --now logcheck.timer

Gratulation! Nun werden Sie regelmässig wichtige Log-Meldungen per E-Mail bekommen. Eine Beispiel-Mitteilung sieht wie folgt aus:

CODE Beispiel logcheck Mitteilung
System Events
=-=-=-=-=-=-= 
Feb 10 17:13:53 localhost kernel: [30233.238342] conftest[25838]: segfault at 40 ip 40061403 sp bfc443c4 error 4
in libc-2.10.1.so[4003e000+142000]
Feb 11 12:31:21 localhost postfix/pickup[18704]: fatal: could not find any active network interfaces
Feb 11 12:31:22 localhost postfix/master[3776]: warning: process //usr/lib/postfix/pickup pid 18704 exit status 1
Feb 11 12:31:22 localhost postfix/master[3776]: warning: //usr/lib/postfix/pickup: bad command startup -- throttling

Fehlersuche

Grundsätzliche Tipps

Sie können den logcheck Schalter -d verwenden um mehr Debugging-Informationen anzeigen zu lassen. Ein Beispiel:

root #su -s /bin/bash -c '/usr/sbin/logcheck -d' logcheck
D: [1281318818] Turning debug mode on
D: [1281318818] Sourcing - /etc/logcheck/logcheck.conf
D: [1281318818] Finished getopts c:dhH:l:L:m:opr:RsS:tTuvw
D: [1281318818] Trying to get lockfile: /var/lock/logcheck/logcheck.lock
D: [1281318818] Running lockfile-touch /var/lock/logcheck/logcheck.lock
D: [1281318818] cleanrules: /etc/logcheck/cracking.d/kernel
...
D: [1281318818] cleanrules: /etc/logcheck/violations.d/su
D: [1281318818] cleanrules: /etc/logcheck/violations.d/sudo
...
D: [1281318825] logoutput called with file: /var/log/messages
D: [1281318825] Running /usr/sbin/logtail2 on /var/log/messages
D: [1281318825] Sorting logs
D: [1281318825] Setting the Intro
D: [1281318825] Checking for security alerts
D: [1281318825] greplogoutput: kernel
...
D: [1281318825] greplogoutput: returning 1
D: [1281318825] Checking for security events
...
D: [1281318825] greplogoutput: su
D: [1281318825] greplogoutput: Entries in checked
D: [1281318825] cleanchecked - file: /tmp/logcheck.uIFLqU/violations-ignore/logcheck-su
D: [1281318825] report: cat'ing - Security Events for su
...
D: [1281318835] report: cat'ing - System Events
D: [1281318835] Setting the footer text
D: [1281318835] Sending report: 'localhost 2010-08-09 03:53 Security Events' to root
D: [1281318835] cleanup: Killing lockfile-touch - 17979
D: [1281318835] cleanup: Removing lockfile: /var/lock/logcheck/logcheck.lock
D: [1281318835] cleanup: Removing - /tmp/logcheck.uIFLqU

This page is based on a document formerly found on our main website gentoo.org.
The following people contributed to the original document: phajdan.jr, nightmorph
They are listed here because wiki history does not allow for any external attribution. If you edit the wiki article, please do not add yourself here; your contributions are recorded on each article's associated history page.