sendmail kann nicht an gmail zugestellt werden - IPv6-Versandrichtlinien für PTR-Datensätze werden nicht erfüllt

32

Ich habe Probleme bei der Zustellung von E-Mails an Google von einer neuen sendmail-Installation auf Ubuntu 14.04. Die DNS-Einträge scheinen für die IP in Ordnung zu sein. Etwas anderes muss falsch sein.

Senden von E-Mails über die Befehlszeile:

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

Ausführliche Ausgabe:

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

Jede Hilfe wird sehr geschätzt. Danke im Voraus.

merlin
quelle
Haben Sie das Dokument im Fehler überprüft?
Craig Watson
ja natürlich. Es besagt, dass die IPv6-DNS festgelegt werden muss. Ich habe es getan und die IPv6-Adresse zeigt auf den Domainnamen.
Merlin
Und Ihr Forward-Hostname ist?
Craig Watson
Ich bin mir nicht sicher, was Sie mit Forward-Hostnamen meinen. Der umgekehrte DNS für 2a01: 4f8: 212: 27c8 :: 2 lautet staging.findix.com
merlin
3
Da ist dein Problem. Auf staging.findix.com ist kein AAA-Datensatz vorhanden, auf den verwiesen wird 2a01:4f8:212:27c8::2.
Craig Watson

Antworten:

17

Aus der Sicht von Google versuchen sie, die Identität der IP-Adresse zu überprüfen, mit der sie verbunden sind, und versuchen daher, den PTRDatensatz nachzuschlagen 2a01:4f8:212:27c8::2.

Wenn sie dies auflösen, staging.findix.comversuchen sie zu überprüfen, ob es wieder aufgelöst wird 2a01:4f8:212:27c8::2- was nicht der Fall ist - und sehen dieses Nachschlageergebnis .

Reverse-Lookup (PTR-Datensatz)

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.

Forward (A record) Lookup

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
quelle
2
Dieser erste Absatz ist nicht ganz richtig; Da mehrere A / AAAA-Einträge auf dieselbe IP-Adresse verweisen können, ist dies unmöglich. Was erforderlich ist, ist, dass unabhängig vom Hostnamen, auf den Ihr PTR-Datensatz verweist, Sie zur ursprünglichen Adresse zurückkehren sollten, wenn Sie diesen Hostnamen nachschlagen. Das heißt, die Adress-> Hostname-> Adressschleife muss vollständig sein. Die Schleife hostname-> address-> hostname kann nicht so garantiert werden, und niemand sollte sich darum kümmern.
MadHatter unterstützt Monica
Vielen Dank. Das Problem wurde behoben und Nachrichten vom Terminal wurden zugestellt.
Merlin
2
Mir scheint, Sie beantworten das "Warum", aber nicht das "Wie man es behebt". Ich persönlich habe nicht genug DNS-Kenntnisse, damit diese Antwort mir hilft.
Bob
1
Ich musste den AAAA-Eintrag für meine IPv6-Adresse aus der Google-Fehlermeldung (2a01: 4f8: 212: 27c8 :: 2 in Ihrem Fall) zum DNS-Server des vom hostnameBefehl zurückgegebenen Domänennamens hinzufügen . Nach einiger Zeit (Ablauf der TTL am nächsten Tag) konnte ich mit folgendem Befehl eine E-Mail an meinen gmal-Account senden: sendmail -v -Am -i <my_gmal_account>@gmail.com;(und Strg + D drücken).
Csongor Halmai
29
  1. Überprüfen Sie die aktuellen Protokolle:

    postconf inet_protocols

    net_protocols = all

  2. Edit cf File, wenn es zurückkehrt all

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

    inet_protocols = ipv4

  3. Neustart

    service postfix restart

  4. Überprüfen Sie es noch einmal

    postconf inet_protocols

    inet_protocols = ipv4

Ender
quelle
3
IMHO eine viel einfachere Lösung als die akzeptierte. Wenn Sie IPv6 nicht dringend benötigen, kann dies eine schnelle Lösung sein.
Laryx Decidua
Dies ist einfacher als die andere Antwort, obwohl die andere vollständiger ist. Es hat mein Problem gelöst, da ich momentan kein IPv6 benötige.
Javsmo
2

Ihr SMTP-Server-Hostname könnte ein Problem sein. Das schien bei mir der Fall zu sein. POstfix hat irgendwie einen Hostnamen an smtp.gmail.com gesendet, der für meinen smtp-Domainnamen nicht relevant ist.

David Bouyeure
quelle
2

Ich finde die Antwort von Google etwas unaufrichtig. Obwohl in ihrer "Fehlermeldung" PTR erwähnt wird, geht es beim 550 5.7.1 um die Weiterleitung. Auch ich habe diesen Fehler bei einer Postfix / Dovecot-Installation erhalten, aber ich habe ihn in ein paar Schritten behoben:

  1. Hinzufügen der IPv6-IP-Informationen zu Ihrer ifcfg-eth0-Konfiguration auf dem Mailserver
  2. Hinzufügen eines AAAA MX-Eintrags zu Ihrem DNS
  3. Hinzufügen der IPv6-Bereiche aller "autorisierten Absender" in Ihrer postfix / main.cf auf Ihrem Mailserver.

Ich habe AT & T Business UVerse und sie unterstützen kein statisches IPv6 für PTR, aber nachdem Google die obigen Schritte ausgeführt hat, hat es aufgehört, Fehler zu machen. Ich habe https://www.ultratools.com/ipv6Tools zum Konvertieren von IPv4 nach IPv6 verwendet. Schließlich habe ich alles in einem Howto auf meiner Site unter Aktivieren von IPV6 unter CentOS (zum Senden und Empfangen von E-Mails) zusammengefasst.

Matthew Hunt
quelle