Configurar a autenticação SMTP no MTA oferece vários benefícios. A autenticação SMTP adiciona uma camada de segurança ao Sendmail e fornece aos usuários móveis que alternam os hosts a capacidade de usar o mesmo MTA sem a necessidade de reconfigurar as configurações de seus clientes de email a cada vez.
Instale o security/cyrus-sasl2 da Coleção de Ports. Este port suporta várias opções de tempo de compilação. Para o método de autenticação SMTP demonstrado neste exemplo, certifique-se de que LOGIN
não esteja desabilitado.
Depois de instalar o security/cyrus-sasl2, edite o /usr/local/lib/sasl2/Sendmail.conf
, ou crie-o se ele não existir, e adicione a seguinte linha :
pwcheck_method: saslauthd
Em seguida, instale o security/cyrus-sasl2-saslauthd e adicione a seguinte linha ao /etc/rc.conf
:
saslauthd_enable="YES"
Finalmente, inicie o daemon saslauthd:
#
service saslauthd start
Este daemon serve como um intermediário para o Sendmail autenticar no banco de dados do FreeBSD o passwd(5). Isso evita o trabalho de criar um novo conjunto de nomes de usuário e senhas para cada usuário que precise usar a autenticação SMTP e mantém a senha de login e email igual.
Em seguida, edite o /etc/make.conf
e adicione as seguintes linhas:
SENDMAIL_CFLAGS=-I/usr/local/include/sasl -DSASL SENDMAIL_LDFLAGS=-L/usr/local/lib SENDMAIL_LDADD=-lsasl2
Essas linhas fornecem ao Sendmail as opções de configuração apropriadas para vincular ao cyrus-sasl2 em tempo de compilação. Certifique-se de que o cyrus-sasl2 tenha sido instalado antes de recompilar o Sendmail.
Recompile o Sendmail executando os seguintes comandos:
#
cd /usr/src/lib/libsmutil
#
make cleandir && make obj && make
#
cd /usr/src/lib/libsm
#
make cleandir && make obj && make
#
cd /usr/src/usr.sbin/sendmail
#
make cleandir && make obj && make && make install
Esta compilação não deve ter nenhum problema se o /usr/src
não foi alterado extensivamente e as bibliotecas compartilhadas necessárias estiverem disponíveis.
Depois que o Sendmail tenha sido compilado e reinstalado, edite o /etc/mail/freebsd.mc
ou o arquivo local .mc
. Muitos administradores optam por usar a saída de hostname(1) como o nome de .mc
para exclusividade. Adicione estas linhas:
dnl set SASL options TRUST_AUTH_MECH(`GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN')dnl define(`confAUTH_MECHANISMS', `GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN')dnl
Essas opções configuram os diferentes métodos disponíveis para que o Sendmail autentique usuários. Para usar um método diferente de pwcheck, consulte a documentação do Sendmail.
Finalmente, execute make(1) enquanto estiver em /etc/mail
. Isso executará o novo .mc
e criará um .cf
chamado freebsd.cf
ou o nome usado para o arquivo local .mc
. Em seguida, execute make install restart
, que copiará o arquivo para o sendmail.cf
, e reinicie corretamente o Sendmail. Para mais informações sobre este processo, consulte /etc/mail/Makefile
.
Para testar a configuração, use um MUA para enviar uma mensagem de teste. Para investigações posteriores, defina o LogLevel
do Sendmail como 13
e verifique o /var/log/maillog
para quaisquer erros.
Para mais informações, consulte autenticação SMTP.
All FreeBSD documents are available for download at https://download.freebsd.org/ftp/doc/
Questions that are not answered by the
documentation may be
sent to <freebsd-questions@FreeBSD.org>.
Send questions about this document to <freebsd-doc@FreeBSD.org>.