Domain-Authentifizierung: SPF, DKIM und DMARC

„Ich habe gerade festgestellt, dass einige unserer Mails nicht an unsere Kunden zugestellt werden, weil der empfangende Mailserver sie ablehnt. Wie kann das sein?“

Die MTAs schützen ihre Benutzer und stufen E-Mails von Domains mit geringer Reputation als Spam ein. Wir müssen die Reputation für unsere Maildomain verbessern. Dazu müssen wir Authentifizierungstechniken wie SPF, DKIM und DMARC einrichten. Sie schützen vor Spoofing und Phishing.

Die Absender in E-Mail-Adressen können gefälscht werden. Der From:-Header einer E-Mail ist frei wählbar und jeder kann eine E-Mail senden, die aussieht, als käme sie z.B. von melina@novahealth-solutions.de.´Insbesondere drei DNS-basierte Standards bekämpfen dieses Problem: SPF, DKIM und DMARC

SPF (Sender Policy Framework) ist eine Whitelist im DNS: Nur die dort genannten Server bzw. IP-Adressen oder IP-Adressbereiche dürfen Mails für die betreffende Domain verschicken. Kommt die Mail von woanders, ist sie verdächtig. Dafür wird ein TXT-Eintrag in der DNS-Zone erstellt.

Der Eintrag in der DNS-Zonendatei für novahealth-solutions.de könnte z.B. folgendermaßen aussehen:

@   IN   TXT "v=spf1 ip4:203.0.113.5 include:_spf.novahealth-solutions.de -all"
  • ip4:203.0.113.5: Dieser Server darf E-Mails senden
  • include:_spf.novahealth-solutions.de: definierte IP-Adressen, die im genannten TXT-Eintrag stehen, dürfen ebenfalls senden. Im nächsten Schritt erfolgt daher eine DNS-Abfrage an den TXT-Eintrag _spf.novahealth-solutions.de. Dabei ist _spf lediglich eine Namenskonvention, kein feststehender Name.
  • -all: Alle anderen Server werden abgelehnt (Hard Fail)
  • ~all: Alle anderen werden markiert, aber nicht abgelehnt (Soft Fail)

⚠️ Ein häufiger Fehler: In der Praxis SPF mit ~all statt -all konfigurieren. Soft Fail markiert die E-Mail nur, lehnt sie aber nicht ab und Angreifer können trotzdem gefälschte E-Mails durchbringen. Daher wird ~all nur in der Einführungsphase eingesetzt, wenn noch nicht sicher ist, ob alle IP-Adressen erfasst wurden.

SPF stellt sicher, dass der empfangende MTA prüfen kann, ob die Mail von einer der erlaubten IP-Adressen versendet wurde.

DKIM (DomainKeys Identified Mail) ist eine digitale Signatur: Dein Mailserver unterschreibt ausgehende Mails mit dem privaten Schlüssel (Private Key), indem er den Hashwert über die Nachricht mit dem Private Key verschlüsselt. Der Empfänger prüft die Unterschrift mit einem Public Key, der im DNS hinterlegt ist. So kann sowohl die Authentizität als auch die Integrität der E-Mail geprüft werden. Du hast das Konzept der digitalen Signatur ja bereits im Kursmodul B3 kennengelernt.

Was DKIM beweist:

  • Die E-Mail stammt tatsächlich von einem autorisierten Server der Domain (nur er hat den Private Key)
  • Der Inhalt der E-Mail wurde auf dem Transportweg nicht verändert (Hashwerte stimmen überein)

Dazu wird erneut ein TXT-Eintrag in der betreffenden DNS-Zonendatei der Maildomain (z.B. novahealth-solutions.de) hinterlegt. Er hat z.B. folgenden Inhalt:

mail2026._domainkey IN TXT "v=DKIM1; k=rsa; p=MIIBIjANBgkqh…"

Der DKIM-Eintrag besteht aus folgenden Komponenten:

  • mail2026 – der sogenannte Selector, frei wählbar, muss im E-Mail-Header aufgeführt sein
  • _domainkey – feststehender Bestandteil des DKIM-Eintrags
  • v=DKIM1 – Version
  • k=rsa – Schlüsselalgorithmus
  • p= – Public key

Der E-Mail-Header enthält dann eine Zeile der folgenden Art:

DKIM-Signature: v=1; d=novahealth-solutions.de; s=mail2026; …

Sie ermöglicht es dem empfangenden MTA, den passenden DKIM-Eintrag abzufragen und die E-Mail zu prüfen.

DKIM kann die Authentizität und Integrität einer E-Mail sicherstellen, schützt aber noch nicht vor der Phishing-Technik, dass eine From:-Adresse optisch zur Domain passt, aber technisch aus einer anderen Domain kommt. Dafür braucht es DMARC als Regelwerk, das DKIM (und SPF) mit dem sichtbaren Absender verknüpft. Damit wären wir schon beim Dritten im Bunde.

DMARC (Domain-based Message Authentication, Reporting and Conformance) erstellt eine DNS-basierte Verfahrensrichtlinie und ist eine Anweisung an den Empfänger: Wenn SPF und DKIM nicht passen, dann

  • nimm die E-Mail entweder trotzdem an (none),
  • verschiebe sie in den Spam-Ordner (quarantine) oder
  • lehne sie ab (reject).

Zusätzlich kann der Domaininhaber DMARC-Reports an eine frei wählbare E-Mail-Adresse erhalten, die Informationen über die sendenden Mailserver (z. B. IP-Adressen) und den Erfolg von SPF- und DKIM-Prüfungen enthalten.

  • DMARC schaut auf die beiden zuvor vorgestellten Authentifizierungsverfahren:
    • SPF (kam die Mail von einem erlaubten Server?) und
    • DKIM (hat die Mail eine gültige Signatur?).
  • Entscheidend ist dabei die Ausrichtung (Alignment): Es reicht nicht, dass SPF oder DKIM irgendwie bestehen, sondern sie müssen auch zur sichtbaren Absenderdomain im From: passen. Genau das verhindert viele klassische Spoofing-Mails.

Auch DMARC benötigt einen TXT-Eintrag erstellt. Ein DMARC-DNS-Eintrag für die Domain novahealth-solutions.de sieht z.B. folgendermaßen aus:

_dmarc IN TXT "v=DMARC1; p=reject; rua=mailto:dmarc@novahealth-solutions.de"

Die Einträge haben die folgende Bedeutung:

  • _dmarc – feststehender Name für DMARC-Einträge
  • v=DMARC1 – Version
  • p=reject – Policy, siehe nachfolgende Anmerkung
  • rua=mailto:dmarc@novahealth-solutions.de – Empfängeradresse für aggregierte DMARC-Reports

Die DMARC-Policy sollte im Produktivbetrieb immer auf reject stehen. Nur so erzeugt der DMARC-Eintrag echtes Vertrauen bei den prüfenden Mailservern. Während der Einführungsphase kann sie temporär zunächst auf none, dann auf quarantine gesetzt werden.

DMARC hilft gegen Phishing-Angriffe, bei denen die eigene Domain in der Absender-Adresse genutzt wird, z.B. ihrgewinn@novahealth-solutions.de.

Wogegen DMARC allerdings nicht schützt, ist Phishing unter Verwendung andere Maildomains, z.B. ihrgewinn@novahealth-support.com.

In der folgenden Tabelle findest du noch einmal die drei Schutzmechanismen in der Übersicht:

StandardSchützt vorPrüftDNS-Eintrag
SPFGefälschte Absende-ServerIP-Adresse des sendenden ServersTXT
DKIMManipulierte E-Mail-InhalteDigitale Signatur der E-MailTXT
DMARCBeides + definiert PolicySPF- und DKIM-ErgebnisTXT

Lass uns testen, ob du SPF, DKIM und DMARC auseinanderhalten kannst.

Nach oben scrollen