Telnet para SMTP não recebe resposta 220 a menos que o usuário seja especificado

1

Meu servidor está configurado para gerar somente e-mails enviados (sem receber) e está esgotando o tempo limite ao tentar entrar em contato com smtp.example.com

Essencialmente, o e-mail é gerado por um processo em myserver.example.com, enviado para postfix no localhost, que atua como um sistema de satélite e retransmite o e-mail para smtp.example.com

Mensagens de erro do postfix em myserver.example.com são:

Date/time-stamp myserver postfix/smtp[####]: ##########: to=<[email protected]>, relay=smtp.example.com:25 delay=1029, delays=729/0.01/300/0, dsn=4.4.2 status=deferred (conversation with smtp.example.com timed out while receiving the initial server greeting)

E este é o mesmo erro, independentemente do destinatário. E-mails de saída estão em fila e nunca são enviados.

Confirmei este tempo limite por telnet smtp.example.com 25 e descobri que nem sequer obtenho a resposta inicial 220 do servidor SMTP.

No entanto, se eu telnet -l myuser smtp.example.com 25 , eu recebo a 220 resposta imediatamente e posso enviar um e-mail como esperado.

Configurei o postfix para usar o SMTP-AUTH adicionando as seguintes entradas a main.cf

relayhost = smtp.example.com
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/password
smtp_sasl_security_options = noanonymous
smtp_connect_timeout = 120s

Alguém pode sugerir como eu posso alterar minha configuração de postfix para obter o tipo de resposta rápida (ou qualquer ) que recebo usando telnet -l myuser ?

    
por Andrew Parker 22.02.2013 / 01:00

1 resposta

1

O SMTP não é capaz de entender o usuário que você definiu com -l, porque é outro protocolo que não o telnet.

Eu acho que especificando -l seu cliente telnet está postando automaticamente algumas coisas no smtpd e a saída que você vê então é apenas o que ele responde a qualquer entrada aleatória?

Mas de qualquer maneira. Se você acabou de fazer um telnet para a porta 25 do seusmtpd e não obteve nenhuma saída, provavelmente deve haver algum erro nos logs no momento em que você se conectar. Talvez você deva tentar verificar os logs com tail -f enquanto conecta? dependendo da distro, os logs podem estar em arquivos diferentes, por exemplo, no SuSE, seria:

tail -f /var/log/mail.info /var/log/mail.err /var/log/mail.warn

Agora, enquanto você executa esse tail , conecte-se ao smtpd ao mesmo tempo, para ver se alguns erros foram gravados no log.

    
por 22.02.2013 / 05:26