Para enviar e-mails 2FA de um site PHP para mim mesmo, configurei uma substituição de registro MX e criei uma regra de firewall que permite acesso ao servidor de e-mail para o domínio de destino, mas quando tento enviar, sendmail
grava em seu log que o e-mail foi aceito para entrega, mas nunca é entregue.
Para testar a resolução de nomes DNS, eu executo nslookup
e insiro type=MX
o comando, mas ele sempre imprime:
;; communications error to 10.0.0.1#53: timed out
;; communications error to 10.0.0.1#53: timed out
;; communications error to 10.0.0.1#53: timed out
;; no servers could be reached
Quando eu ping
, telnet
, ou curl
, etc, a resolução de nomes por esse servidor DNS funciona bem. Por exemplo, ele pode instalar pacotes de repositórios Debian.
A partir dessas poucas informações sobre sendmail
, que consegui absorver, parece que tudo o que ele precisa entregar [email protected]
é um registro MX para example.com
apontar para smtp.example.com
. Corrija-me se eu estiver errado. Todos esses itens parecem estar em vigor: há um registro MX para example.com
no meu servidor DNS; ele aponta para , smtp.example.com
que também tem um registro A; estou enviando para [email protected]
; há uma regra de firewall que permite que a máquina Linux com sendmail
resolva nomes com o servidor DNS; há uma regra de firewall que permite que a máquina Linux com sendmail
envie e-mails para smtp.example.com
. Tudo isso existe na minha LAN e não precisa de nenhum acesso à Internet externa.
Como devo solucionar problemas de entrega do sendmail nessa situação?
EDITAR :
Enquanto isso, descobri a causa raiz da falha sendmail
: ele acrescenta qualquer endereço de e-mail que eu uso na linha de comando com o nome de usuário conectado no momento (sem considerar su
), ou seja, se meu nome de usuário for myusername
, ele muda me@mydomain
para myusername@me@mydomain
na primeira tentativa e myusername@mydomain
na segunda tentativa.
Falta alguma coisa em sendmail.mc
, mas o que é?