Kurz erklärt
DMARC (Domain-based Message Authentication, Reporting & Conformance) kombiniert SPF und DKIM und prüft das Alignment – stimmt die authentifizierte Domain mit der sichtbaren From:-Adresse überein? DMARC legt fest, was mit E-Mails passiert, die diese Prüfung nicht bestehen: nichts tun, in Spam verschieben oder komplett ablehnen.
Warum DMARC kritisch ist
SPF und DKIM allein reichen nicht: SPF prüft nur den Return-Path (technischer Envelope-Absender), DKIM signiert die E-Mail – aber beide prüfen nicht zwingend die sichtbare From:-Adresse, die Nutzer sehen.
Angreifer können fälschen: Ohne DMARC kann eine E-Mail SPF und DKIM bestehen, obwohl die sichtbare Absenderadresse gefälscht ist.
DMARC erzwingt Alignment: Die Domain im From:-Header muss mit der SPF- oder DKIM-verifizierten Domain übereinstimmen.
DMARC-Policies
| Policy | Beschreibung | Verwendung |
|---|
p=none | Nur Monitoring, keine Aktion | Einführungsphase (2-4 Wochen) |
p=quarantine | Verdächtige E-Mails in Spam | Übergangsphase (4-8 Wochen) |
p=reject | E-Mails ablehnen | Vollständiger Schutz |
Empfehlung: Schrittweise Einführung von p=none zu p=reject über mehrere Wochen.
DMARC-Record-Syntax
Ein typischer DMARC-Record als DNS TXT-Record für _dmarc.example.com:
v=DMARC1; p=reject; rua=mailto:dmarc-reports@example.com; ruf=mailto:dmarc-forensic@example.com; pct=100; adkim=s; aspf=s
Wichtige Tags:
v=DMARC1 – DMARC-Version (Pflicht)
p=none|quarantine|reject – Policy für Domain (Pflicht)
sp= – Policy für Subdomains (optional, Standard = p-Wert)
rua= – E-Mail für Aggregate Reports (empfohlen)
ruf= – E-Mail für Forensic Reports (optional)
pct= – Prozentsatz der E-Mails, auf die Policy angewendet wird (Standard: 100)
adkim= – DKIM-Alignment-Modus (r=relaxed, s=strict)
aspf= – SPF-Alignment-Modus (r=relaxed, s=strict)
Alignment verstehen
Relaxed Alignment (Standard):
- Organizational Domain muss übereinstimmen
mail.example.com aligned mit example.com ✓
Strict Alignment:
- Exakte Domain-Übereinstimmung erforderlich
mail.example.com aligned NICHT mit example.com ✗
Beispiele:
Schrittweise DMARC-Einführung
Phase 1: Monitoring (2-4 Wochen)
v=DMARC1; p=none; rua=mailto:dmarc@example.com
Keine Auswirkung auf E-Mail-Zustellung. Reports sammeln und analysieren.
Phase 2: Quarantine-Test (4-8 Wochen)
v=DMARC1; p=quarantine; pct=10; rua=mailto:dmarc@example.com
10% der fehlgeschlagenen E-Mails in Spam. Schrittweise steigern: 25%, 50%, 100%.
Phase 3: Reject-Enforcement
v=DMARC1; p=reject; rua=mailto:dmarc@example.com
Vollständiger Schutz – nicht-authentifizierte E-Mails werden abgelehnt.
Phase 4: Subdomain-Schutz
v=DMARC1; p=reject; sp=reject; rua=mailto:dmarc@example.com
Policy gilt auch für alle Subdomains.
DMARC-Reports verstehen
Aggregate Reports (RUA): Tägliche XML-Reports mit Zusammenfassungen
- Welche IPs senden E-Mails von Ihrer Domain?
- Wie viele E-Mails bestehen/versagen SPF und DKIM?
- Wie viele E-Mails sind aligned?
Forensic Reports (RUF): Einzelne fehlgeschlagene E-Mails (selten genutzt, Datenschutz-Risiko)
Report-Parsing-Tools:
- DMARC Analyzer
- Postmark DMARC Digest
- dmarcian
- EasyDMARC
Häufige DMARC-Probleme
Weiterleitungen brechen SPF: E-Mail wird weitergeleitet, SPF schlägt fehl (neue IP) – DKIM muss bestehen!
Mailing-Listen modifizieren Subject: Wenn Subject signiert wurde (DKIM), bricht Signatur – l=-Tag verwenden.
Zu strenge Policy zu früh: p=reject ohne Testphase kann legitime E-Mails blockieren.
Fehlende DKIM-Signierung: Wenn nur SPF konfiguriert ist und SPF fehlschlägt, schlägt auch DMARC fehl.
Google & Yahoo Anforderungen 2024
Seit Februar 2024 gelten für Bulk-Sender (>5.000 E-Mails/Tag an Gmail/Yahoo):
- SPF und DKIM sind Pflicht
- DMARC mindestens mit
p=none (empfohlen: p=quarantine oder p=reject)
- Spam-Rate unter 0,3% (empfohlen: unter 0,1%)
- One-Click Unsubscribe seit Juni 2024 obligatorisch
- TLS-Verschlüsselung erforderlich
Auswirkungen: Gmail blockierte 2024 265 Milliarden unauthentifizierte E-Mails.
DMARC einrichten
1. SPF und DKIM prüfen:
Beide müssen korrekt konfiguriert sein – DMARC baut darauf auf.
2. DMARC-Record erstellen:
TXT-Record für _dmarc.example.com:
v=DMARC1; p=none; rua=mailto:dmarc@example.com
3. Reports analysieren (2-4 Wochen):
Identifizieren Sie alle legitimen Absender, stellen Sie sicher, dass SPF/DKIM korrekt sind.
4. Policy verschärfen:
Von p=none zu p=quarantine pct=10 zu pct=100 zu p=reject.
5. Subdomain-Policy setzen:
v=DMARC1; p=reject; sp=reject; rua=mailto:dmarc@example.com
Nächste Schritte
- SPF und DKIM korrekt konfigurieren (Voraussetzung!)
- DMARC-Record mit
p=none im DNS veröffentlichen
- 2-4 Wochen Reports sammeln und mit Parsing-Tool analysieren
- Fehlende SPF/DKIM-Konfigurationen korrigieren
- Policy schrittweise zu
p=reject verschärfen