Dovecot, pequeñas peculiaridades
Desde hace algún tiempo -y después de haber lidiado con Cyrus y Courier- he optado por Dovecot como servidor POP3 e IMAP para máquinas en producción. Por varios motivos: la sencillez de configuración, sigue los estándares, soporta mbox y Maildir y algo muy importante, tiene un backend de autentificación SMTP compatible con Postfix (entre otros).
Sin duda el servicio de correo electrónico es el menos agradecido y probablemente el más doloroso para el sysadmin pero el haber dado con esta combinación de elementos me ha ahorrado un montón de problemas.
De todos modos en la última instalación que me ha tocado he encontrado un par de peculiaridades que me gustaría documentar por si alguien se encuentra en la misma situación.
Habiendo instalado el mismo O.S., las mismas versiones de software y exactamente los mismos ficheros de configuración a la hora de despachar correos me encuentro con un error inexperado en mail.log:
... status=bounced (local configuration error)
Así sin más descripción no puedo adivinar mucho así que decido activar errores en dovecot.conf con la directiva de configuración log_path = /var/log/dovecot.log. Ahora sí podemos sacar más información del dovecot.log:
Fatal: postmaster_address setting not given
Esto ya es otra cosa, después de un poco de googling corrijo el fallo agregando al fichero de configuración una dirección de postmaster, sigue pareciéndome raro porque /etc/aliases es el mismo que otras máquinas y nunca había notificado este problema antes pero bueno, es cuestión de agregar a dovecot.conf lo siguiente:
protocol lda {
postmaster_address = tu-postmaster@tu-dominio.com
}
Reinicio el servicio y a funcionar... pero no por mucho tiempo puesto que al día siguiente me encuentro con el servicio parado, vuelvo a reiniciar y el proceso se vuelve a parar cada día, repitiendo la jugada. Volviendo a los logs -ese gran invento- veo que todos los días a eso de las 6:00am suelta el siguiente mensaje:
dovecot: 2010-09-05 05:59:53 Fatal: Time just moved backwards by 9 seconds. This might cause a lot of problems, so I'll just kill myself now. http://wiki.dovecot.org/TimeMovedBackwards
Justo a esa hora tengo una tarea programada que sincroniza la hora del servidor con rdate. Al parecer Dovecot detecta que la hora ha cambiado y para no entrar en conflictos se hace el harakiri. Interesante, es algo que tienen documentado en su wiki y te animan a que cambies rdate/ntpdate por ntpd, clockspeed o chrony.
Nada del otro mundo pero sí me ha supuesto algo de tiempo saber el origen de los errores para poder subsanarlos así que bueno, si al menos esta entrada ayuda a alguien o le ahorra algún dolor de cabeza me daré por contento.