Eu tenho o sendmail rodando em uma máquina RedHat 7.1. Quero configurá-lo para autenticar usando PLAIN ou CRAM-MD5. Eu o tenho trabalhando com PLAIN (então sei que o cliente funciona, tenho o nome de usuário/senha correto, etc.), mas o CRAM-MD5 sempre retorna "535 5.7.0 authentication failed". Para testar, estou usando um script python simples que usa o módulo smtplib; Estou assumindo que a implementação do CRAM-MD5 está correta.
Ele responde ao EHLO com "AUTH DIGEST-MD5 CRAM-MD5 LOGIN PLAIN" e envia um desafio quando eu envio "AUTH CRAM-MD5", portanto aceita solicitações CRAM-MD5, mas se recusa a autenticá-las.
Eu sei que o CRAM-MD5 requer que o servidor tenha acesso às senhas de texto simples; é possível que não? Como posso saber e se não, como posso configurar a máquina para que isso aconteça?
Adicionei o nome de usuário/senha em /etc/mail/authinfo e executei map hash /etc/mail/authinfo < /etc/mail/authinfo
. Não há mensagens de erro no arquivo /var/log/maillog.
De acordo com o documento sasl sysadmin ,
No entanto, alguns fornecedores podem alterar a localização das coisas em tempo de compilação, portanto,
strings
nos binários sasl oustrace
pode ser necessário revelar exatamente ondesaslauthd
está olhando.Isso pode ajudar alguém...
Quando você executa
sendmailconfig
, diz ... "Infelizmente, não há uma maneira automática de migrar para /etc/sasldb2"Traduzido para mim: algo está errado com isso.
Então, acabei de deletar sasldb2 (achei que estava bagunçado de qualquer maneira.) Talvez isso não fosse necessário, talvez eu só precisasse adicionar meus usuários a ele?
De qualquer forma, executei o
saslpasswd2
que suponho que crie um banco de dados vazio sem usuários. A autenticação do usuário não funcionou até que eu executei...saslpasswd2 -c username
que solicita uma senha.E isso funciona como um encanto :-)
Estou usando Debian 9 com sasl2-bin, que
sendmailconfig
recomendo.