Pular para o conteúdo

SMTP Auth com Postfix e SASL (sem domínios virtuais)

Dica publicada em Linux / Correio Eletrônico
Anderson Leite rootkit
Hits: 20.843 Categoria: Linux Subcategoria: Correio Eletrônico
  • Indicar
  • Impressora
  • Denunciar

SMTP Auth com Postfix e SASL (sem domínios virtuais)

Este mini-tutorial foi escrito com base num sistema GNU/Linux Debian.

1 - Instalar os pacotes necessários:

# apt-get update
# apt-get install sasl2-bin libgsasl7 libauthen-sasl-cyrus-perl libauthen-sasl-perl libsasl2 libsasl2-modules


2 - Configurar o SASL:

No nosso caso, vamos remover o smtpd do ambiente chrootado, caso você precise manter esta opção, copie o diretório /var/run/saslauthd para a jaula do Postfix (em /var/spool/postfix/var/run/saslauthd), para isso, vamos editar o arquivo /etc/postfix/master.cf e na linha:

smtp      inet  n       -       -       -       -       smtpd

Vamos trocar para:

smtp      inet  n       -       n       -       -       smtpd

Após isto vamos criar o arquivo /etc/postfix/sasl/smtpd.conf, que dirá quais os mecanismos de autenticação serão permitidos e como o serviço deve rodar:

# vi /etc/postfix/sasl/smtpd.conf

pwcheck_method: saslauthd
mech_list: pam plain login

Depois iremos configurar o arquivo default do SASL para que o serviço seja iniciado normalmente durante o processo de boot do servidor:

# vi /etc/default/saslauthd

# This needs to be uncommented before saslauthd will be run automatically
START=yes

# You must specify the authentication mechanisms you wish to use.
# This defaults to "pam" for PAM support, but may also include
# "shadow" or "sasldb", like this:
# MECHANISMS="pam shadow"


MECHANISMS="pam"

Depois disto iremos adicionar as linhas sobre a autenticação smtp no arquivo de configuração do Postfix, o bloco do smtp auth ficará assim:

# SASL smtp-auth
smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous
broken_sasl_auth_clients = yes
smtpd_sasl_local_domain =
smtpd_sender_restrictions = permit_sasl_authenticated, permit_mynetworks, permit

# POP Before SMTP
smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_non_fqdn_recipient, reject_unauth_destination,check_client_access hash:/etc/postfix/pop-before-smtp

Uma última alteração necessária é adicionar o usuário postfix ao grupo sasl, para que ele possa se conectar ao diretório /var/run/saslauthd, no arquivo de socket (mux é o nome do arquivo) para realizar a autenticação, isto é feito com o comando:

# adduser postfix sasl

Feito isto reinicie o Postfix e o saslauthd e seu sistema já possuirá smtp autenticado.

Para testar se a autenticação está funcionando, utilize o comando:

testsaslauthd -u <usuário> -p <senha> -s smtp

O resultado deve ser:

0: OK "Success."

Monitorando o uso de processador de servidores (locais e remotos) com o Nagios + NRPE

Recuperando a senha perdida do MySQL

Configurando teclas especiais

Dell com controladora PERC x Debian com Kernel 2.6.xx

Compilando o Cyrus Imap 2.4.8 no Debian, sem Kerberos

Teste de autenticação em servidor IMAP

Resolvendo erro de "Erro! Conexão recusada" ao baixar emails do Yahoo pelo Evolution

Dificuldades comuns para novatos no Thunderbird

CentOS + Qmail-Toaster = SpamHaus/SpamCop com Score

#1 Comentário enviado por ielsistemas em 25/11/2008 - 12:41h
olá amigo bom tutorial configurei o meu tbm. vc fez um teste simples e funcionou como eu posso ta configurando isso em um cliente outlook.. a ficha nao caiu :(
#2 Comentário enviado por rootkit em 25/11/2008 - 12:46h
Basta configurar a conta de e-mail normalmente, e marcar a opção "meu servidor requer autenticação" e "usar as mesmas credenciais do servidor de recepção de e-mail", após isto, já deve funcionar.
#3 Comentário enviado por ricardoas30 em 16/02/2010 - 13:24h
Colega eu configurei e no meu LOG dá o seguinte erro, poderia dar uma dica ?

SASL LOGIN authentication failed: generic failure
#4 Comentário enviado por edwinwachs em 04/06/2014 - 09:53h
Muito bom cara!
Tava com problemas fazia uns dias e resolveu tudo!

Obrigado! :)

Contribuir com comentário

Entre na sua conta para comentar.