Reencaminhamento de Sendmail negado apesar da autenticação bem-sucedida

3

Eu não tenho muita experiência em manter um servidor de email, mas apesar disso eu devo configurar o sendmail como um MTA para um dos meus servidores. Eu tenho um problema em que o sendmail responde ao MUA que está tentando enviar um email para um domínio externo com:

"Relaying denied. Autenticação adequada necessária."

O problema real é o fato de que a autenticação está funcionando e a retransmissão é negada para usuários autenticados. Aqui está um log que mostra uma autenticação bem-sucedida, mas uma retransmissão negada.

NOTA: Informações confidenciais (nome de usuário, IP's ...) foram removidas dos logs. "myusername" é o nome de usuário que o MUA usa e MYIP é o endereço IP do qual o MUA se conecta ao sendmail.

sendmail[31285]: p4GLALtU031285: <-- STARTTLS
sendmail[31285]: p4GLALtU031285: --- 220 2.0.0 Ready to start TLS
sendmail[31285]: STARTTLS=server, get_verify: 0 get_peer: 0x0
sendmail[31285]: STARTTLS=server, relay=MYDOMAIN [MYIP], version=TLSv1/SSLv3, verify=NO, cipher=DHE-RSA-CAMELLIA256-SHA, bits=256/256
sendmail[31285]: STARTTLS=server, cert-subject=, cert-issuer=, verifymsg=ok
sendmail[31285]: AUTH: available mech=PLAIN ANONYMOUS LOGIN, allowed mech=EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN
sendmail[31285]: STARTTLS=read, info: fds=7/4, err=2
sendmail[31285]: p4GLALtU031285: <-- EHLO [127.0.0.1]
sendmail[31285]: p4GLALtV031285: --- 250-example.com Hello MYDOMAIN [MYIP], pleased to meet you
sendmail[31285]: p4GLALtV031285: --- 250-ENHANCEDSTATUSCODES
sendmail[31285]: p4GLALtV031285: --- 250-PIPELINING
sendmail[31285]: p4GLALtV031285: --- 250-8BITMIME
sendmail[31285]: p4GLALtV031285: --- 250-SIZE
sendmail[31285]: p4GLALtV031285: --- 250-DSN
sendmail[31285]: p4GLALtV031285: --- 250-ETRN
sendmail[31285]: p4GLALtV031285: --- 250-AUTH LOGIN PLAIN
sendmail[31285]: p4GLALtV031285: --- 250-DELIVERBY
sendmail[31285]: p4GLALtV031285: --- 250 HELP
sendmail[31285]: STARTTLS=read, info: fds=7/4, err=2
sendmail[31285]: p4GLALtV031285: <-- AUTH PLAIN XXXXXXXXXXXXXXXXXXXXX==
sendmail[31285]: p4GLALtV031285: --- 235 2.0.0 OK Authenticated
sendmail[31285]: AUTH=server, relay=MYDOMAIN [MYIP], authid=myusername, mech=PLAIN, bits=0
sendmail[31285]: STARTTLS=read, info: fds=7/4, err=2
sendmail[31285]: p4GLALtV031285: <-- MAIL FROM:<[email protected]> SIZE=382
sendmail[31285]: p4GLALtV031285: --- 250 2.1.0 <[email protected]>... Sender ok
sendmail[31285]: STARTTLS=read, info: fds=7/4, err=2
sendmail[31285]: p4GLALtV031285: <-- RCPT TO:<[email protected]>
sendmail[31285]: p4GLALtV031285: --- 550 5.7.1 <[email protected]>... Relaying denied. Proper authentication required.

Por que o sendmail responde com "235 2.0.0 OK Autenticado" e depois diz "Relaying denied. Autenticação correta necessária"? Eu sinto que estou sentindo falta de algo importante aqui.

Esta é a parte relevante do arquivo sendmail.mc:

define('confAUTH_OPTIONS', 'A p')dnl
TRUST_AUTH_MECH('EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN'i)dnl
define('confAUTH_MECHANISMS', 'EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl

Aqui está o / etc / mail / access. Está no estado padrão após a instalação

# Check the /usr/share/doc/sendmail/README.cf file for a description
# of the format of this file. (search for access_db in that file)
# The /usr/share/doc/sendmail/README.cf is part of the sendmail-doc
# package.
#
# If you want to use AuthInfo with "M:PLAIN LOGIN", make sure to have the
# cyrus-sasl-plain package installed.
#
# By default we allow relaying from localhost...
Connect:localhost.localdomain           RELAY
Connect:localhost                       RELAY
Connect:127.0.0.1                       RELAY
    
por c0ldcrow 16.05.2011 / 23:25

1 resposta

3

Obrigado pelos seus comentários. O problema foi resolvido e a solução é estúpida e embaraçosa. Graças a AlexD eu fiz:

grep AuthMech sendmail.cf

e tenho isso:

C{TrustAuthMech}EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAINi

O que é essa letra "i" fazendo aí? Eu não sou um especialista em sendmail, mas acho que essa não é uma maneira correta de especificar a autenticação "PLAIN". Eu verifiquei o arquivo .mc e a letra "i" está aqui:

TRUST_AUTH_MECH('EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN'i)dnl

Removido, reconstruir a configuração, reiniciar o servidor e pronto. Tudo funciona como esperado.

    
por 17.05.2011 / 14:46