sendmail no se puede enviar a gmail: no se cumplen las pautas de envío de IPv6 con respecto a los registros PTR

32

Tengo problemas para enviar correo a google desde una nueva instalación de sendmail en ubuntu 14.04. Los registros DNS parecen estar bien para la ip. Algo más debe estar mal.

Envío de correo desde la línea de comando:

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

Salida detallada:

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

Cualquier ayuda es muy apreciada. Gracias de antemano.

esmerejón
fuente
¿Has revisado el documento en el error?
Craig Watson
sí, por supuesto. Establece que se debe configurar el IPv6 dns. Lo hice y la dirección ipv6 apunta al nombre de dominio.
Merlin
¿Y tu nombre de host directo es?
Craig Watson el
No estoy seguro de lo que quieres decir con nombre de host hacia adelante. El DNS inverso para 2a01: 4f8: 212: 27c8 :: 2 está configurado en staging.findix.com
merlin
3
Ahí está tu problema. staging.findix.com no tiene un registro AAA que apunte 2a01:4f8:212:27c8::2.
Craig Watson

Respuestas:

17

Desde el punto de vista de Google, están tratando de verificar la identidad de la dirección IP que se conecta a ellos, por lo que intentarán buscar el PTRregistro 2a01:4f8:212:27c8::2.

Cuando resuelvan eso staging.findix.com, intentarán verificar que esto se resuelva nuevamente 2a01:4f8:212:27c8::2, lo que no sucede, verán este resultado de búsqueda .

Búsqueda inversa (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.

Búsqueda directa (un 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
fuente
2
Ese primer párrafo no es del todo correcto; Dado que varios registros A / AAAA pueden apuntar a la misma dirección IP, eso sería imposible. Lo que se requiere es que sea cual sea el nombre de host al que apunte su registro PTR, cuando busque ese nombre de host, debe volver a la dirección original. Es decir, la dirección-> nombre de host-> bucle de dirección debe estar completa; el loop hostname-> address-> hostname no puede estar tan garantizado, y a nadie debería importarle.
MadHatter apoya a Monica el
Gracias. Eso resolvió el problema y se entregaron mensajes desde la terminal.
merlin
2
Me parece que respondes el "por qué" pero no el "cómo solucionarlo". Personalmente no tengo suficiente conocimiento de DNS para que esta respuesta me ayude.
Bob
1
Tuve que agregar el registro AAAA para mi dirección IPv6 del mensaje de error de google (2a01: 4f8: 212: 27c8 :: 2 en su caso) al servidor DNS del nombre de dominio devuelto por el hostnamecomando. Después de un tiempo (la expiración del TTL que era el día siguiente) pude enviar un correo electrónico a mi cuenta de gmal con este comando: sendmail -v -Am -i <my_gmal_account>@gmail.com;(y presionando Ctrl + D).
Csongor Halmai
30
  1. Verifique los protocolos actuales:

    postconf inet_protocols

    net_protocols = all

  2. Edite el archivo cf si vuelve all

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

    inet_protocols = ipv4

  3. Reiniciar

    service postfix restart

  4. Revísalo de nuevo

    postconf inet_protocols

    inet_protocols = ipv4

Ender
fuente
3
En mi humilde opinión, una solución mucho más fácil que la aceptada. Si no necesita presionar para usar IPv6, esto podría ser una solución rápida.
Laryx Decidua
Esto es más simple que la otra respuesta, aunque la otra es más completa. Resolvió mi problema ya que no necesito IPv6 por ahora.
javsmo
2

Su nombre de host del servidor smtp podría ser un problema. Parecía ser el caso para mí. POstfix de alguna manera estaba enviando un nombre de host a smtp.gmail.com no relevante con mi nombre de dominio smtp.

David Bouyeure
fuente
2

Creo que la respuesta de Google es un poco falsa. Aunque su "mensaje de error" menciona PTR, el 550 5.7.1 trata de retransmitir. También recibí este error en una instalación de Postfix / Dovecot, pero lo arreglé a través de unos pocos pasos:

  1. Agregar la información IP IPv6 a su configuración ifcfg-eth0 en el servidor de correo
  2. Agregar un registro MX AAAA en su DNS
  3. Agregar los rangos de IPv6 de todos los "remitentes autorizados" en su postfix / main.cf en su servidor de correo.

Tengo AT&T Business UVerse, y no admiten IPv6 estático para PTR, pero después de seguir los pasos anteriores, Google dejó de generar errores. Utilicé https://www.ultratools.com/ipv6Tools para convertir de IPv4 a IPv6. Finalmente, puse todo junto en un tutorial en mi sitio en Habilitar IPV6 en CentOS (para enviar y recibir correo)

Matthew Hunt
fuente