10 DNS-Abfragen für einen SPF-Eintrag


10 DNS-Abfragen für einen SPF-Eintrag 01In RFC 7208 besteht eine interessante Einschränkung hinsichtlich des SPF-Protokolls, die darin besteht, maximal 10 DNS-Abfragen für einen Eintrag durchzuführen.… Mit anderen Worten, wenn der SPF-Eintrag viele DNS-abhängige Anweisungen enthält, nach denen der Überprüfungsserver zusätzliche Anforderungen stellen muss, wird nach Erreichen von 10 Anforderungen eine Fehlermeldung angezeigt.

Im folgenden Artikel werden wir überprüfen, wie diese Einschränkung in der Praxis funktioniert.


Wenn Sie sich für das Thema Mailserver interessieren, empfehle ich Ihnen, den entsprechenden Abschnitt in meinem Blog – Mailserver – zu lesen.


10 DNS-Abfragen für einen SPF-Eintrag

Ein SPF-Datensatz schützt uns vor dem Fälschen der Absenderadresse, indem er es uns ermöglicht, den sendenden Server zu autorisieren. Stellen Sie also fest, ob dieser Server E-Mails für die im MAIL FROM-Header oder in der HELO / EHLO-Begrüßung angegebene Domäne senden darf. Unter dem Gesichtspunkt der Bewertung der Spam-Bewertung einer Nachricht ist die Funktionalität sehr nützlich, obwohl sie nicht darauf ausgelegt ist, eine eindeutige Entscheidung über das Blockieren basierend auf den Ergebnissen des Scans zu treffen.

Weitere Informationen zu SPF finden Sie im Hauptartikel – SPF-Datensatz für einen Mailserver. Ich empfehle auch zu studieren:

Und ich komme zu einem kleinen Teil der Theorie.

Theorie

Nachdem Sie einen SPF-Eintrag für eine Domain erhalten haben, müssen Sie daraus eine Liste der IP-Adressen extrahieren, von denen aus Mailing zulässig ist. Wenn der gesamte Datensatz aus ip4 / ip6-Direktiven besteht, endet der Prozess dort (schließlich enthalten sie bereits Adressen / Subnetze in ihrer reinen Form). Wenn der Eintrag DNS-abhängige Anweisungen enthält (include, a, mx, ptr, existiert), müssen zusätzliche Abfragen an den DNS-Dienst gestellt werden.

Alles wäre in Ordnung, aber das Protokoll begrenzt explizit die maximal zulässige Anzahl von DNS-Anforderungen für einen SPF-Eintrag ::

SPF-Implementierungen MÜSSEN die Gesamtzahl dieser Begriffe während der SPF-Evaluierung auf 10 begrenzen, um eine unangemessene Belastung des DNS zu vermeiden.

Dies geschieht natürlich zum Guten, aber für Administratoren von Mail-Diensten (insbesondere verteilten mit einer komplexen Topologie) zwingt diese Einschränkung sie dazu, den Prozess des Erstellens und Verwaltens eines SPF-Datensatzes mit Bedacht anzugehen.

Empfehlungen

Aufgrund der Einschränkungen des Protokolls liegen die meisten Empfehlungen auf der Hand, aber es gibt auch einige Nuancen, die uns zu mehr Vorsicht zwingen.

  • Die erste und wichtigste Empfehlung ist halte SPF so kurz schreiben, so viel wie möglich.
  • Position IP4 / IP6-Direktiven am Anfang des Datensatzesund der Rest ist am Ende.
  • Und das letzte – wenn Sie die mx-Direktive in den Eintrag aufnehmen, berücksichtigen Sie dies Ein Datensatz, auf den MX verweist, ist ebenfalls im Limit enthalten. 10 DNS-Abfragen pro SPF.

Wenn wir über Limits sprechen, ist es nicht überflüssig, Sie daran zu erinnern, dass es ein Limit von 255 Zeichen zum Erstellen von TXT-Einträgen gibt, auf das Sie vor 10 DNS-abhängigen Anweisungen stoßen können. Es ist jedoch leicht, sich fortzubewegen durch Erstellen eines zusammengesetzten Datensatzes.

Prüfen

Persönlich wollte ich die letzte Einschränkung in der Praxis testen und habe einen MX-Datensatz erstellt, der auf eine Reihe von A-Datensätzen verweist.

Hinweis: um genauer zu sein, 16. Es ist unwahrscheinlich, dass jemand eine Infrastruktur in der Produktion mit so vielen empfangenden Servern hat, aber mein Ziel ist anders – das SPF-Limit zu überprüfen.

MX sieht so aus:

Von allen Einträgen nur mail.bq-srv.ru verweist auf einen echten Server und die anderen existieren überhaupt nicht, aber das spielt keine Rolle.

Und das ist SPF:

Wenn Sie versuchen, E-Mails von diesem Server zu senden, werden diese erfolgreich zugestellt. Es wird wahrscheinlich in Spam enden, aber der empfangende Server wird es höchstwahrscheinlich vermissen. Lass es uns versuchen:

Warum spf = pass?!

Es ist wichtig zu beachten, dass der DNS-Server Einträge in einer anderen Reihenfolge ausgibt und dass der Server, der den SPF-Eintrag überprüft, diese auf diese Weise verarbeitet. Wenn ein mail.bq-srv.ru wird dann über der zehnten Position sein spf = passwenn niedriger dann spf = fehlschlagen… Versuchen wir es noch einmal und hoffen, diesmal “Glück” zu haben:

Jetzt haben wir bekommen, was wir erwartet hatten – spf = permerrorwie im RFC geschrieben:

SPF-Implementierungen MÜSSEN die Gesamtzahl dieser Begriffe während der SPF-Evaluierung auf 10 begrenzen, um eine unangemessene Belastung des DNS zu vermeiden. Wenn dieses Limit überschritten wird, MUSS die Implementierung «permerror» zurückgeben.

Wenn Sie vor dem MX-Eintrag im SPF andere DNS-abhängige Anweisungen haben, stoßen Sie schneller auf das Limit von 10 Einträgen. Auf jeden Fall, wenn Sie sich plötzlich wiederfinden spf = permerrorDenken Sie an diese Einschränkung (und wenn Sie die empfangende Partei nach den Protokollen fragen, wird ein Fehler angezeigt – Mechanismen verwendeten zu viele DNS-Lookups). Viel Glück!

Kommentare bereitgestellt von HyperComments

Leave a Reply

Your email address will not be published. Required fields are marked *