Primero y principioso, instalar los paquetes necesarios. En debian todo es muy fácil.
aptitude install postfix-tls libsasl2-modules sasl2-bin
Ahora editamos el fichero de configuración:
mc -e /etc/default/saslauthd
# arranque autamatico
START=yes
# "shadow" or "sasldb", like this:
MECHANISMS="shadow"
PARAMS="-m /var/spool/postfix/var/run/saslauthd/"
PIDFILE="/var/spool/postfix/var/run/${NAME}/saslauthd.pid"
Ahora le decimos a smptd que funcione de una forma diferente. En /etc/postfix/sasl/smtpd.conf ponemos esto otro:
saslauthd_path: /var/run/saslauthd/mux
pwcheck_method: saslauthd
mech_list: plain login
Si te pones de suerte alomejor puedes quitar plain, yo tuve esa suerte pero se de gente que no. Ahora toca decirle a postfix que pida nombre de usuario y contraseña.
#sasl
smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous
smtpd_sasl_local_domain =
smtp_sasl_auth_enable = no
broken_sasl_auth_clients = yes
smtpd_recipient_restrictions = permit_sasl_authenticated, reject_unauth_destination
Ojo, no tiene que remplazar el cotenido de su "smtpd_recipient_restrictions" la cuestión es que estas dos deben estar de última, póngale encima todo lo que se le ocurra. Ya que estamos asegurando, pongamos a postfix a funcionar como chroot. Dicen que eso se hace así. En /etc/postfix/master.cnf debemos tener algo como esto:
smtp inet n - - - - smtpd

Cámbielo por esto:
smtp inet n - y - - smtpd
Note una "y" en lugar del segundo "-"
Ahor creamos el directorio para saslauthd. Mucho ojos, hay que hacer un paso raro con los permisos.
mkdir -p /var/spool/postfix/var/run/saslauthd
chown root.sasl -R /var/spool/postfix/var/
dpkg-statoverride --add root sasl 710 /var/spool/postfix/var/run/saslauthd
Para que postfix y sasl se entiendan, postfix debe pertencer al grupo sasl
adduser postfix sasl
Bueno solo faltaría reinicera postfix.
/etc/init.d/postfix restart