Ubuntu System-Authentifizierung Logs überwachen – Anleitung
Einleitung
Die Überwachung von System-Authentifizierungs-Logs unter Ubuntu ist ein essentieller Baustein der Systemsicherheit. Durch die systematische Analyse dieser Protokolldateien können Sie verdächtige Aktivitäten wie Brute-Force-Angriffe auf SSH, kompromittierte Passwörter oder unberechtigte Nutzung von sudo-Privilegien frühzeitig erkennen. Ubuntu speichert diese sicherheitsrelevanten Informationen in verschiedenen Log-Dateien und bietet sowohl traditionelle als auch moderne Werkzeuge für deren Auswertung.
Moderne Ubuntu-Systeme nutzen das systemd-Journal parallel zu den klassischen Syslog-Dateien, was Administratoren flexible Analysemöglichkeiten bietet. Die Kombination aus journalctl, traditionellen Log-Dateien und automatisierten Tools wie fail2ban ermöglicht eine umfassende Sicherheitsüberwachung. Diese Anleitung zeigt Ihnen, wie Sie diese Werkzeuge effektiv einsetzen und verdächtige Muster in Ihren Authentifizierungs-Logs identifizieren.
Voraussetzungen
Für die Durchführung dieser Anleitung benötigen Sie:
- Ein Ubuntu 22.04 LTS oder 24.04 LTS System mit Root- oder Sudo-Zugriff
- Grundlegende Kenntnisse der Linux-Kommandozeile
- SSH-Zugang zum System (falls Remote-Administration)
- Verständnis für grundlegende Sicherheitskonzepte
- Installierter Texteditor wie
nanoodervim
Stellen Sie sicher, dass Ihr System über ausreichend Speicherplatz für Log-Dateien verfügt und die Standard-Logging-Dienste rsyslog und systemd-journald aktiv sind.
Schritt-für-Schritt Anleitung
Authentifizierungs-Log-Dateien lokalisieren
Ubuntu speichert Authentifizierungsereignisse primär in /var/log/auth.log. Diese Datei enthält alle sicherheitsrelevanten Ereignisse, die vom PAM-System (Pluggable Authentication Modules) und SSH-Daemon protokolliert werden.
Überprüfen Sie zunächst die Verfügbarkeit der wichtigsten Log-Dateien:
ls -la /var/log/auth.log*
ls -la /var/log/wtmp
ls -la /var/log/lastlog
Für eine erste Übersicht über aktuelle Authentifizierungsereignisse verwenden Sie:
sudo tail -50 /var/log/auth.log
Systemd-Journal für Authentifizierung nutzen
Moderne Ubuntu-Systeme speichern Authentifizierungsdaten zusätzlich im systemd-Journal. Der journalctl-Befehl bietet mächtige Filtermöglichkeiten:
sudo journalctl -u ssh
sudo journalctl -u systemd-logind
sudo journalctl --since "1 hour ago" | grep -i "authentication\|sudo\|ssh"
Für eine zeitbasierte Analyse der letzten 24 Stunden:
sudo journalctl --since "24 hours ago" --until "now" -p info
SSH-Verbindungen und Login-Versuche analysieren
SSH-Brute-Force-Angriffe sind eine häufige Bedrohung. Überwachen Sie fehlgeschlagene SSH-Verbindungsversuche mit:
sudo grep "Failed password" /var/log/auth.log | tail -20
sudo grep "Invalid user" /var/log/auth.log | tail -20
Für eine detailliertere Analyse erfolgreicher SSH-Verbindungen:
sudo grep "Accepted password\|Accepted publickey" /var/log/auth.log | tail -20
Identifizieren Sie die häufigsten Angreifer-IP-Adressen:
sudo grep "Failed password" /var/log/auth.log | awk '{print $11}' | sort | uniq -c | sort -nr | head -10
Sudo-Aktivitäten überwachen
Sudo-Nutzung ist ein kritischer Sicherheitsaspekt. Überwachen Sie alle sudo-Aktionen:
sudo grep "sudo:" /var/log/auth.log | tail -20
Fehlgeschlagene sudo-Versuche sind besonders verdächtig:
sudo grep "sudo.*FAILED" /var/log/auth.log
sudo journalctl | grep "sudo.*authentication failure"
Login-Historie mit last und lastlog
Die Befehle last und lastlog bieten schnelle Übersichten über Benutzeraktivitäten:
last -10
lastlog | head -20
Für spezifische Benutzeranalyse:
last -u root
last -i
Automatisierte Überwachung mit fail2ban
Installieren und konfigurieren Sie fail2ban für automatischen Schutz:
sudo apt update
sudo apt install fail2ban
Erstellen Sie eine lokale Konfigurationsdatei:
sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
Bearbeiten Sie die Konfiguration für SSH-Schutz:
[sshd]
enabled = true
port = ssh
logpath = /var/log/auth.log
maxretry = 3
bantime = 3600
findtime = 600
Starten und aktivieren Sie fail2ban:
sudo systemctl enable fail2ban
sudo systemctl start fail2ban
Log-Rotation und Archivierung
Überprüfen Sie die Log-Rotation-Konfiguration:
sudo cat /etc/logrotate.d/rsyslog
Für längere Aufbewahrungszeiten passen Sie die Rotation an:
/var/log/auth.log {
weekly
missingok
rotate 52
compress
delaycompress
notifempty
create 640 syslog adm
}
Überprüfung
Testen Sie Ihre Überwachungssetup durch kontrollierte Testszenarien:
Führen Sie einen fehlgeschlagenen SSH-Login durch und überprüfen Sie die Protokollierung:
sudo tail -f /var/log/auth.log | grep ssh
Testen Sie sudo-Logging mit einem bewusst fehlerhaften Befehl:
sudo -u nonexistentuser whoami
Überprüfen Sie die fail2ban-Funktionalität:
sudo fail2ban-client status
sudo fail2ban-client status sshd
Validieren Sie die systemd-Journal-Integration:
sudo journalctl --since "5 minutes ago" | grep -E "(ssh|sudo|authentication)"
Troubleshooting
Problem: auth.log ist leer oder existiert nicht
Lösung: Überprüfen Sie den rsyslog-Status und die Konfiguration:
sudo systemctl status rsyslog
sudo grep "auth" /etc/rsyslog.conf
Problem: journalctl zeigt keine Authentifizierungsereignisse
Lösung: Überprüfen Sie die systemd-journald-Konfiguration:
sudo systemctl status systemd-journald
sudo journalctl --verify
Problem: fail2ban startet nicht
Lösung: Prüfen Sie die Konfigurationssyntax:
sudo fail2ban-client -t
sudo journalctl -u fail2ban
Problem: Hohe CPU-Last durch Log-Analyse
Lösung: Implementieren Sie effizientere Filterung und nutzen Sie indexbasierte Suche:
sudo journalctl --since "1 hour ago" -u ssh --no-pager | head -100
Fazit
Die effektive Überwachung von Authentifizierungs-Logs ist fundamental für die Systemsicherheit unter Ubuntu. Durch die Kombination aus traditionellen Log-Dateien, systemd-Journal und automatisierten Tools wie fail2ban schaffen Sie ein robustes Sicherheitsnetz gegen Angriffe. Die regelmäßige Analyse von /var/log/auth.log und die Nutzung von journalctl ermöglichen es, verdächtige Aktivitäten frühzeitig zu identifizieren.
Besonders wichtig ist die kontinuierliche Überwachung von SSH-Verbindungsversuchen, sudo-Nutzung und PAM-Ereignissen. Die Automatisierung durch fail2ban bietet zusätzlichen Schutz, ersetzt aber nicht die regelmäßige manuelle Überprüfung der Logs. Entwickeln Sie eine Routine für die tägliche Log-Analyse und dokumentieren Sie ungewöhnliche Muster für weitere Untersuchungen.
Für produktive Umgebungen sollten Sie zusätzlich zentrale Log-Sammlung, erweiterte SIEM-Systeme und regelmäßige Sicherheitsaudits implementieren. Die hier gezeigten Grundlagen bilden jedoch das Fundament für jede weiterführende Sicherheitsstrategie in Ubuntu-Umgebungen.