1. Home
  2. E-Mail
  3. SPF-Record erstellen
  1. Home
  2. Domain & DNS
  3. SPF-Record erstellen

SPF-Record erstellen

SPF ist die Abkürzung von Sender Policy Framework und definiert eine DNS basierte Schutzfunktion gegen den missbräuchlichen E-Mail Versand über eine Domain.

SPF hat nichts mit dem SPAM aufkommen in Ihrem Postfach zu tun. Es sorgt nur dafür, dass Ihre E-Mails mit einer höheren Wahrscheinlichkeit beim Empfänger ankommen und nicht im SPAM-Ordner landen.

Das Problem beim E-Mail Versand ist, dass jedes Skript oder auch Programm sehr einfach E-Mails mit einem gefälschten Absender versenden kann. Als Beispiel kann man mit einem einfachen PHP Skript, beliebig viele E-Mails versenden und sich dabei als z.B. facebook.com ausgeben.

Da ein E-Mail Server (MTA – Mail Transfer Agent) anhand der eigentlichen E-Mail nicht überprüfen kann ob eine E-Mail auch wirklich vom Absender stammt, wurde das sog. SPF Verfahren entwickelt, welches es ermöglicht zu prüfen ob ein E-Mail Server auch wirklich E-Mails von z.B. facebook.com versenden darf.

Dazu wird im DNS System der jeweiligen Domain ein SPF-Record erstellt, der eine genaue Anweisung enthält, welche IP-Adressen E-Mails für die jeweilige Domain versenden dürfen und wie im fehlerfall mit der E-Mail umzugehen ist.
Während dem empfang einer E-Mail, prüft der MTA ob es einen entsprechenden DNS-Record (z.B. _spf.example.net) gibt und gleicht die darin enthaltene IP-Adresse mit der aktuellen Verbindung ab. Entspricht die IP-Adresse des Absende-MTAs nicht mit dem SPF-Record überein entscheidet die Direktive und der Qualifikator (z.B. ~Softfail) über die weitere Behandlung der E-Mail.

Ein SPF-Record ist für das funktionieren von E-Mails nicht zwingend erforderlich.
Es erhöht aber die Zustellungs-Wahrscheinlichkeit bei den großen E-Mail Providern wie Hotmail, Google, etc. und erhöht die Sicherheit im Umgang mit kritischen E-Mails.

Ein SPF-Record wird als TXT-Record zur DNS Zone einer Domain hinzugefügt. Dieser wird mit der Subdomain _spf angelegt (z.B. _spf.example.net).
Der Aufbau des SPF-Records erfolgt mit einer oder mehreren Direktiven. Jeder dieser Ausdrücke wird durch ein Leerzeichen getrennt.

Beispiel SPF-Record:
v=spf1 a mx ~all

SPF-Record den TCRserver.de für alle Kunden automatisch erstellt:
v=spf1 a mx include:_spf.tcrserver.de ~all

Übersicht über den Aufbau eines SPF-Records

Als erstes eine Tabelle der Direktiven mit denen ein Absender MTA beschrieben werden kann und deren (vereinfacht erklärten) Funktion:

aEin A- (IPv4) oder AAAA-Record (Ipv6) der aktuellen (oder explizit angegeben) Domain. Dadurch wird z.B. einem Webserver erlaubt über ein Kontaktformular E-Mails zu versenden. Achtung: Zusammen mit DKIM und DMARC kann und wird dies zu Problemen führen. Deswegen E-Mails immer über einen Mailserver (SMTP Plugin) verschicken!
mxEin MX-Record der aktuellen (oder explizit angegeben) Domain.
ip4Eine oder mehrere explizit angegeben IPv4 Adressen.
ip6Eine oder mehrere explizit angegeben IPv6 Adressen.
includeBindet den SPF-Record einer anderen Domain mit ein. Nützlich für Newsletter oder Helpdesk Tools wie MailChimp, ZenDesk, etc.

Die nachfolgende Tabelle enthält die möglichen Anweisungen wie mit einer E-Mail umgegangen wird.

+all(Pass): Diese Anweisung gibt an, dass die IP-Adresse oder der Mechanismus als „bestätigt“ angesehen wird und E-Mails im Namen der Absenderdomain senden darf. Wenn die SPF-Überprüfung eine Übereinstimmung mit einem +-Mechanismus ergibt, wird die E-Mail normalerweise zugestellt.
-all(Fail): Gibt an, dass die IP-Adresse oder der Mechanismus nicht als autorisiert betrachtet wird, E-Mails im Namen der Absenderdomain zu senden. Wenn die SPF-Überprüfung eine Nichtübereinstimmung mit einem --Mechanismus ergibt, könnte die E-Mail als Spam behandelt oder abgelehnt werden.
~all(SoftFail – Empfohlene Default Einstellung): Hier signalisiert die Anweisung, dass die IP-Adresse oder der Mechanismus zwar als „möglicherweise bestätigt“ betrachtet wird, jedoch nicht strikt notwendig ist. E-Mails von solchen Quellen werden normalerweise zugestellt, könnten aber als verdächtig SPAM gekennzeichnet werden.
?all(Neutral): Neutral signalisiert, dass es keine klare Anweisung zur Zustellung oder Ablehnung der E-Mail gegeben wird.
?all wird nur zum Testen verwendet und hat normalerweise keine direkte Auswirkung auf die Zustellung.
Updated on 8. August 2023

Was this article helpful?

Related Articles

Need Support?
Can't find the answer you're looking for?
Contact Support