SPF-Authentifizierung: Eine Übersicht und bewährte Praktiken

Vogel

19.12.2016

E-Mail

1 min read

SPF-Authentifizierung: Eine Übersicht und bewährte Praktiken

Wichtige Erkenntnisse

    • SPF (Sender Policy Framework) ist ein pfadbasiertes E-Mail-Authentifizierungsprotokoll, das überprüft, ob der sendende Server berechtigt ist, E-Mails für eine Domain zu senden.

    • SPF-Richtlinien existieren als DNS TXT-Einträge, die mit Mechanismen formatiert sind, die definieren, welche Server, IPs oder Netzwerke im Auftrag einer Domain senden dürfen.

    • Die SPF-Validierung ist mit der Return-Path-Domain (Bounce-Domain) oder dem HELO-Hostname verknüpft — nicht mit der sichtbaren Absenderadresse.

    • Da SPF nur den Sendeweg prüft, kann es früh im SMTP-Transaktionsprozess validiert werden, was es nützlich macht, um unautorisierte E-Mails schnell abzulehnen.

    • SPF ist effektiv, aber nicht perfekt — es ist anfällig für falsche Negative, insbesondere bei der E-Mail-Weiterleitung und bei Mailinglisten.

    • SPF-Einträge basieren auf Mechanismen wie mx, a, ipv4, ipv6, include, redirect, exists und müssen mit einem all-Modifikator enden (-all, ~all, ?all, +all).

    • Es gelten DNS-Abfragelimits: Die SPF-Auswertung darf 10 DNS-Abfragen nicht überschreiten, was die Planung von Einträgen wichtig macht.

    • Der ptr-Mechanismus gilt inzwischen als „nicht verwenden“, aber Validatoren müssen ihn trotzdem akzeptieren. Einige Absender verwenden ihn noch aufgrund von Kompatibilitätslücken.

    • SPF allein garantiert nicht, dass eine E-Mail legitim ist — nur dass sie von einem autorisierten Server gesendet wurde. Es funktioniert am besten in Kombination mit DKIM, DMARC und anderen Anti-Betrugstechniken.

Q&A Highlights

  • Was ist SPF in einfachen Worten?

    SPF ermöglicht es einer Domain zu deklarieren, welche Server berechtigt sind, in ihrem Namen E-Mails zu versenden. Empfangsserver überprüfen dies, um unautorisierte Absender zu erkennen.

  • Warum wird SPF als „path-based“ bezeichnet?

    Da SPF den Pfad validiert, den die Nachricht genommen hat – speziell die IP des sendenden Servers – und nicht den Inhalt der Nachricht.

  • Wo wird eine SPF-Policy gespeichert?

    A: Als ein DNS TXT-Eintrag, beginnend mit v=spf1, gefolgt von Mechanismen, die erlaubte Absender definieren.

  • Welcher Domain wird von SPF validiert?

    Der Return-Path (auch als Bounce-Domain bezeichnet).

    Wenn der Return-Path leer ist (NULL-Absender), überprüft SPF stattdessen die HELO-Domain.

  • Kann SPF früh im SMTP-Transaktionsprozess überprüft werden?

    Ja. Da es nur von der IP und der Domain des sendenden Servers abhängt, kann SPF validiert werden, bevor der Nachrichteninhalt empfangen wird—was es effizient für die Filterung macht.

  • Warum schlägt SPF manchmal selbst bei legitimen E-Mails fehl?

    Häufige Ursachen sind:

    • Email-Weiterleitung (der Weiterleiter ist nicht im SPF-Eintrag der ursprünglichen Domain enthalten)

    • Mailinglisten (Nachrichten werden von einem anderen Server erneut gesendet)
      Dies führt zu falschen Negativen, die bei der pfadbasierten Authentifizierung inherent sind.

  • Was ist die Rolle von Mechanismen wie include, redirect und exists?

    • include — eine andere Domain-SFP-Eintrag autorisieren (z.B. Ihr ESP)

    • redirect — die SFP-Richtlinie einer anderen Domain wiederverwenden

    • exists — dynamisch basierend auf einem DNS-Lookup autorisieren (nützlich für komplexe Infrastruktur)

  • Wie funktionieren „all“ Modifier?

    • -all → alles nicht aufgelistete ablehnen (streng)

    • ~all → softfail (akzeptieren, aber markieren)

    • ?all → neutral

    • +all → alles durchlassen (deaktiviert effektiv SPF)

  • Warum wird der ptr-Mechanismus entmutigt?

    Es ist langsam, unzuverlässig und im modernen Standard veraltet—aber SPF-Validatoren müssen es weiterhin unterstützen.

  • Ist SPF allein genug für die E-Mail-Authentifizierung?

    Nein. SPF überprüft die sendende Infrastruktur, aber:

    • Es schützt nicht die Nachrichtenintegrität

    • Es stimmt nicht mit den sichtbaren From-Domains überein

    • Es funktioniert nicht bei Weiterleitungen
      SPF ist am stärksten, wenn es mit DKIM und DMARC kombiniert wird.

Bevor wir in die technische Umsetzung eintauchen, lohnt es sich, die Entwicklung und Vielfalt der verfügbaren Techniken zur E-Mail-Validierung zu verstehen. Von einfacher Syntaxprüfung bis zu modernen datengetriebenen Ansätzen bieten verschiedene Validierungsmethoden unterschiedliche Genauigkeits- und Zuverlässigkeitsgrade.

Wenn wir von „Email Authentication“ sprechen, beziehen wir uns auf eine Technik, die dem Empfänger einer Nachricht ein gewisses Maß an Sicherheit geben soll, dass die Nachricht tatsächlich vom angegebenen Absender stammt. Die Idee ist, ein gewisses Maß an Schutz gegen betrügerische E-Mails, wie Phishing und Spoofing zu erreichen, die das Vertrauen des Empfängers beim Erhalt von E-Mails untergraben könnten. Für Organisationen, die eine Nachrichtenverschlüsselung auf Nachrichtenniveau über die Authentifizierung hinaus benötigen, bietet S/MIME End-to-End-Sicherheit, wobei die automatisierte Sammlung öffentlicher Empfängerschlüssel die Implementierung skalierbarer macht. Das Versenden authentifizierter E-Mails bedeutet jedoch nicht, dass die E-Mail eine gute oder erwünschte E-Mail ist; es bedeutet lediglich, dass eine Reputation für die authentifizierte Partei zuverlässig etabliert und in Entscheidungen zur E-Mail-Akzeptanz und -Platzierung verwendet werden kann.

Es gibt heute zwei Hauptformen der E-Mail-Authentifizierung—Sender Policy Framework (SPF) und DomainKeys Identified Mail (DKIM). In diesem Blogpost werde ich erklären, was SPF ist und wie es funktioniert.

Bevor wir in die technische Umsetzung eintauchen, lohnt es sich, die Entwicklung und Vielfalt der verfügbaren Techniken zur E-Mail-Validierung zu verstehen. Von einfacher Syntaxprüfung bis zu modernen datengetriebenen Ansätzen bieten verschiedene Validierungsmethoden unterschiedliche Genauigkeits- und Zuverlässigkeitsgrade.

Wenn wir von „Email Authentication“ sprechen, beziehen wir uns auf eine Technik, die dem Empfänger einer Nachricht ein gewisses Maß an Sicherheit geben soll, dass die Nachricht tatsächlich vom angegebenen Absender stammt. Die Idee ist, ein gewisses Maß an Schutz gegen betrügerische E-Mails, wie Phishing und Spoofing zu erreichen, die das Vertrauen des Empfängers beim Erhalt von E-Mails untergraben könnten. Für Organisationen, die eine Nachrichtenverschlüsselung auf Nachrichtenniveau über die Authentifizierung hinaus benötigen, bietet S/MIME End-to-End-Sicherheit, wobei die automatisierte Sammlung öffentlicher Empfängerschlüssel die Implementierung skalierbarer macht. Das Versenden authentifizierter E-Mails bedeutet jedoch nicht, dass die E-Mail eine gute oder erwünschte E-Mail ist; es bedeutet lediglich, dass eine Reputation für die authentifizierte Partei zuverlässig etabliert und in Entscheidungen zur E-Mail-Akzeptanz und -Platzierung verwendet werden kann.

Es gibt heute zwei Hauptformen der E-Mail-Authentifizierung—Sender Policy Framework (SPF) und DomainKeys Identified Mail (DKIM). In diesem Blogpost werde ich erklären, was SPF ist und wie es funktioniert.

Bevor wir in die technische Umsetzung eintauchen, lohnt es sich, die Entwicklung und Vielfalt der verfügbaren Techniken zur E-Mail-Validierung zu verstehen. Von einfacher Syntaxprüfung bis zu modernen datengetriebenen Ansätzen bieten verschiedene Validierungsmethoden unterschiedliche Genauigkeits- und Zuverlässigkeitsgrade.

Wenn wir von „Email Authentication“ sprechen, beziehen wir uns auf eine Technik, die dem Empfänger einer Nachricht ein gewisses Maß an Sicherheit geben soll, dass die Nachricht tatsächlich vom angegebenen Absender stammt. Die Idee ist, ein gewisses Maß an Schutz gegen betrügerische E-Mails, wie Phishing und Spoofing zu erreichen, die das Vertrauen des Empfängers beim Erhalt von E-Mails untergraben könnten. Für Organisationen, die eine Nachrichtenverschlüsselung auf Nachrichtenniveau über die Authentifizierung hinaus benötigen, bietet S/MIME End-to-End-Sicherheit, wobei die automatisierte Sammlung öffentlicher Empfängerschlüssel die Implementierung skalierbarer macht. Das Versenden authentifizierter E-Mails bedeutet jedoch nicht, dass die E-Mail eine gute oder erwünschte E-Mail ist; es bedeutet lediglich, dass eine Reputation für die authentifizierte Partei zuverlässig etabliert und in Entscheidungen zur E-Mail-Akzeptanz und -Platzierung verwendet werden kann.

Es gibt heute zwei Hauptformen der E-Mail-Authentifizierung—Sender Policy Framework (SPF) und DomainKeys Identified Mail (DKIM). In diesem Blogpost werde ich erklären, was SPF ist und wie es funktioniert.

SPF ist nicht narrensicher

Obwohl es ein relativ unkomplizierter Weg zu sein scheint, E-Mails zu authentifizieren, ist SPF anfällig für Ausfälle in Form von Fehlalarmen. Diese Ausfälle können häufiger auftreten, als es vielen recht ist.

Hier sind zwei gängige Szenarien, in denen vollkommen legitime E-Mails die SPF-Validierung nicht bestehen und daher als betrügerisch erscheinen können:

  • Automatisches Weiterleiten, bei dem eine Nachricht, die an jsmith@alumni.university.edu gesendet wurde, an ein Postfach weitergeleitet wird, das so eingestellt ist, dass alle E-Mails automatisch an jsmith@isp.com weitergeleitet werden

  • Mailinglisten, bei denen E-Mails, die an talk-about-stuff@listserv.foo.com gesendet werden, „explodiert“ und an jeden Abonnenten gesendet werden

In beiden Fällen, wenn der Return-Path unverändert von seinem Original bleibt, könnten die E-Mails die SPF-Prüfung nicht bestehen (abhängig von dem Modifikator, der mit dem ‚all‘-Mechanismus verwendet wird). Dies liegt daran, dass sie von einem Zwischenserver an ihr endgültiges Ziel gelangen, nicht von dem ursprünglichen, und dieser Zwischenserver wahrscheinlich nicht im SPF-Eintrag der Domäne enthalten ist. Eine Technik namens „Sender Rewriting Scheme“ oder „SRS“ kann dieses Risiko mindern, und einige größere Seiten haben es eingeführt, aber es ist nicht universell.

Obwohl es ein relativ unkomplizierter Weg zu sein scheint, E-Mails zu authentifizieren, ist SPF anfällig für Ausfälle in Form von Fehlalarmen. Diese Ausfälle können häufiger auftreten, als es vielen recht ist.

Hier sind zwei gängige Szenarien, in denen vollkommen legitime E-Mails die SPF-Validierung nicht bestehen und daher als betrügerisch erscheinen können:

  • Automatisches Weiterleiten, bei dem eine Nachricht, die an jsmith@alumni.university.edu gesendet wurde, an ein Postfach weitergeleitet wird, das so eingestellt ist, dass alle E-Mails automatisch an jsmith@isp.com weitergeleitet werden

  • Mailinglisten, bei denen E-Mails, die an talk-about-stuff@listserv.foo.com gesendet werden, „explodiert“ und an jeden Abonnenten gesendet werden

In beiden Fällen, wenn der Return-Path unverändert von seinem Original bleibt, könnten die E-Mails die SPF-Prüfung nicht bestehen (abhängig von dem Modifikator, der mit dem ‚all‘-Mechanismus verwendet wird). Dies liegt daran, dass sie von einem Zwischenserver an ihr endgültiges Ziel gelangen, nicht von dem ursprünglichen, und dieser Zwischenserver wahrscheinlich nicht im SPF-Eintrag der Domäne enthalten ist. Eine Technik namens „Sender Rewriting Scheme“ oder „SRS“ kann dieses Risiko mindern, und einige größere Seiten haben es eingeführt, aber es ist nicht universell.

Obwohl es ein relativ unkomplizierter Weg zu sein scheint, E-Mails zu authentifizieren, ist SPF anfällig für Ausfälle in Form von Fehlalarmen. Diese Ausfälle können häufiger auftreten, als es vielen recht ist.

Hier sind zwei gängige Szenarien, in denen vollkommen legitime E-Mails die SPF-Validierung nicht bestehen und daher als betrügerisch erscheinen können:

  • Automatisches Weiterleiten, bei dem eine Nachricht, die an jsmith@alumni.university.edu gesendet wurde, an ein Postfach weitergeleitet wird, das so eingestellt ist, dass alle E-Mails automatisch an jsmith@isp.com weitergeleitet werden

  • Mailinglisten, bei denen E-Mails, die an talk-about-stuff@listserv.foo.com gesendet werden, „explodiert“ und an jeden Abonnenten gesendet werden

In beiden Fällen, wenn der Return-Path unverändert von seinem Original bleibt, könnten die E-Mails die SPF-Prüfung nicht bestehen (abhängig von dem Modifikator, der mit dem ‚all‘-Mechanismus verwendet wird). Dies liegt daran, dass sie von einem Zwischenserver an ihr endgültiges Ziel gelangen, nicht von dem ursprünglichen, und dieser Zwischenserver wahrscheinlich nicht im SPF-Eintrag der Domäne enthalten ist. Eine Technik namens „Sender Rewriting Scheme“ oder „SRS“ kann dieses Risiko mindern, und einige größere Seiten haben es eingeführt, aber es ist nicht universell.

SPF Übersicht

Sender Policy Framework (SPF), um RFC 7208 zu paraphrasieren, ist ein Protokoll, das einer Organisation nicht nur erlaubt, Hosts und Netzwerke zu autorisieren, ihre Domainnamen beim Versenden von E-Mails zu verwenden, sondern auch eine Möglichkeit bietet, wie ein empfangender Host diese Autorisierung überprüfen kann.

Wenn Sie diesen Beitrag fertig gelesen haben, hoffe ich, dass Sie Folgendes gelernt haben:

  • SPF ist ein „pfadbasiertes“ Authentifizierungssystem.

  • SPF-Richtlinien werden in DNS TXT-Einträgen deklariert.

  • Die Validierung ist an die Return-Path-Domain (was wir hier bei SparkPost die „Bounce-Domain“ nennen) oder die HELO-Domain gebunden.

  • Die Validierung kann früh in der SMTP-Transaktion durchgeführt werden, daher ist es eine gute Überprüfung, um nicht authentifizierte Mails schnell abzulehnen.

  • Es ist anfällig für einen relativ hohen Prozentsatz an falschen Negativen.

Sender Policy Framework (SPF), um RFC 7208 zu paraphrasieren, ist ein Protokoll, das einer Organisation nicht nur erlaubt, Hosts und Netzwerke zu autorisieren, ihre Domainnamen beim Versenden von E-Mails zu verwenden, sondern auch eine Möglichkeit bietet, wie ein empfangender Host diese Autorisierung überprüfen kann.

Wenn Sie diesen Beitrag fertig gelesen haben, hoffe ich, dass Sie Folgendes gelernt haben:

  • SPF ist ein „pfadbasiertes“ Authentifizierungssystem.

  • SPF-Richtlinien werden in DNS TXT-Einträgen deklariert.

  • Die Validierung ist an die Return-Path-Domain (was wir hier bei SparkPost die „Bounce-Domain“ nennen) oder die HELO-Domain gebunden.

  • Die Validierung kann früh in der SMTP-Transaktion durchgeführt werden, daher ist es eine gute Überprüfung, um nicht authentifizierte Mails schnell abzulehnen.

  • Es ist anfällig für einen relativ hohen Prozentsatz an falschen Negativen.

Sender Policy Framework (SPF), um RFC 7208 zu paraphrasieren, ist ein Protokoll, das einer Organisation nicht nur erlaubt, Hosts und Netzwerke zu autorisieren, ihre Domainnamen beim Versenden von E-Mails zu verwenden, sondern auch eine Möglichkeit bietet, wie ein empfangender Host diese Autorisierung überprüfen kann.

Wenn Sie diesen Beitrag fertig gelesen haben, hoffe ich, dass Sie Folgendes gelernt haben:

  • SPF ist ein „pfadbasiertes“ Authentifizierungssystem.

  • SPF-Richtlinien werden in DNS TXT-Einträgen deklariert.

  • Die Validierung ist an die Return-Path-Domain (was wir hier bei SparkPost die „Bounce-Domain“ nennen) oder die HELO-Domain gebunden.

  • Die Validierung kann früh in der SMTP-Transaktion durchgeführt werden, daher ist es eine gute Überprüfung, um nicht authentifizierte Mails schnell abzulehnen.

  • Es ist anfällig für einen relativ hohen Prozentsatz an falschen Negativen.

“Pfadbasierte” Authentication

SPF wird als ein pfadbasiertes Authentifizierungssystem betrachtet, da es ausschließlich mit dem Pfad verbunden ist, den die Nachricht von ihrem Ursprung bis zu ihrem Ziel genommen hat. Wenn ein sendender Server eine SMTP-Transaktion mit einem empfangenden Server initiiert, bestimmt der empfangende Server, ob der sendende Server autorisiert ist, diese Nachricht zu senden, basierend auf der SPF-Richtlinie der Domain. Es ist ausschließlich eine Entscheidung basierend darauf, woher die Nachricht kommt, ohne jeglichen Bezug zum Inhalt der Nachricht.

SPF wird als ein pfadbasiertes Authentifizierungssystem betrachtet, da es ausschließlich mit dem Pfad verbunden ist, den die Nachricht von ihrem Ursprung bis zu ihrem Ziel genommen hat. Wenn ein sendender Server eine SMTP-Transaktion mit einem empfangenden Server initiiert, bestimmt der empfangende Server, ob der sendende Server autorisiert ist, diese Nachricht zu senden, basierend auf der SPF-Richtlinie der Domain. Es ist ausschließlich eine Entscheidung basierend darauf, woher die Nachricht kommt, ohne jeglichen Bezug zum Inhalt der Nachricht.

SPF wird als ein pfadbasiertes Authentifizierungssystem betrachtet, da es ausschließlich mit dem Pfad verbunden ist, den die Nachricht von ihrem Ursprung bis zu ihrem Ziel genommen hat. Wenn ein sendender Server eine SMTP-Transaktion mit einem empfangenden Server initiiert, bestimmt der empfangende Server, ob der sendende Server autorisiert ist, diese Nachricht zu senden, basierend auf der SPF-Richtlinie der Domain. Es ist ausschließlich eine Entscheidung basierend darauf, woher die Nachricht kommt, ohne jeglichen Bezug zum Inhalt der Nachricht.

Deklaration einer SPF-Richtlinie

Ein SPF-Policy-Eintrag einer Domain ist lediglich ein speziell formatiertes DNS TXT-Eintrag, der üblicherweise einen oder mehrere der folgenden „Mechanismen“ enthält:

  • v=spf1 – Erforderliches erstes Token, um anzuzeigen, dass der TXT-Eintrag ein SPF-Eintrag ist (eine Domain kann mehrere TXT-Einträge haben)

  • ipv4, ipv6 – Wird verwendet, um IP-Adressen und Netzwerke anzugeben, die befugt sind, E-Mails für die Domain zu senden

  • a – Wenn die sendende Domain einen DNS-„A“-Eintrag hat, der zur sendenden IP aufgelöst wird, ist die IP zugelassen

  • mx – Wenn die sendende IP auch einer der MX-Einträge der sendenden Domain ist, ist die IP zugelassen

  • all – Erforderliches letztes Token, immer modifiziert:

    • -all – Nur was hier aufgelistet wird, darf bestehen; Fehler ablehnen.

    • ~all – Was hier nicht aufgelistet ist, sollte weich fehlschlagen; akzeptieren, aber notieren.

    • ?all – Unsicher, ob Dinge, die hier nicht aufgelistet sind, passieren sollen.

    • +all – Wir denken, dass SPF nutzlos ist; alles zulassen.

Andere, weniger häufige Mechanismen, die noch weit verbreitet sind, sind:

  • include – Wird verwendet, wenn eine Domain nicht nur ihre eigenen Server hat, sondern auch die Server eines anderen nutzt. Muss sorgfältig verwendet werden. Jedes Include ist eine weitere DNS-Abfrage, und SPF-Einträge dürfen nicht mehr als zehn DNS-Abfragen zur Auflösung erfordern.

  • redirect – Wenn Domain A und Domain B demselben Unternehmen gehören und dieselbe Infrastruktur nutzen. Die Eigentümer möchten typischerweise nur eine Kopie des SPF-Eintrags für beide behalten und B so konfigurieren, dass Anfragen an A weitergeleitet werden.

  • exists – Wenn eine Domain viele kleine, nicht zusammenhängende Netzwerkblöcke hat, kann dieser Mechanismus verwendet werden, um seinen SPF-Eintrag anzugeben, anstatt alle aufzulisten. Nützlich, um innerhalb des Größenlimits (512 Bytes) für DNS-Antworten zu bleiben.

Eine Anmerkung zum „ptr“-Mechanismus

Ein letzter Mechanismus, „ptr“, bestand in der ursprünglichen Spezifikation für SPF, aber wurde in der aktuellen Spezifikation als „nicht verwenden“ deklariert. Der ptr-Mechanismus wurde verwendet, um zu deklarieren, dass, wenn die sendende IP-Adresse einen DNS-PTR-Eintrag hatte, der auf den fraglichen Domainnamen auflöste, diese IP-Adresse autorisiert war, E-Mails für die Domain zu senden.

Der aktuelle Status dieses Mechanismus ist, dass er nicht verwendet werden sollte. Dennoch müssen Websites, die SPF-Validierung durchführen, ihn als gültig akzeptieren.


Mechanismus

Was es tut

Hinweise / Nutzungshinweise

v=spf1

Erklärt, dass der TXT-Eintrag eine SPF-Policy ist

Erforderliches erstes Token

ipv4 / ipv6

Autorisiert bestimmte IPs oder CIDR-Blöcke

Die expliziteste und zuverlässigste Autorisierungsmethode

a

Autorisiert IPs, die mit dem A-Eintrag der Domain übereinstimmen

Gut für einfache Infrastrukturen

mx

Autorisiert IPs, die in den MX-Einträgen der Domain aufgeführt sind

Nützlich, wenn MX-Server auch E-Mails senden

include

Importiert die SPF-Policy einer anderen Domain

Zählt zum 10-DNS-Lookup-Limit; sparsam verwenden

redirect

Delegiert SPF-Policy an eine andere Domain

Wird verwendet, wenn mehrere Domains eine SPF-Definition teilen

exists

Autorisiert über eine benutzerdefinierte DNS-Lookup-Regel

Nützlich für große, fragmentierte IP-Bereiche; Validator muss es unterstützen

ptr

Autorisiert basierend auf der Rückwärts-DNS-Zuordnung

Veraltet („nicht verwenden“), muss aber dennoch von Validatoren akzeptiert werden

all

Definiert, wie alles, was nicht explizit erlaubt ist, behandelt wird

Varianten: -all ablehnen, ~all weich fehlschlagen, ?all neutral, +all alles erlauben (nicht empfohlen)

Ein SPF-Policy-Eintrag einer Domain ist lediglich ein speziell formatiertes DNS TXT-Eintrag, der üblicherweise einen oder mehrere der folgenden „Mechanismen“ enthält:

  • v=spf1 – Erforderliches erstes Token, um anzuzeigen, dass der TXT-Eintrag ein SPF-Eintrag ist (eine Domain kann mehrere TXT-Einträge haben)

  • ipv4, ipv6 – Wird verwendet, um IP-Adressen und Netzwerke anzugeben, die befugt sind, E-Mails für die Domain zu senden

  • a – Wenn die sendende Domain einen DNS-„A“-Eintrag hat, der zur sendenden IP aufgelöst wird, ist die IP zugelassen

  • mx – Wenn die sendende IP auch einer der MX-Einträge der sendenden Domain ist, ist die IP zugelassen

  • all – Erforderliches letztes Token, immer modifiziert:

    • -all – Nur was hier aufgelistet wird, darf bestehen; Fehler ablehnen.

    • ~all – Was hier nicht aufgelistet ist, sollte weich fehlschlagen; akzeptieren, aber notieren.

    • ?all – Unsicher, ob Dinge, die hier nicht aufgelistet sind, passieren sollen.

    • +all – Wir denken, dass SPF nutzlos ist; alles zulassen.

Andere, weniger häufige Mechanismen, die noch weit verbreitet sind, sind:

  • include – Wird verwendet, wenn eine Domain nicht nur ihre eigenen Server hat, sondern auch die Server eines anderen nutzt. Muss sorgfältig verwendet werden. Jedes Include ist eine weitere DNS-Abfrage, und SPF-Einträge dürfen nicht mehr als zehn DNS-Abfragen zur Auflösung erfordern.

  • redirect – Wenn Domain A und Domain B demselben Unternehmen gehören und dieselbe Infrastruktur nutzen. Die Eigentümer möchten typischerweise nur eine Kopie des SPF-Eintrags für beide behalten und B so konfigurieren, dass Anfragen an A weitergeleitet werden.

  • exists – Wenn eine Domain viele kleine, nicht zusammenhängende Netzwerkblöcke hat, kann dieser Mechanismus verwendet werden, um seinen SPF-Eintrag anzugeben, anstatt alle aufzulisten. Nützlich, um innerhalb des Größenlimits (512 Bytes) für DNS-Antworten zu bleiben.

Eine Anmerkung zum „ptr“-Mechanismus

Ein letzter Mechanismus, „ptr“, bestand in der ursprünglichen Spezifikation für SPF, aber wurde in der aktuellen Spezifikation als „nicht verwenden“ deklariert. Der ptr-Mechanismus wurde verwendet, um zu deklarieren, dass, wenn die sendende IP-Adresse einen DNS-PTR-Eintrag hatte, der auf den fraglichen Domainnamen auflöste, diese IP-Adresse autorisiert war, E-Mails für die Domain zu senden.

Der aktuelle Status dieses Mechanismus ist, dass er nicht verwendet werden sollte. Dennoch müssen Websites, die SPF-Validierung durchführen, ihn als gültig akzeptieren.


Mechanismus

Was es tut

Hinweise / Nutzungshinweise

v=spf1

Erklärt, dass der TXT-Eintrag eine SPF-Policy ist

Erforderliches erstes Token

ipv4 / ipv6

Autorisiert bestimmte IPs oder CIDR-Blöcke

Die expliziteste und zuverlässigste Autorisierungsmethode

a

Autorisiert IPs, die mit dem A-Eintrag der Domain übereinstimmen

Gut für einfache Infrastrukturen

mx

Autorisiert IPs, die in den MX-Einträgen der Domain aufgeführt sind

Nützlich, wenn MX-Server auch E-Mails senden

include

Importiert die SPF-Policy einer anderen Domain

Zählt zum 10-DNS-Lookup-Limit; sparsam verwenden

redirect

Delegiert SPF-Policy an eine andere Domain

Wird verwendet, wenn mehrere Domains eine SPF-Definition teilen

exists

Autorisiert über eine benutzerdefinierte DNS-Lookup-Regel

Nützlich für große, fragmentierte IP-Bereiche; Validator muss es unterstützen

ptr

Autorisiert basierend auf der Rückwärts-DNS-Zuordnung

Veraltet („nicht verwenden“), muss aber dennoch von Validatoren akzeptiert werden

all

Definiert, wie alles, was nicht explizit erlaubt ist, behandelt wird

Varianten: -all ablehnen, ~all weich fehlschlagen, ?all neutral, +all alles erlauben (nicht empfohlen)

Ein SPF-Policy-Eintrag einer Domain ist lediglich ein speziell formatiertes DNS TXT-Eintrag, der üblicherweise einen oder mehrere der folgenden „Mechanismen“ enthält:

  • v=spf1 – Erforderliches erstes Token, um anzuzeigen, dass der TXT-Eintrag ein SPF-Eintrag ist (eine Domain kann mehrere TXT-Einträge haben)

  • ipv4, ipv6 – Wird verwendet, um IP-Adressen und Netzwerke anzugeben, die befugt sind, E-Mails für die Domain zu senden

  • a – Wenn die sendende Domain einen DNS-„A“-Eintrag hat, der zur sendenden IP aufgelöst wird, ist die IP zugelassen

  • mx – Wenn die sendende IP auch einer der MX-Einträge der sendenden Domain ist, ist die IP zugelassen

  • all – Erforderliches letztes Token, immer modifiziert:

    • -all – Nur was hier aufgelistet wird, darf bestehen; Fehler ablehnen.

    • ~all – Was hier nicht aufgelistet ist, sollte weich fehlschlagen; akzeptieren, aber notieren.

    • ?all – Unsicher, ob Dinge, die hier nicht aufgelistet sind, passieren sollen.

    • +all – Wir denken, dass SPF nutzlos ist; alles zulassen.

Andere, weniger häufige Mechanismen, die noch weit verbreitet sind, sind:

  • include – Wird verwendet, wenn eine Domain nicht nur ihre eigenen Server hat, sondern auch die Server eines anderen nutzt. Muss sorgfältig verwendet werden. Jedes Include ist eine weitere DNS-Abfrage, und SPF-Einträge dürfen nicht mehr als zehn DNS-Abfragen zur Auflösung erfordern.

  • redirect – Wenn Domain A und Domain B demselben Unternehmen gehören und dieselbe Infrastruktur nutzen. Die Eigentümer möchten typischerweise nur eine Kopie des SPF-Eintrags für beide behalten und B so konfigurieren, dass Anfragen an A weitergeleitet werden.

  • exists – Wenn eine Domain viele kleine, nicht zusammenhängende Netzwerkblöcke hat, kann dieser Mechanismus verwendet werden, um seinen SPF-Eintrag anzugeben, anstatt alle aufzulisten. Nützlich, um innerhalb des Größenlimits (512 Bytes) für DNS-Antworten zu bleiben.

Eine Anmerkung zum „ptr“-Mechanismus

Ein letzter Mechanismus, „ptr“, bestand in der ursprünglichen Spezifikation für SPF, aber wurde in der aktuellen Spezifikation als „nicht verwenden“ deklariert. Der ptr-Mechanismus wurde verwendet, um zu deklarieren, dass, wenn die sendende IP-Adresse einen DNS-PTR-Eintrag hatte, der auf den fraglichen Domainnamen auflöste, diese IP-Adresse autorisiert war, E-Mails für die Domain zu senden.

Der aktuelle Status dieses Mechanismus ist, dass er nicht verwendet werden sollte. Dennoch müssen Websites, die SPF-Validierung durchführen, ihn als gültig akzeptieren.


Mechanismus

Was es tut

Hinweise / Nutzungshinweise

v=spf1

Erklärt, dass der TXT-Eintrag eine SPF-Policy ist

Erforderliches erstes Token

ipv4 / ipv6

Autorisiert bestimmte IPs oder CIDR-Blöcke

Die expliziteste und zuverlässigste Autorisierungsmethode

a

Autorisiert IPs, die mit dem A-Eintrag der Domain übereinstimmen

Gut für einfache Infrastrukturen

mx

Autorisiert IPs, die in den MX-Einträgen der Domain aufgeführt sind

Nützlich, wenn MX-Server auch E-Mails senden

include

Importiert die SPF-Policy einer anderen Domain

Zählt zum 10-DNS-Lookup-Limit; sparsam verwenden

redirect

Delegiert SPF-Policy an eine andere Domain

Wird verwendet, wenn mehrere Domains eine SPF-Definition teilen

exists

Autorisiert über eine benutzerdefinierte DNS-Lookup-Regel

Nützlich für große, fragmentierte IP-Bereiche; Validator muss es unterstützen

ptr

Autorisiert basierend auf der Rückwärts-DNS-Zuordnung

Veraltet („nicht verwenden“), muss aber dennoch von Validatoren akzeptiert werden

all

Definiert, wie alles, was nicht explizit erlaubt ist, behandelt wird

Varianten: -all ablehnen, ~all weich fehlschlagen, ?all neutral, +all alles erlauben (nicht empfohlen)

Einige Beispiel SPF Records

Hier sind einige Beispielaufzeichnungen und deren Bedeutungen. Dieses Beispiel zeigt RFC 1918-Adressen, aber ich erkenne, dass solche Adressen niemals in echten SPF-Einträgen erscheinen werden.

  • MX-Eintrag, eine IP-Adresse, ein IP-Netzwerk, Softfail für alles andere:

    • “v=spf1 mx ipv4:10.0.0.1 ipv4:192.168.24.0/24 ~all”

  • A-Eintrag, zwei IP-Netzwerke, alles andere ablehnen:

    • “v=spf1 a ipv4:10.0.3.0/23 ipv4:192.168.55.0/26 -all”

  • Wir senden keine E-Mails:

    • “v=spf1 -all”

  • Wir halten SPF für dumm:

    • “v=spf1 +all”

  • Der SPF-Eintrag für die Domain sparkpostmail.com (Redirect-Mechanismus verwendet)

    • “v=spf1 redirect=_spf.sparkpostmail.com”

  • Der SPF-Eintrag für _spf.sparkpostmail.com (exists- und ptr-Mechanismen verwendet):

    • “v=spf1 exists:%{i}._spf.sparkpostmail.com ptr:sparkpostmail.com ptr:spmta.com ptr:flyingenvelope.com ~all”

Bei SparkPost verwenden wir derzeit den ptr-Mechanismus in unserem SPF-Eintrag. Wir haben festgestellt, dass dies aufgrund fehlender universeller Unterstützung zur Validierung des exists-Mechanismus erforderlich ist. Und bisher haben wir keine SPF-Fehler festgestellt, die durch die Verwendung des ptr-Mechanismus entstehen.

Hier sind einige Beispielaufzeichnungen und deren Bedeutungen. Dieses Beispiel zeigt RFC 1918-Adressen, aber ich erkenne, dass solche Adressen niemals in echten SPF-Einträgen erscheinen werden.

  • MX-Eintrag, eine IP-Adresse, ein IP-Netzwerk, Softfail für alles andere:

    • “v=spf1 mx ipv4:10.0.0.1 ipv4:192.168.24.0/24 ~all”

  • A-Eintrag, zwei IP-Netzwerke, alles andere ablehnen:

    • “v=spf1 a ipv4:10.0.3.0/23 ipv4:192.168.55.0/26 -all”

  • Wir senden keine E-Mails:

    • “v=spf1 -all”

  • Wir halten SPF für dumm:

    • “v=spf1 +all”

  • Der SPF-Eintrag für die Domain sparkpostmail.com (Redirect-Mechanismus verwendet)

    • “v=spf1 redirect=_spf.sparkpostmail.com”

  • Der SPF-Eintrag für _spf.sparkpostmail.com (exists- und ptr-Mechanismen verwendet):

    • “v=spf1 exists:%{i}._spf.sparkpostmail.com ptr:sparkpostmail.com ptr:spmta.com ptr:flyingenvelope.com ~all”

Bei SparkPost verwenden wir derzeit den ptr-Mechanismus in unserem SPF-Eintrag. Wir haben festgestellt, dass dies aufgrund fehlender universeller Unterstützung zur Validierung des exists-Mechanismus erforderlich ist. Und bisher haben wir keine SPF-Fehler festgestellt, die durch die Verwendung des ptr-Mechanismus entstehen.

Hier sind einige Beispielaufzeichnungen und deren Bedeutungen. Dieses Beispiel zeigt RFC 1918-Adressen, aber ich erkenne, dass solche Adressen niemals in echten SPF-Einträgen erscheinen werden.

  • MX-Eintrag, eine IP-Adresse, ein IP-Netzwerk, Softfail für alles andere:

    • “v=spf1 mx ipv4:10.0.0.1 ipv4:192.168.24.0/24 ~all”

  • A-Eintrag, zwei IP-Netzwerke, alles andere ablehnen:

    • “v=spf1 a ipv4:10.0.3.0/23 ipv4:192.168.55.0/26 -all”

  • Wir senden keine E-Mails:

    • “v=spf1 -all”

  • Wir halten SPF für dumm:

    • “v=spf1 +all”

  • Der SPF-Eintrag für die Domain sparkpostmail.com (Redirect-Mechanismus verwendet)

    • “v=spf1 redirect=_spf.sparkpostmail.com”

  • Der SPF-Eintrag für _spf.sparkpostmail.com (exists- und ptr-Mechanismen verwendet):

    • “v=spf1 exists:%{i}._spf.sparkpostmail.com ptr:sparkpostmail.com ptr:spmta.com ptr:flyingenvelope.com ~all”

Bei SparkPost verwenden wir derzeit den ptr-Mechanismus in unserem SPF-Eintrag. Wir haben festgestellt, dass dies aufgrund fehlender universeller Unterstützung zur Validierung des exists-Mechanismus erforderlich ist. Und bisher haben wir keine SPF-Fehler festgestellt, die durch die Verwendung des ptr-Mechanismus entstehen.

Wie funktioniert SPF Authentication?

So sieht ein typischer SMTP-Transaktion aus, wenn SPF im Spiel ist:

  • Der sendende Server (Client) verbindet sich mit dem empfangenden Server

  • Der empfangende Server notiert die IP-Adresse des verbindenden Clients

  • Sie tauschen Begrüßungen aus, einschließlich des HELO-Hostnamens des Clients

  • Der Client gibt den SMTP MAIL FROM-Befehl aus

Der empfangende Server kann nun den SPF-Eintrag entweder für die MAIL FROM-Domain oder den HELO-Hostnamen abfragen, um festzustellen, ob die verbindende IP berechtigt ist, E-Mails für die Domain zu senden, und entscheiden, ob die Nachricht akzeptiert wird oder nicht.

So sieht ein typischer SMTP-Transaktion aus, wenn SPF im Spiel ist:

  • Der sendende Server (Client) verbindet sich mit dem empfangenden Server

  • Der empfangende Server notiert die IP-Adresse des verbindenden Clients

  • Sie tauschen Begrüßungen aus, einschließlich des HELO-Hostnamens des Clients

  • Der Client gibt den SMTP MAIL FROM-Befehl aus

Der empfangende Server kann nun den SPF-Eintrag entweder für die MAIL FROM-Domain oder den HELO-Hostnamen abfragen, um festzustellen, ob die verbindende IP berechtigt ist, E-Mails für die Domain zu senden, und entscheiden, ob die Nachricht akzeptiert wird oder nicht.

So sieht ein typischer SMTP-Transaktion aus, wenn SPF im Spiel ist:

  • Der sendende Server (Client) verbindet sich mit dem empfangenden Server

  • Der empfangende Server notiert die IP-Adresse des verbindenden Clients

  • Sie tauschen Begrüßungen aus, einschließlich des HELO-Hostnamens des Clients

  • Der Client gibt den SMTP MAIL FROM-Befehl aus

Der empfangende Server kann nun den SPF-Eintrag entweder für die MAIL FROM-Domain oder den HELO-Hostnamen abfragen, um festzustellen, ob die verbindende IP berechtigt ist, E-Mails für die Domain zu senden, und entscheiden, ob die Nachricht akzeptiert wird oder nicht.

MAIL FROM oder HELO – Welches sollte geprüft werden?

Die SPF-Spezifikation legt fest, dass empfangende Sites SPF für die MAIL FROM-Domain überprüfen MÜSSEN und EMPFIEHLEN, sie für den HELO-Hostname zu überprüfen. In der Praxis erfolgt die Überprüfung nur auf der MAIL FROM-Domain, außer vielleicht in den Fällen, in denen die MAIL FROM-Adresse der NULL-Absender (d.h. „<>“) ist, in welchem Fall der HELO-Hostname die einzige verfügbare Identität ist.

Die SPF-Spezifikation legt fest, dass empfangende Sites SPF für die MAIL FROM-Domain überprüfen MÜSSEN und EMPFIEHLEN, sie für den HELO-Hostname zu überprüfen. In der Praxis erfolgt die Überprüfung nur auf der MAIL FROM-Domain, außer vielleicht in den Fällen, in denen die MAIL FROM-Adresse der NULL-Absender (d.h. „<>“) ist, in welchem Fall der HELO-Hostname die einzige verfügbare Identität ist.

Die SPF-Spezifikation legt fest, dass empfangende Sites SPF für die MAIL FROM-Domain überprüfen MÜSSEN und EMPFIEHLEN, sie für den HELO-Hostname zu überprüfen. In der Praxis erfolgt die Überprüfung nur auf der MAIL FROM-Domain, außer vielleicht in den Fällen, in denen die MAIL FROM-Adresse der NULL-Absender (d.h. „<>“) ist, in welchem Fall der HELO-Hostname die einzige verfügbare Identität ist.

Andere Neuigkeiten

Mehr lesen aus dieser Kategorie

A person is standing at a desk while typing on a laptop.

Die komplette AI-native Plattform, die mit Ihrem Business skalierbar ist.

A person is standing at a desk while typing on a laptop.

Die komplette AI-native Plattform, die mit Ihrem Business skalierbar ist.