Google Mail SPF schlägt basierend auf der Client-IP fehl

8

Google Mail schlägt die SPF-Prüfung basierend auf der Client-IP fehl. Dies sind die relevanten Überschriften:

Received-SPF: fail (google.com: domain of [email protected] does not designate 164.77.240.58 as permitted sender) client-ip=164.77.240.58;
Received: from johndoe (unknown [164.77.240.58])
    by mail.example.com (Postfix) with ESMTP id 993643FE2D

Die Client-IP (164.77.240.58) ist die IP von Johndoes Computer. Die Absender-IP, die IP von mail.example.com, ist im SPF-Datensatz enthalten.

Warum schlägt Google Mail basierend auf der Client-IP anstelle der Absender-IP fehl? Soll SPF so funktionieren?

Max Toro
quelle
Ich hätte erwartet, dass sich ihr Verweis auf "Client-IP" einfach auf den Client bezieht, der mit ihrem SMTP-Server verbunden ist. (Was würden Sie erwarten, afaict?)
Håkan Lindqvist
3
Können Sie auch den Receivedvon Google Mail hinzugefügten Header einfügen, um zu klären, woher die E-Mails tatsächlich stammen?
Håkan Lindqvist
@ HåkanLindqvist Die anderen erhaltenen Header sagen nurby <google IP>
Max Toro
Wir haben ähnliche Probleme beim Import von E-Mails über IMAP in Google Mail. Problem eins (weniger ähnlich): Wenn wir E-Mails zwischen zwei lokalen Postfächern wie [email protected] an [email protected] senden (aber den SMTP-Port 25 verwenden), importiert Google Mail diese und lässt SPF die Client-IP überprüfen, nicht den Server. serverfault.com/q/669584 Problem zwei (ähnlicher): Wenn uns jemand eine E-Mail mit ESMTP-Headern sendet, importiert Google Mail diese und lässt SPF mit seiner Serverdomäne und unserer Server-IP prüfen. serverfault.com/q/670113
Zbyszek

Antworten:

4

Ziehen Sie zunächst den SPF-Datensatz von example.com:

$ dig -t spf mail.example.com

Stellen Sie sicher, dass example.com in der Absenderliste aufgeführt ist. Ihr SPF-Datensatz sollte ungefähr so ​​aussehen:

"v=spf1 a:mail.example.com a:cname.example.com -all"

Nehmen Sie alle aufgelisteten Domainnamen und führen Sie eine DNS-Suche durch, um die IP-Adressen zu erhalten:

$ dig mail.example.com

Führen Sie dann eine PTR-Suche durch, um den umgekehrten DNS-Namen für die IP zu erhalten:

$ dig -x XX.XX.XX.XX

Die umgekehrte IP-Suche sollte mit einem der im SPF-Datensatz aufgeführten Datensätze übereinstimmen. Es wäre jedoch hilfreich, mit dem SPF-Datensatz zu beginnen, damit wir sehen können, was los ist.

Pete
quelle
3
itym dig example.com TXT. Ich glaube auch nicht, dass die umgekehrte Suche einen Unterschied für SPF macht, solange der SPF-Datensatz die ptrMethode nicht verwendet.
Håkan Lindqvist
2

Ja, Google würde den SPF-Fehler korrekt identifizieren. Die zu überprüfende IP-Adresse ist die Adresse, die eine Verbindung zum Mail-Server von Google herstellt. Da für Google kein Header empfangen wurde, vermute ich, dass Ihr Mailserver den SPF für die Verbindung überprüft. SPF sollte nur auf nicht authentifizierte Verbindungen aus dem Internet überprüft werden. Lokale Verbindungen und authentifizierte Verbindungen sollten die SPF-Validierung umgehen.

SPF soll sicherstellen, dass der sendende Computer von der sendenden Domäne zugelassen wird. Normalerweise verfügt eine Domain über 1 oder 2 Mailserver, die alle E-Mails verarbeiten, die an das Internet gesendet oder von diesem empfangen werden. Diese Adressen sollten diejenigen sein, die im SPF-Datensatz für die Domäne aufgeführt sind.

In diesem Fall johndoescheint eine Verbindung zum Mailserver der Domäne hergestellt zu werden. Wenn sich der Server nicht im Netzwerk der Domäne befindet, wird häufig eine authentifizierte Verbindung am Übermittlungsport verwendet (587). Der Mailserver sollte die Nachricht dann an Google Mail weiterleiten und SPF sollte übergeben werden. Wenn SPF immer noch fehlschlägt, muss der SPF-Datensatz korrigiert werden, um die IP des Mailservers einzuschließen. Es gibt verschiedene Mechanismen, die verwendet werden können.

Meine E-Mail-Richtlinie stellt sicher, dass alle legitimen E-Mails, die von meiner Domain gesendet werden, den SPF passieren. Es gibt einige Dienste, die Nachrichten im Namen meiner Benutzer weiterleiten, bei denen der SPF fehlschlägt. Die aufgezeichneten Fehler, die ich von Servern zur Validierung erhalten habe, DMARCsind jedoch alle Spammer.

BillThor
quelle
2
Die Mail-Server-IP ist im SPF-Datensatz enthalten. Das ist die Absender-IP. Aber Google Mail lehnt basierend auf der Client-IP ab, das ist Johndoes Computer.
Max Toro
@MaxToro Laut dem empfangenen Header sendet Johndoes Computer direkt an Google. Es hat keinen PTR-Eintrag, ist also unbekannt. Es würde wahrscheinlich funktionieren, wenn sich Johndoes Computer bei Google authentifizieren würde.
BillThor
Nein, das ist mail.example.com, das von Johndoes Computer empfangen wird.
Max Toro
@MaxToro Sind Sie sicher, dass nicht Ihr Server den SPF-Eintrag ablehnt? Die letzte aktive Richtlinie wäre die von Google. In Ihrem E-Mail-Protokoll sollte angegeben sein, ob Sie versuchen, an Google zu senden.
BillThor