Hola gente, necesito ayuda!
Llevo ya varios días peleándome con Postfix y SASL ya que desde un cliente de correos cuando envío un correo no me autentica el usuario y me da error.
Primero veamos que error está dando /var/log/mail.warr:
Código:
Oct 15 20:34:37 srvbea01 postfix/smtpd[11686]: warning: amd5600.terabitia.local[172.16.0.5]: SASL LOGIN authentication failed: authentication failure
Ahí se puede ver que al intentar validar desde el cliente de correos este no me validada el usuario.
Tengo creadas las entradas en /etc/postfix/main.cf referentes a SASL:
Código:
# SASL
smtpd_sasl_application_name = smtpd
smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous
smtpd_recipient_restrictions = permit_sasl_authenticated, permit_mynetworks, $
broken_sasl_auth_clients = yes
inet_interfaces = all
smtp_sasl_password_maps = hash:/etc/sasldb2
smtpd_sasl_local_domain = $myhostname
Si hago telnet localhost podemos ver que tanto SASL y TLS están activados.
Código:
telnet localhost 25
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
220 correo.terabitia.local ESMTP Postfix (Ubuntu)
ehlo localhost
250-correo.terabitia.local
250-PIPELINING
250-SIZE 10240000
250-VRFY
250-ETRN
250-STARTTLS
250-AUTH PLAIN LOGIN
250-AUTH=PLAIN LOGIN
250-ENHANCEDSTATUSCODES
250-8BITMIME
250 DSN
Creamos el siguiente archivo /etc/postfix/sasl/smtpd.conf y su contenido:
Código:
pwcheck_method: saslauthd
mech_list: plain login
log_level: 5
Como postfix trabaja en chroot hay que modificar /etc/default/saslauthd para indicarle la ruta, así comunicamos postfix con saslauthd.
Contenido de /etc/default/saslauthd:
Código:
# Should saslauthd run automatically on startup? (default: no)
START=yes
# Example: MECHANISMS="sasldb"
MECHANISMS="pam"
# Agrego esta linea para integra SASLAUTHD en FIX ya que este trabaja en CHROOT
OPTIONS="-c -m /var/spool/postfix/var/run/saslauthd -r"
Además creamos enlace simbólico para que postfix "vea" a saslauthd:
Código:
ln -s /var/run/saslauthd/ /var/spool/postfix/var/run/saslauthd/
Podemos ver que ambos contienen lo mismo:
Código:
/var/run/saslauthd/:
total 936
-rw------- 1 root root 0 2009-10-13 18:03 cache.flock
-rw------- 1 root root 945152 2009-10-13 18:03 cache.mmap
srwxrwxrwx 1 root root 0 2009-10-13 18:03 mux
-rw------- 1 root root 0 2009-10-13 18:03 mux.accept
lrwxrwxrwx 1 root root 37 2009-10-15 20:23 saslauthd -> /var/spool/postfix/var/run/saslauthd/
-rw------- 1 root root 5 2009-10-13 18:03 saslauthd.pid
/var/spool/postfix/var/run/saslauthd/:
total 932
-rw------- 1 root root 0 2009-10-15 20:35 cache.flock
-rw------- 1 root root 945152 2009-10-15 20:35 cache.mmap
srwxrwxrwx 1 root root 0 2009-10-15 20:35 mux
-rw------- 1 root root 0 2009-10-15 20:35 mux.accept
-rw------- 1 root root 6 2009-10-15 20:35 saslauthd.pid
Además de esto he agregado el usuario postfix al grupo sasl:
Código:
sudo adduser postfix sasl
Lógicamente he agregado los usuarios del sistema a la base de datos de sasldb2, de tal forma que si probamos con:
Cita: sudo testsaslauthd -u test1 -p test1
0: OK "Success."
Y además sasauthd está corriendo.
Código:
root 11833 0.0 0.3 8168 848 ? Ss 20:35 0:00 /usr/sbin/saslauthd -a pam -c -m /var/spool/postfix/var/run/saslauthd -r -n 5
root 11834 0.0 0.1 8168 504 ? S 20:35 0:00 /usr/sbin/saslauthd -a pam -c -m /var/spool/postfix/var/run/saslauthd -r -n 5
root 11836 0.0 0.1 8168 424 ? S 20:35 0:00 /usr/sbin/saslauthd -a pam -c -m /var/spool/postfix/var/run/saslauthd -r -n 5
root 11837 0.0 0.1 8168 424 ? S 20:35 0:00 /usr/sbin/saslauthd -a pam -c -m /var/spool/postfix/var/run/saslauthd -r -n 5
root 11838 0.0 0.1 8168 424 ? S 20:35 0:00 /usr/sbin/saslauthd -a pam -c -m /var/spool/postfix/var/run/saslauthd -r -n 5
Bueno pues después de todo este tocho no tengo coj*** de hacer autenticar el usuario cuando este envía desde un cliente de correos usando SMTP con SSL.
Necesitaría una mano porque son ya días mirando manuales y más manuales y no consigo echarlo andar.
Saludos y gracias.
PD: Perdón por el tocho pero he tenido que especificarlo todo para que no haya confusión alguna.