Postfix com SMTP Autenticado
Pacotes a serem instalados
- postfix
- postfix-pcre
- postfix-tls
- procmail
- sasl2-bin
- libsasl2-2
- libsasl2-modules
- libsasl2-modules-gssapi-heimdal
root@debian:~# aptitude install <pacotes>
Configurando o Postfix
Primeiramente iremos configurar o main.cf do Postfix. Um arquivo completo pode ser visualizado aqui, mas se o seu postfix já está em operação, apenas adicione as linhas a seguir.
root@debian:~# vi /etc/postfix/main.cf smtpd_sasl_auth_enable = yes smtpd_sasl_security_options = noanonymous broken_sasl_auth_clients = yes smtpd_sasl_local_domain = $mydomain #smtpd_tls_auth_only = no #smtpd_sasl_application_name = smtpd smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, #reject_non_fqdn_sender, #reject_non_fqdn_recipient, reject_unauth_destination #reject_unauth_pipelining, #reject
Ajustando o SASL
Após o postfix configurado, crie o seguinte arquivo e adicione as linhas de configuração nele.
root@debian:~# vi /usr/lib/sasl2/smtpd.conf pwcheck_method: saslauthd mech_list: PLAIN LOGIN
Depois crie o seguinte link simbólico a seguir.
root@debian:~# ln -f /usr/lib/sasl2/smtpd.conf /etc/postfix/sasl/smtpd.conf
Agora vamos criar o diretório necessário para o funcionamento correto do sasl.
root@debian:~# mkdir -p /var/spool/postfix/var/run/saslauthd
Em em seguida substituir o diretório original por um link simbólico que irá aposntar o local correto da jaula do postfix.
Precisamos habilitar o sasl para ser iniciado e para que trabalhe enjaulado junto com o Postfix, já que o mesmo trabalha enjaulado por default.
root@debian:~# vi /etc/default/saslauthd [...] START=yes [...] #OPTIONS="-c -m /var/run/saslauthd" OPTIONS="-c -m /var/spool/postfix/var/run/saslauthd"
Tbem precisamos ajustar as permissões do diretóriodo sasl para que o postfix possa trabalhar.
root@debian:~# chown postfix /var/spool/postfix/var/run/saslauthd/
Reiniciando os Serviços
Feito isso, reinicie os serviços.
root@debian:~# /etc/init.d/postfix stop root@debian:~# /etc/init.d/postfix start root@debian:~# /etc/init.d/saslauthd stop root@debian:~# /etc/init.d/saslauthd start
Testando o SASL
Para testar se o usuário esta autenticando normalmente por SASL você poderá usar o seguinte comando:
root@debian:~# testsaslauthd -u fabriciovc -p senha 0: OK "Success."
No Debian:
root@debian:~# testsaslauthd -u fabriciovc -p senha -f /var/spool/postfix/var/run/saslauthd/mux 0: OK "Success."
É extremamente indicado que continue o processo de configuração do Postfix habilitando agora Criptografia com TLS para que tenhamos as senhas de SMTP sempre protegidas.