So sieht die Meldung aus
imap-login: Disconnected (auth failed, 1 attempts in 2 secs): user=<anna@example.com>, method=PLAIN, rip=198.51.100.7, lip=203.0.113.10, TLSHäufige Ursachen
- Falsches oder geändertes Passwort, alter Wert noch im Handy oder Outlook gespeichert.
- Benutzername mit oder ohne Domain, passend zu
auth_username_formataber nicht zum Client. - Klartext-Anmeldung ohne TLS ist gesperrt („Plaintext authentication disallowed“).
- passdb-Abfrage oder Passwort-Schema (z. B. SHA512-CRYPT) passt nicht zu den gespeicherten Hashes.
- Viele Versuche von fremden IPs: Brute-Force auf IMAP/POP3.
Prüfen
- Fehlversuche nach IP gruppieren
journalctl -u dovecot --since '1 hour ago' | grep 'auth failed' | grep -o 'rip=[0-9a-f.:]*' | sort | uniq -c | sort -rn | head - Anmeldung direkt in Dovecot testen (fragt das Passwort ab)
doveadm auth test -x service=imap anna@example.com - Auth- und SSL-Einstellungen anzeigen
doveconf -n | grep -E 'auth_|passdb|userdb|ssl =' - Letzte Fehler aus dem Dovecot-Speicher anzeigen
doveadm log errors
Lösung
- Für Detailmeldungen vorübergehend
auth_verbose = yesundauth_debug_passwords = nosetzen unddoveadm reloadausführen. - Passwort neu setzen und den Hash mit
doveadm pw -s SHA512-CRYPTerzeugen. - Clients auf Port 993 (IMAPS) oder 143 mit STARTTLS umstellen.
- Gegen Brute-Force fail2ban mit dem Filter
dovecotaktivieren. - Nach der Diagnose
auth_verbosewieder abschalten, damit keine Benutzernamen im Log landen.
Häufige Fragen
Wie unterscheide ich falsches Passwort von Angriffen?
Ein einzelner Benutzer von einer bekannten IP ist meist ein gespeichertes altes Passwort. Viele verschiedene Benutzernamen von wenigen IPs sind ein Angriff.
Was bedeutet „0 attempts“ statt „auth failed“?
Bei „no auth attempts“ hat der Client gar keine Anmeldung versucht, meist Port-Scanner oder Monitoring. Das ist kein Anmeldefehler.