Depuração “incapaz de se conectar ao servidor sendmail”

1

Em um ambiente corporativo, temos um servidor de e-mail que tem apenas portas 25 / tcp e 587 / tcp disponíveis.

Quando usamos Scripts Perl (usando HTML :: Mail) para enviar centenas de e-mails legítimos, ele ocasionalmente falha com "Falha ao conectar ao servidor de e-mail".

Nós sentimos que a carga pesada no servidor do sendmail está fazendo com que ele rejeite a conexão, ou talvez nem mesmo responda ao pedido inicial.

Agora, a equipe que possui o servidor de e-mail não é cooperativa e exige prova de que o servidor rejeitou a conexão.

Pergunta: Quais informações podem ser coletadas do lado do cliente em caso de falha, supondo que o problema esteja no lado do servidor? Como provar que o problema está no lado do servidor, desde que realmente seja o caso?

[[Não tenho certeza se esta pergunta é válida aqui; Não posso pedir ajuda para resolver o problema quando a questão em si não estiver clara; Estou pedindo uma pequena lista de dicas e truques para ajudar a depurar esse problema; Eu estaria mesmo aberto a entradas em soluções alternativas]]

    
por Prem 14.02.2016 / 16:36

2 respostas

2

A solução é que a equipe do sendmail examine seu arquivo "/etc/mail/sendmail.mc":

dnl #
dnl # The following limits the number of processes sendmail can fork to accept 
dnl # incoming messages or process its message queues to 20.) sendmail refuses 
dnl # to accept connections once it has reached its quota of child processes.
dnl #
dnl define('confMAX_DAEMON_CHILDREN', '20')dnl
dnl #
dnl # Limits the number of new connections per second. This caps the overhead 
dnl # incurred due to forking new sendmail processes. May be useful against 
dnl # DoS attacks or barrages of spam. (As mentioned below, a per-IP address 
dnl # limit would be useful but is not available as an option at this writing.)
dnl #
dnl define('confCONNECTION_RATE_THROTTLE', '3')dnl

(Treat "dnl" as a comment leadin string.)

Se você está apenas enviando os e-mails para fora, provavelmente deve controlá-los.

    
por 14.02.2016 / 17:30
2

Registre as mensagens de erro e a hora EXATO quando ocorrerem problemas. Deve ajudar os administradores do sendmail a identificar problemas nos arquivos de log.

Com o envio em massa, você deve:
a) reutilizar a conexão SMTP para enviar muitos emails (por exemplo, 50)
b) número limite de mensagens enviadas por segundo (por exemplo, 20-50)

Outras medidas que eu poderia sugerir seriam específicas do sendmail e exigiria a colaboração dos administradores do sendmail.

    
por 15.02.2016 / 09:42