Ich versuche, alle meine SSH-Protokolle zu entschlüsseln (um ihnen mit logstash angemessene Tags zu geben). Aber ich habe einen Fall gefunden, den ich nicht wirklich verstehe:
Oct 23 07:43:47 sshd[59830]: Connection from 74.194.6.5 port 60126 on 213.67.100.148 port 22
Oct 23 07:43:51 sshd[59830]: error: maximum authentication attempts exceeded for root from 74.194.6.5 port 60126 ssh2 [preauth]
Oct 23 07:43:51 sshd[59830]: Disconnecting authenticating user root 74.194.6.5 port 60126: Too many authentication failures [preauth]
Wie kann es die maximalen Authentifizierungsversuche erreichen, ohne Anzeichen eines Authentifizierungsversuchs zu geben?
Normalerweise bekomme ich Dinge wie bevor die Zeile "Maximum Auth ..." erscheint.
Oct 23 08:54:06 sshd[62392]: Failed keyboard-interactive/pam for [...]
Oct 23 08:52:41 sshd[49690]: Failed publickey for [...]
Aber nicht immer.
Bitte beachten Sie, dass ich keine Probleme beim Anmelden habe.
Antworten:
Diese Fehlermeldung wird unter anderem ausgelöst, wenn der SSH-Client eine schlüsselbasierte Anmeldung versucht und mehr als
MaxAuthTries
ungültige Schlüssel anbietet . Der SSH-Server unterbricht dann die Verbindung. Dies kann entweder durch einen (böswilligen) Client verursacht werden, der überhaupt keine gültigen Schlüssel hat, oder durch gültige Benutzer, die einfach viele verschiedene Schlüsselpaare haben und derenMaxAuthTries
Nummer erreicht ist, bevor der gültige Schlüssel ausgetauscht werden kann. In diesem Fall wird die Verbindung beendet und erreicht nicht einmal das Stadium, in dem alternative Anmeldemethoden angeboten / versucht werden.(Auf der Standardprotokollstufe) Der SSH-Server zeichnet nicht auf, dass die fehlgeschlagenen Schlüssel ausgetauscht werden, und daher
error: maximum authentication attempts exceeded for ... ssh2 [preauth]
scheint die Fehlermeldung " " ohne vorherige Authentifizierungsversuche in der Protokolldatei zu erscheinen.Sie können dies leicht simulieren mit:
Der Standardwert für
MaxAuthTries
ist 6 .Wenn Sie sshd_config
LogLevel
auf erhöhen ,VERBOSE
werden die zusätzlichen Protokollereignisse generiert, die etwas sinnvoller sind:quelle
Laut der Manpage sshd config
Wie Sie sehen, ist das Limit pro Verbindung gültig und nicht alle Versuche werden protokolliert. Sie können auch auswählen, wie viele Informationen in Protokollen angezeigt werden sollen
In OpenSSH / Protokollierung und Fehlerbehebung sehen Sie Beispiele für Protokolle, in denen Sie sehen können, dass der ablehnende Teil dem von Ihnen gezeigten ähnlich ist:
Zusammenfassend lässt sich sagen, dass fehlgeschlagene Authentifizierungsversuche nicht immer an Protokolle gesendet werden. Das Verhalten kann in der conf-Datei für httpd konfiguriert werden.
Und jetzt, nach meiner nicht sehr glücklichen Erfahrung, ssh dem Internet zugänglich zu machen, möchte ich einige allgemeine Empfehlungen geben:
quelle
Eine andere Sache ist, wenn Sie sich mit ssh mit einem Passwort beim Root-Benutzer anmelden möchten und Ihre Konfiguration so eingestellt ist, dass
PermitRootLogin prohibit-password
sie mit einem Fehler endeterror: maximum authentication attempts exceeded for root from 10.0.12.12 port 58656 ssh2 [preauth]
quelle