Logwatch
Hier ist eine klare, einfache und vollständige Erklärung zu Logwatch im MediaWiki-Format, mit Fokus auf das Wesentliche und darauf, was genau wie ausgewertet wird:
Was ist Logwatch?
Logwatch ist ein Logfile-Analyse-Tool, das automatisch Systemprotokolle (Logs) auswertet und daraus einen übersichtlichen Bericht erzeugt.
Welche Logs werden ausgewertet?
Standardmäßig analysiert Logwatch folgende Protokolle:
- Systemprotokolle
- auth.log – Anmeldungen, fehlerhafte Logins, sudo-Zugriffe
- syslog – Allgemeine Systemmeldungen, Fehler, Warnungen
- kern.log – Kernelmeldungen, Hardwareprobleme, Fehler bei Geräten
- daemon.log – Meldungen von Diensten wie SSH, Cron, Postfix, etc.
- Anwendungsprotokolle (falls installiert)
- Apache – Zugriffe, Fehler, Attacken
- Postfix – E-Mail-Versand, Empfang, Spam-Warnungen
- SSH – Zugriffe, fehlgeschlagene Anmeldeversuche
- Cron – Ausführung und Fehler von Cronjobs
- Fail2Ban – IP-Blockaden, Sicherheitswarnungen
- MySQL/MariaDB – Fehler und Warnungen in der Datenbank
Wie wird ausgewertet?
Logwatch wertet die Logs regelmäßig (standardmäßig täglich) per Cronjob aus. Es sucht nach:
- Wichtigen Ereignissen
- Kritischen Fehlern (CRITICAL)
- Fehlgeschlagenen Anmeldungen (Login Failures)
- Sicherheitsrelevanten Warnungen (SECURITY)
- Abweichungen im normalen Betrieb (z.B. ungewöhnlich viele Zugriffe)
- Gruppierung und Zusammenfassung
- Häufig wiederkehrende Meldungen werden zusammengefasst dargestellt, um den Bericht übersichtlich zu halten.
- Einzelne Meldungen werden nach Typ und Dienst (z.B. SSH, Cron, Apache) sortiert.
Berichtsausgabe
Logwatch fasst alle relevanten Einträge in einem Bericht zusammen, der entweder:
- Per Mail versendet wird (Standard)
- Auf der Konsole ausgegeben wird
Die Detailtiefe kannst du selbst bestimmen:
- Low – Nur kritische und wichtige Meldungen (Standard)
- Med – Erweiterte Meldungen und Warnungen
- High – Ausführliche Detailmeldungen (für Troubleshooting)
Wichtige Optionen in logwatch.conf
Die Hauptkonfiguration erfolgt in /usr/share/logwatch/default.conf/logwatch.conf. Änderungen sollten immer in /etc/logwatch/conf/logwatch.conf vorgenommen werden.
- Wichtige Parameter
- MailTo = admin@beispiel.de – Wohin der Bericht gesendet wird.
- Detail = Low|Med|High – Wie detailliert der Bericht ausfällt.
- Range = yesterday|today|All – Welcher Zeitraum ausgewertet wird.
- Output = mail|stdout – Wie die Ausgabe erfolgen soll.
- Format = html|text – Ausgabeformat des Berichts.
Eigene Logs einbinden
Um eigene Logs auszuwerten, kannst du in:
/etc/logwatch/conf/services/
eigene Konfigurationsdateien hinterlegen. Beispiel:
Datei: /etc/logwatch/conf/services/meinlog.conf Title = "Mein Dienst" LogFile = /var/log/meindienst.log
Automatische Ausführung
Logwatch läuft standardmäßig einmal täglich über Cron. Du musst keine zusätzlichen Schritte vornehmen.
Manueller Test
So kannst du sofort sehen, was Logwatch macht:
Ausgabe auf der Konsole: logwatch --output stdout --detail High
Ausgabe per Mail testen: logwatch --mailto admin@beispiel.de --detail Med
Standardmäßig liefert Logwatch gute Berichte zu Postfix und Dovecot. Bei Rspamd und ClamAV musst du kleine Anpassungen machen, weil diese Logs nicht automatisch detailliert analysiert werden.
Hier ist genau, was du tun musst:
Postfix und Dovecot
Logwatch wertet Postfix und Dovecot standardmäßig automatisch und umfassend aus.
- Es werden erfasst
- Empfangene und gesendete Mails
- Zustellfehler und Warnungen
- Logins und fehlgeschlagene Authentifizierungen (Dovecot)
- Temporär und permanent abgelehnte Nachrichten (Postfix)
Du musst nichts tun, wenn du die Standard-Logpfade (z.B. /var/log/mail.log) verwendest.
Rspamd und ClamAV
Standardmäßig wertet Logwatch Rspamd und ClamAV nicht detailliert aus. Du bekommst höchstens sehr oberflächliche oder gar keine Meldungen dazu.
Rspamd in Logwatch integrieren
Erstelle zuerst eine neue Service-Konfiguration:
Datei /etc/logwatch/conf/services/rspamd.conf:
Title = "Rspamd" LogFile = /var/log/rspamd/rspamd.log
Um Meldungen besser zusammenzufassen, ergänze ein einfaches Filter-Skript:
Datei /etc/logwatch/scripts/services/rspamd:
#!/bin/bash grep -E "(reject|spam|greylist|action)" | sort | uniq -c | sort -nr
Mach es ausführbar:
chmod +x /etc/logwatch/scripts/services/rspamd
Damit erhältst du eine übersichtliche Zusammenfassung, wie viele Mails Spam, Greylisting oder andere Aktionen verursacht haben.
ClamAV in Logwatch integrieren
Standardmäßig sind ClamAV-Meldungen in Logwatch wenig aussagekräftig.
Erstelle folgende Service-Konfiguration:
Datei /etc/logwatch/conf/services/clamav.conf:
Title = "ClamAV" LogFile = /var/log/clamav/clamav.log
Und ein einfaches Filter-Skript:
Datei /etc/logwatch/scripts/services/clamav:
#!/bin/bash grep -E "(FOUND|Infected)" | sort | uniq -c | sort -nr
Mach es ausführbar:
chmod +x /etc/logwatch/scripts/services/clamav
Das gibt dir eine einfache, aber nützliche Zusammenfassung, welche Viren gefunden wurden.
Abschließender Test
Teste die Auswertung sofort mit:
logwatch --output stdout --service rspamd --detail high logwatch --output stdout --service clamav --detail high
Fazit
- Postfix und Dovecot laufen Out-of-the-box.
- Rspamd und ClamAV benötigen die gezeigten kleinen Anpassungen.
Danach liefert Logwatch täglich vollständige und übersichtliche Berichte über deinen kompletten Mailserver.