Um DMARC einzurichten, legst du einen TXT-Record unter _dmarc.deinedomain.de an, etwa v=DMARC1; p=none; rua=mailto:[email protected]. Damit sammelst du zwei bis vier Wochen Berichte, bringst alle Versender auf SPF oder DKIM mit passender Domain und erhöhst dann die Richtlinie auf quarantine und schließlich reject.
Ein DMARC-Record ist in zwei Minuten angelegt. Das Problem ist der Teil danach: Wer gleich mit p=reject startet, merkt am nächsten Morgen, dass die Auftragsbestätigungen aus dem Shop nicht mehr ankommen, weil das Shopsystem nie mit der eigenen Domain signiert hat. Der sichere Weg führt über Stufen und über die Berichte.
Was DMARC prüft
DMARC steht für Domain-based Message Authentication, Reporting and Conformance. Ursprünglich beschrieben in RFC 7489 aus dem Jahr 2015, seit Mai 2026 abgelöst durch RFC 9989 (Protokoll) sowie RFC 9990 und 9991 (Berichte). Der Record beginnt weiterhin mit v=DMARC1, bestehende Einträge bleiben gültig.
DMARC verknüpft zwei ältere Verfahren mit der Adresse, die Menschen tatsächlich sehen, dem From-Header. Eine Mail besteht DMARC, wenn mindestens eins davon zutrifft:
- SPF ist
passund die geprüfte Envelope-Domain passt zur From-Domain. - DKIM ist
passund die signierende Domain (d=) passt zur From-Domain.
„Passt“ heißt Alignment. Ohne diesen Abgleich könnte ein Angreifer SPF für seine eigene Domain bestehen und trotzdem [email protected] in den From-Header schreiben. Wie SPF und DKIM einzeln funktionieren, steht in SPF-Record einrichten und DKIM einrichten.
Der DMARC-Record Tag für Tag
_dmarc.beispiel.de. 3600 IN TXT "v=DMARC1; p=none; rua=mailto:[email protected]; adkim=r; aspf=r"
| Tag | Bedeutung | Werte |
|---|---|---|
v | Version, muss vorne stehen | DMARC1 |
p | Richtlinie für die Domain | none, quarantine, reject |
sp | Richtlinie für Subdomains | wie p, Standard = Wert von p |
np | Richtlinie für nicht existierende Subdomains (RFC 9989) | wie p |
rua | Ziel für Aggregat-Berichte | mailto:-Adresse(n) |
ruf | Ziel für Fehlerberichte einzelner Mails | mailto:-Adresse(n) |
adkim / aspf | Alignment-Modus | r (relaxed, Standard), s (strict) |
fo | Wann Fehlerberichte entstehen | 0, 1, d, s |
t | Testmodus, Richtlinie eine Stufe milder (RFC 9989) | y, n |
Relaxed Alignment bedeutet: mail.beispiel.de passt zu beispiel.de, weil beide dieselbe Organisationsdomain haben. Strict verlangt exakte Gleichheit. Für fast alle ist r richtig.
ruf liefert Kopien bzw. Auszüge einzelner gescheiterter Mails. Gmail verschickt keine solchen Berichte, manche andere Empfänger schon. Weil die Berichte Inhalte und Adressen enthalten können, gehört die Zieladresse in ein Postfach, auf das nur wenige zugreifen.
Stufenplan: von p=none zu p=reject
| Phase | Record | Dauer | Was du tust |
|---|---|---|---|
| 1 | p=none; rua=… | 2–4 Wochen | Berichte sammeln, alle Versender identifizieren |
| 2 | p=none | bis alles grün ist | Dienste auf eigene Domain umstellen |
| 3 | p=quarantine | 2–4 Wochen | Restfehler beobachten |
| 4 | p=reject | dauerhaft | Berichte monatlich ansehen |
Die Dauer ist ein Erfahrungswert. Wer nur ein Google-Workspace-Postfach hat, ist in einer Woche durch. Ein Mittelständler mit ERP, Shop, Newsletter, Bewerberportal und drei Agenturen braucht eher zwei Monate.
Den Testmodus t=y aus RFC 9989 kannst du in Phase 3 und 4 zusätzlich setzen. Empfänger, die ihn kennen, behandeln reject dann wie quarantine. Verlass dich nicht darauf, dass alle ihn schon auswerten.
Berichte empfangen, auch an fremde Domains
Aggregat-Berichte kommen als XML-Datei im ZIP- oder GZIP-Anhang, meist einmal pro Tag und Empfänger. Bei einer Domain mit etwas Volumen sind das schnell dutzende Mails täglich. Wie du sie liest, erklärt DMARC-Bericht lesen.
Soll rua auf eine Adresse in einer anderen Domain zeigen, etwa bei einem Auswertungsdienst, muss die Zieldomain zustimmen. Dafür legt sie einen Record an:
beispiel.de._report._dmarc.auswertung.example. IN TXT "v=DMARC1"
Fehlt der, verwerfen sorgfältige Empfänger die Berichte. Seriöse Dienste setzen diesen Eintrag selbst.
DMARC-Record prüfen
$ dig +short TXT _dmarc.beispiel.de
"v=DMARC1; p=none; rua=mailto:[email protected]"
Wie ein durchgesetzter Record aussieht, zeigt example.com:
$ dig +short TXT _dmarc.example.com
"v=DMARC1;p=reject;sp=reject;adkim=s;aspf=s"
Spannend ist auch der Blick zu Google selbst. Gmail.com fährt bei der Hauptdomain nur p=none:
$ dig +short TXT _dmarc.gmail.com
"v=DMARC1; p=none; sp=quarantine; rua=mailto:[email protected]"
Das liegt an der Masse an Geräten und Diensten, die seit Jahrzehnten mit Gmail-Adressen als Absender verschicken. Für deine eigene Domain gilt diese Ausrede nicht.
Was Google, Yahoo und Microsoft verlangen
Seit Februar 2024 müssen alle, die mehr als 5.000 Mails pro Tag an Gmail-Adressen schicken, SPF und DKIM einsetzen, einen DMARC-Record veröffentlichen (mindestens p=none) und die From-Domain an SPF oder DKIM ausrichten. Dazu kommen One-Click-Abmeldung für Werbemails und eine Spam-Beschwerderate unter 0,3 %. Yahoo hat zeitgleich ähnliche Regeln eingeführt, ohne feste Mengenschwelle. Microsoft zog 2025 für Outlook.com nach.
Für kleine Absender gilt bei Gmail: SPF oder DKIM, gültiges Reverse-DNS, TLS. DMARC ist dort nicht Pflicht. Ich würde es trotzdem setzen, weil nur DMARC verhindert, dass jemand anderes deine Domain missbraucht.
Häufige Fehler beim DMARC-Einrichten
- Record auf der Hauptdomain statt auf
_dmarcangelegt. - Semikolons vergessen:
v=DMARC1 p=nonewird nicht erkannt. ruaohnemailto:.- Zwei DMARC-Records unter
_dmarc. Dann gilt keiner. - Domains vergessen, die nie Mails versenden. Die brauchen
v=spf1 -allundv=DMARC1; p=reject, sonst werden sie gern für Phishing genutzt.
Wenn du mehrere Domains hast, etwa eine .de und eine .com für denselben Namen, braucht jede ihren eigenen DMARC-Record. Die Records legst du in der DNS-Zone an; bei betadomain etwa in der DNS-Verwaltung der jeweiligen Domain. Eine zusätzliche .com für den internationalen Auftritt kostet dort 14,99 € im Jahr, die .de-Endung 2,99 €, Verlängerung jeweils zum selben Preis. Wer erst noch eine Domain für die Firmen-Mail registrieren will, richtet SPF, DKIM und DMARC am besten noch vor der ersten Mail ein. Und warum DMARC das eigentliche Werkzeug gegen gefälschte Absender ist, steht in E-Mail-Spoofing verhindern.
Schritt für Schritt
- Postfach für Berichte anlegenLege eine Adresse wie [email protected] an oder nutze einen Auswertungsdienst. Dorthin schicken Empfänger täglich ihre Aggregat-Berichte.
- Record mit p=none veröffentlichenLege einen TXT-Record auf _dmarc.deinedomain.de mit v=DMARC1; p=none; rua=mailto:[email protected] an.
- Berichte zwei bis vier Wochen auswertenPrüfe in den Berichten, welche IP-Adressen in deinem Namen senden und ob SPF oder DKIM mit deiner Domain bestehen. Unbekannte Quellen klären.
- Versender korrigierenBringe jeden legitimen Dienst auf aligned DKIM oder SPF: eigene Absenderdomain im Newsletter-Tool aktivieren, fehlende includes ergänzen.
- Auf quarantine erhöhenStelle die Richtlinie auf p=quarantine und beobachte die Berichte weitere zwei Wochen auf legitime Mails, die durchfallen.
- Auf reject umstellenWenn keine legitimen Quellen mehr scheitern, setze p=reject. Erst jetzt werden gefälschte Mails mit deiner Domain zuverlässig abgewiesen.
Domain gefunden? Prüfen und registrieren kannst du sie direkt bei Domain-Preise vergleichen – Jahrespreis ab 2,99 €.
Häufige Fragen
Reicht p=none für die Google- und Yahoo-Anforderungen?
Ja. Google verlangt seit Februar 2024 von Absendern mit mehr als 5.000 Mails pro Tag an Gmail einen DMARC-Record, die Richtlinie darf aber none sein. Gegen Spoofing schützt p=none allerdings nicht, es liefert nur Berichte.
Was passiert mit Mails, die DMARC nicht bestehen?
Bei p=none nichts, sie werden normal zugestellt. Bei p=quarantine landen sie meist im Spam-Ordner. Bei p=reject lehnt der Empfänger sie ab, der Absender bekommt eine Fehlermeldung.
Brauche ich für Subdomains einen eigenen DMARC-Record?
Nicht unbedingt. Der Record der Hauptdomain gilt auch für Subdomains, mit sp= kannst du dafür eine eigene Richtlinie setzen. Eine Subdomain mit eigenem _dmarc-Record überschreibt das.
Ist pct= noch gültig?
In RFC 7489 ja. Die Nachfolge-Spezifikation RFC 9989 vom Mai 2026 hat pct gestrichen und stattdessen t=y für einen Testmodus eingeführt. Empfänger, die noch nach RFC 7489 arbeiten, werten pct weiter aus, deshalb schadet es nicht, es bei 100 zu belassen oder wegzulassen.