O sendmail não pode ser entregue ao gmail - as diretrizes de envio do IPv6 referentes aos registros PTR não foram atendidas

32

Estou com problemas para enviar e-mails para o google a partir de uma nova instalação do sendmail no ubuntu 14.04. Os registros DNS parecem estar bem para o ip. Algo mais deve estar errado.

Enviando email da linha de comando:

sudo sendmail -v -Am -i [email protected];

Saída detalhada:

myname@fx1:/etc/mail$ sudo sendmail -v -Am -i [email protected];
[email protected]... Connecting to aspmx.l.google.com. via esmtp...
220 mx.google.com ESMTP v1si55415385wja.21 - gsmtp
>>> EHLO staging.mydomain.com
250-mx.google.com at your service, [2a01:4f8:212:27c8::2]
250-SIZE 35882577
250-8BITMIME
250-STARTTLS
250-ENHANCEDSTATUSCODES
250-PIPELINING
250-CHUNKING
250 SMTPUTF8
>>> STARTTLS
220 2.0.0 Ready to start TLS
>>> EHLO staging.mydomain.com
250-mx.google.com at your service, [2a01:4f8:212:27c8::2]
250-SIZE 35882577
250-8BITMIME
250-ENHANCEDSTATUSCODES
250-PIPELINING
250-CHUNKING
250 SMTPUTF8
>>> MAIL From:<[email protected]>
250 2.1.0 OK v1si55415385wja.21 - gsmtp
>>> RCPT To:<[email protected]>
>>> DATA
250 2.1.5 OK v1si55415385wja.21 - gsmtp
354  Go ahead v1si55415385wja.21 - gsmtp
>>> .
550-5.7.1 [2a01:4f8:212:27c8::2] Our system has detected that this message does
550-5.7.1 not meet IPv6 sending guidelines regarding PTR records and
550-5.7.1 authentication. Please review
550-5.7.1  https://support.google.com/mail/?p=ipv6_authentication_error for more
550 5.7.1 information. v1si55415385wja.21 - gsmtp
myname... Connecting to local...
myname... Sent

Qualquer ajuda é muito apreciada. Agradeço antecipadamente.

Merlin
fonte
Você revisou o documento no erro?
22815 Craig Watson
sim, claro. Ele afirma que o DNS do IPv6 deve ser definido. Fiz isso e o endereço IPv6 aponta para o nome de domínio.
Merlin28 /
E seu nome de host para a frente é?
Craig Watson
não sei o que você quer dizer com nome de host encaminhado. O DNS inversa para 2a01: 4F8: 212: 27c8 :: 2 é definido como staging.findix.com
merlin
3
Esse é o seu problema. staging.findix.com não tem um registro AAA apontando para 2a01:4f8:212:27c8::2.
Craig Watson

Respostas:

17

Do ponto de vista do Google, eles estão tentando verificar a identidade do endereço IP que está se conectando a eles, para tentar procurar o PTRregistro 2a01:4f8:212:27c8::2.

Quando eles resolverem isso staging.findix.com, tentarão verificar se isso resolve de volta 2a01:4f8:212:27c8::2- o que não acontece - ao resultado da pesquisa .

Pesquisa reversa (registro PTR)

cwatson@thor:~$ nslookup 31.220.4.52
Server:     127.0.0.1
Address:    127.0.0.1#53

Non-authoritative answer:
52.4.220.31.in-addr.arpa    name = tyr.vikingserv.net.

Pesquisa direta (um registro)

cwatson@thor:~$ nslookup tyr.vikingserv.net
Server:     127.0.0.1
Address:    127.0.0.1#53

Non-authoritative answer:
Name:   tyr.vikingserv.net
Address: 31.220.4.52
Craig Watson
fonte
2
Esse primeiro parágrafo não está certo; como vários registros A / AAAA podem apontar para o mesmo endereço IP, isso seria impossível. O que é necessário é que, seja qual for o nome do host que seu registro PTR aponte, quando você procurar esse nome de host, retorne ao endereço original. Ou seja, o loop endereço-> nome do host-> endereço deve estar completo; o loop hostname-> endereço-> hostname não pode ser tão garantido e ninguém deve se preocupar com isso.
MadHatter apoia Monica
Obrigado. Isso resolveu o problema e as mensagens do terminal são entregues.
Merlin28 /
2
Parece-me que você responde o "porquê", mas não o "como consertar". Pessoalmente, não tenho conhecimento de DNS suficiente para que esta resposta me ajude.
Bob
1
Eu tive que adicionar o registro AAAA para o meu endereço IPv6 da mensagem de erro do google (2a01: 4f8: 212: 27c8 :: 2 no seu caso) ao servidor DNS do nome de domínio retornado pelo hostnamecomando. Depois de algum tempo (a expiração do TTL, que foi no dia seguinte), fui capaz de enviar um email para minha conta gmal com este comando: sendmail -v -Am -i <my_gmal_account>@gmail.com;(e pressionando Ctrl + D).
Csongor Halmai
30
  1. Verifique os protocolos atuais:

    postconf inet_protocols

    net_protocols = all

  2. Edite o arquivo cf se ele retornar all

    grep 'inet_protocols' /etc/postfix/main.cf

    inet_protocols = ipv4

  3. Reiniciar

    service postfix restart

  4. Verifique novamente

    postconf inet_protocols

    inet_protocols = ipv4

Ender
fonte
3
IMHO uma solução muito mais fácil do que a aceita. Se você não precisar usar o IPv6, isso pode ser uma solução rápida.
Laringe Decídua
Isso é mais simples que a outra resposta, embora a outra seja mais completa. Ele resolveu meu problema, pois não preciso do IPv6 por enquanto.
javsmo 15/07
2

O nome do host do servidor smtp pode ser um problema. Pareceu ser o meu caso. O POstfix estava de alguma forma enviando um nome de host para smtp.gmail.com não relevante para o meu nome de domínio smtp.

David Bouyeure
fonte
2

Eu acho que a resposta do Google é um pouco falsa. Embora a "mensagem de erro" mencione o PTR, o 550 5.7.1 é sobre retransmissão. Eu também estava recebendo esse erro em uma instalação do Postfix / Dovecot, mas o corrigi através de algumas etapas:

  1. Adicionando as informações de IP do IPv6 à sua configuração ifcfg-eth0 no servidor de correio
  2. Adicionando um registro AAAA MX ao seu DNS
  3. Adicionando os intervalos IPv6 de todos os "remetentes autorizados" no seu postfix / main.cf no seu servidor de correio.

Eu tenho o AT&T Business UVerse e eles não suportam IPv6 estático para PTR, mas depois de executar as etapas acima, o Google parou de errar. Usei https://www.ultratools.com/ipv6Tools para converter de IPv4 para IPv6. Por fim, reuni tudo em um tutorial no meu site em Habilitando o IPV6 no CentOS (para enviar e receber e-mails)

Matthew Hunt
fonte