Website-Suche

So finden Sie alle fehlgeschlagenen SSH-Anmeldeversuche unter Linux


Jeder Versuch, sich beim SSH-Server anzumelden, wird vom rsyslog-Daemon unter Linux verfolgt und in einer Protokolldatei aufgezeichnet. Der einfachste Mechanismus, um alle fehlgeschlagenen SSH-Anmeldeversuche unter Linux aufzulisten, ist eine Kombination aus dem Anzeigen und Filtern der Protokolldateien mit Hilfe des Befehls cat oder grep.

Um eine Liste der fehlgeschlagenen SSH-Anmeldungen unter Linux anzuzeigen, geben Sie einige der in dieser Anleitung vorgestellten Befehle ein. Stellen Sie sicher, dass diese Befehle mit Root-Rechten ausgeführt werden.

Der einfachste Befehl zum Auflisten aller fehlgeschlagenen SSH-Anmeldungen ist der unten gezeigte.

# grep "Failed password" /var/log/auth.log

Das gleiche Ergebnis kann auch durch die Ausgabe des Befehls cat erzielt werden.

# cat /var/log/auth.log | grep "Failed password"

Um zusätzliche Informationen zu den fehlgeschlagenen SSH-Anmeldungen anzuzeigen, geben Sie den Befehl ein, wie im folgenden Beispiel gezeigt.

# egrep "Failed|Failure" /var/log/auth.log

In CentOS oder RHEL werden die fehlgeschlagenen SSH-Sitzungen in der Datei /var/log/secure aufgezeichnet. Geben Sie den obigen Befehl für diese Protokolldatei ein, um fehlgeschlagene SSH-Anmeldungen zu identifizieren.

# egrep "Failed|Failure" /var/log/secure

Eine leicht modifizierte Version des obigen Befehls zum Anzeigen fehlgeschlagener SSH-Anmeldungen in CentOS oder RHEL lautet wie folgt.

# grep "Failed" /var/log/secure
grep "authentication failure" /var/log/secure

Geben Sie den folgenden Befehl ein, um eine Liste aller IP-Adressen anzuzeigen, die versucht haben, sich beim SSH-Server anzumelden, und die fehlgeschlagen sind, zusammen mit der Anzahl der fehlgeschlagenen Versuche jeder IP-Adresse.

# grep "Failed password" /var/log/auth.log | awk ‘{print $11}’ | uniq -c | sort -nr

Auf neueren Linux-Distributionen können Sie die vom Systemd-Daemon verwaltete Laufzeitprotokolldatei mit dem Befehl journalctl abfragen. Um alle fehlgeschlagenen SSH-Anmeldeversuche anzuzeigen, sollten Sie das Ergebnis über den grep-Filter weiterleiten, wie in den folgenden Befehlsbeispielen dargestellt.

# journalctl _SYSTEMD_UNIT=ssh.service | egrep "Failed|Failure"
journalctl _SYSTEMD_UNIT=sshd.service | egrep "Failed|Failure"  #In RHEL, CentOS 

Ersetzen Sie in CentOS oder RHEL die SSH-Daemon-Unit durch sshd.service, wie in den folgenden Befehlsbeispielen gezeigt.

# journalctl _SYSTEMD_UNIT=sshd.service | grep "failure"
journalctl _SYSTEMD_UNIT=sshd.service | grep "Failed"

Nachdem Sie die IP-Adressen identifiziert haben, die häufig auf Ihren SSH-Server zugreifen, um sich mit verdächtigen oder ungültigen Benutzerkonten beim System anzumelden, sollten Sie die Firewall-Regeln Ihres Systems aktualisieren, um die IP-Adressen der fehlgeschlagenen SSH-Versuche zu blockieren, oder eine spezielle Software wie fail2ban verwenden, um diese Angriffe zu verwalten.

Verwandte Artikel: