Ist es in Ordnung, mehrere TXT-Einträge für eine einzelne Domain mit unterschiedlichen SPF-Einträgen zu haben?

17

Eine entfernte Empfängerdomäne lehnt E-Mails aufgrund von SPF ab, und ich denke, dies liegt daran, dass der Absender SPF falsch konfiguriert hat.

Wenn ich grabe, sehe ich:

[fooadm@box ~]# dig @8.8.8.8 -t TXT foosender.com

; <<>> DiG 9.3.6-P1-RedHat-9.3.6-20.P1.el5_8.6 <<>> @8.8.8.8 -t TXT foosender.com
; (1 server found)
;; global options:  printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 30608
;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;foosender.com.              IN      TXT

;; ANSWER SECTION:
foosender.com.       14039   IN      TXT     "v=spf1 include:spf.foo1.com -all"
foosender.com.       14039   IN      TXT     "v=spf1 include:_spf.bob.foo2.com -all"

;; Query time: 26 msec
;; SERVER: 8.8.8.8#53(8.8.8.8)
;; WHEN: Tue Jan  7 09:45:38 2014
;; MSG SIZE  rcvd: 146

Ist das ein gültiges Setup? Mir kommt es seltsam vor, dass es zwei separate Datensätze gibt (jeder mit schweren Fehlern). Sollte nicht alles in einem einzigen Datensatz sein?

Ich würde erwarten, dass der richtige TXT-Eintrag lautet:

v=spf1 include:spf.foo1.com include:_spf.bob.foo2.com -all

Mike B
quelle

Antworten:

20

Du hast recht. Siehe RFC 4408, Abschnitt 4.5 .

  1. Datensätze, die nicht mit einem Versionsabschnitt von genau "v = spf1" beginnen, werden verworfen. Beachten Sie, dass der Versionsabschnitt entweder durch ein SP-Zeichen oder das Ende des Datensatzes abgeschlossen wird. Ein Datensatz mit einem Versionsabschnitt von "v = spf10" stimmt nicht überein und muss verworfen werden.

  2. Befinden sich Datensätze vom Typ SPF im Satz, werden alle Datensätze vom Typ TXT verworfen.

    Nach den obigen Schritten sollte genau ein Datensatz übrig sein, und die Auswertung kann fortgesetzt werden. Wenn noch zwei oder mehr Datensätze vorhanden sind, wird check_host () sofort mit dem Ergebnis "PermError" beendet.

    Wenn keine übereinstimmenden Datensätze zurückgegeben werden, MUSS ein SPF-Client davon ausgehen, dass die Domäne keine SPF-Deklarationen abgibt. Die SPF-Verarbeitung MUSS gestoppt werden und
    "Keine" zurückgeben.

dmourati
quelle
2
Ab April 2014 gibt es RFC 7208, der RFC 4408 überholt. Datensätze vom Typ SPF wurden zugunsten von TXT-Datensätzen abgelehnt SPF records MUST be published as a DNS TXT (type 16) Resource Record (RR) [RFC1035] only.(siehe RFC 7208, Abschnitt 3.1 ). Ich werde eine neue Antwort darauf versuchen.
JHoffmann
4

Dieses SPF-Setup ist ungültig. Falls mehrere Datensätze gefunden werden, sollte die Datensatzauswahl als Ergebnis einen Fehler erzeugen. Informationen zum Auswählen von Datensätzen finden Sie in RFC 7208, Abschnitt 4.5 :

Wenn der resultierende Datensatz mehr als einen Datensatz enthält, erzeugt check_host () das Ergebnis "permerror".

JHoffmann
quelle