Dovecot divide la autenticación en dos bases de datos:
- passdb verifica la contraseña ("¿esta persona es quien dice ser?").
- userdb proporciona los metadatos del usuario ("¿dónde están sus mensajes, cuál es su UID, su cuota?").
Las dos consultas se hacen en cada inicio de sesión. Pueden venir de la misma fuente o de fuentes distintas (por ejemplo, LDAP para las contraseñas y una plantilla estática para userdb).
Flujo de autenticación:
client → imap-login → auth daemon → passdb lookup → userdb lookup → imap process
Si passdb dice que sí y userdb devuelve metadatos válidos, el inicio de sesión tiene éxito. Si userdb no devuelve nada, el inicio de sesión falla con "no such user" aunque la contraseña fuera correcta.
Activa el log detallado de autenticación al depurar:
auth_verbose = yes
auth_debug = yes
en local.conf. Reinicia Dovecot. Sigue /var/log/dovecot.log con tail y repite el inicio de sesión que falla.
Inicia sesión para llevar el registro de lo que ya leíste.