
Ich habe mich gerade bei meinem kleinen Homeserver angemeldet und diese Nachricht gesehen:
Last failed login: Sun Jan 14 17:08:42 CET 2024 from 192.168.1.111 on ssh:notty
There were 4 failed login attempts since the last successful login.
Ich wechselte zum Root-Benutzer und führte
root@homeserver ~]# egrep "Failed|Failure" /var/log/secure
Jan 14 17:08:42 homeserver sshd[4906]: Failed password for invalid user podman from 192.168.1.111 port 59183 ssh2
Warum meldet die erste Eingabeaufforderung 4 fehlgeschlagene Anmeldungen, während der Befehl egrep nur 1 Eintrag aus dem secure
Protokoll zurückgibt? Muss ich nach etwas anderem greppen?
Antwort1
Aus Ihren Protokollzeilen nach erfolgreicher Anmeldung und der Tatsache, dass Sie überprüft haben /var/log/secure
, gehe ich davon aus, dass Sie Redhat/CentOS auf Ihrem Computer ausführen. Tatsächlich ist die erste Eingabeaufforderung, die Sie in Ihrer Frage erwähnt haben, wahrscheinlich die Ausgabe von pam_lastlog
, deren Handbuchseite lautet:
PAM_LASTLOG(8)
... (omitted for brevity)
OPTIONS
... (omitted for brevity)
showfailed
Display number of failed login attempts and the date of the last failed attempt from btmp. The date is not displayed when nodate is specified.
... (omitted for brevity)
Beachten Sie, dass die Manpage eindeutig angibt, dass die Nummer von abgerufen wird btmp
, d. h. /var/log/btmp
von einer anderen Protokolldatei, in der erfolglose Anmeldungen aufgezeichnet werden. Leider handelt es sich um eine Binärdatei, die Sie nicht mit den Befehlen cat
und überprüfen können grep
. Als Umweg können Sie last -f /var/log/btmp
den Befehl verwenden, um zu überprüfen, was die Datei aufzeichnet, gemäßdiese Antwort.
Übrigens könnte es hilfreich sein, wenn Sie die Manpage von pam_lastlog
und überprüfendiese Fragezur weiteren Lektüre.