DMARC für Exim einrichten
Schritt-für-Schritt-Anleitung: DMARC-Record im DNS anlegen, Alignment über Exim-DKIM-Konfiguration sicherstellen und die native DMARC-Unterstützung ab Exim 4.95+ für eingehende Prüfung aktivieren.
DMARC für Exim mit nativer DMARC-Unterstützung
Exim bietet ab Version 4.95+ experimentelle DMARC-Unterstützung direkt in der ACL — ohne externe Milter wie OpenDMARC. Die eingehende DMARC-Prüfung nutzt dmarc_tld_file für die Public Suffix List und protokolliert Ergebnisse in dmarc_history_file. Wie bei Postfix besteht DMARC aus zwei Teilen: dem DNS-Record (ausgehender Schutz, beim DNS-Provider) und der ACL-Konfiguration (eingehende Prüfung, in exim.conf).
Der Wolf-Agents Email Security Check prüft DMARC auf 35 von 165 Punkten. Für Betreiber eigener Exim-Server dokumentiert ein korrekt konfigurierter DMARC-Record den aktiven Spoofing-Schutz — eine prüfbare Compliance-Maßnahme für NIS2 Art. 21 und BSI TR-03108.
Hardening-Pfad: Nach DMARC mit p=none folgt der schrittweise Wechsel zu p=quarantine und p=reject — siehe DMARC-Enforcement für Exim.
DMARC-Record im DNS anlegen
Der DMARC-Record wird beim DNS-Provider angelegt — nicht in der Exim-Konfiguration. Exim selbst benötigt für ausgehende E-Mails keine DMARC-Änderung.
_dmarc.ihre-domain.de. IN TXT "v=DMARC1; p=none; rua=mailto:dmarc-reports@ihre-domain.de; fo=1" Alignment sicherstellen
DKIM-Alignment erfordert, dass Exim mit d=ihre-domain.de signiert (Kapitel 03). SPF-Alignment hängt davon ab, ob der Return-Path (Envelope-From) mit der From-Header-Domain übereinstimmt — prüfen Sie die qualify_domain-Einstellung in exim.conf.
Alignment-Checkliste für Exim
- DKIM:
dkim_domainin der Transport-Konfiguration muss Ihre From-Domain sein - SPF:
qualify_domain = ihre-domain.defür korrekten Return-Path - Drittanbieter: Custom-DKIM-Signierung bei jedem externen Dienst aktivieren
- DMARC besteht wenn SPF-Alignment oder DKIM-Alignment korrekt ist
Native DMARC-Prüfung in Exim aktivieren
Exim 4.95+ bietet experimentelle DMARC-Unterstützung direkt in der ACL — ohne externe Milter. Aktivieren Sie die Prüfung über dmarc_tld_file und konfigurieren Sie ACL-Regeln für die Reaktion auf DMARC-Ergebnisse.
# DMARC-Prüfung für eingehende E-Mails aktivieren
dmarc_tld_file = /etc/exim4/public_suffix_list.dat
dmarc_history_file = /var/log/exim4/dmarc.history # In der ACL für eingehende Mail (acl_check_data):
warn
dmarc_status = reject
log_message = DMARC policy rejection: $dmarc_domain (from $sender_address)
# Optional: E-Mail ablehnen wenn DMARC reject verlangt
# deny
# dmarc_status = reject
# message = DMARC policy for $dmarc_domain rejects this message Die native DMARC-Unterstützung in Exim ist als experimentell markiert. Prüfen Sie Ihre Exim-Version mit exim -bV und stellen Sie sicher, dass DMARC-Support einkompiliert ist (Support for: ... DMARC). Auf älteren Versionen nutzen Sie OpenDMARC als Alternative (wie bei Postfix).
Die Datei public_suffix_list.dat muss regelmäßig aktualisiert werden. Laden Sie sie von publicsuffix.org herunter oder richten Sie einen wöchentlichen Cronjob ein: wget -O /etc/exim4/public_suffix_list.dat https://publicsuffix.org/list/public_suffix_list.dat
DMARC-Record verifizieren
Prüfen Sie den DNS-Record und die Exim-DMARC-Logs. DNS-Änderungen sind je nach Provider innerhalb von Minuten bis maximal 48 Stunden aktiv.
# Linux / macOS
dig _dmarc.ihre-domain.de TXT +short
# Windows (PowerShell)
Resolve-DnsName -Name _dmarc.ihre-domain.de -Type TXT | Select-Object -ExpandProperty Strings
# Erwartete Ausgabe:
# "v=DMARC1; p=none; rua=mailto:dmarc-reports@ihre-domain.de; fo=1"
# Exim-Version prüfen (DMARC-Support)
exim -bV | grep -i dmarc
# Exim-Mainlog auf DMARC-Meldungen
grep "DMARC" /var/log/exim4/mainlog | tail -20 Validieren Sie mit dem Wolf-Agents Email Security Check — 35 DMARC-Punkte inklusive Policy, Reporting und Alignment.
Reporting einrichten und auswerten
Warten Sie mindestens 2-4 Wochen im Monitoring-Modus (p=none). Aggregate Reports zeigen, welche Server E-Mails in Ihrem Namen senden. Ergänzend protokolliert Exim DMARC-Ergebnisse im dmarc_history_file.
Monitoring-Phase für Exim
- Richten Sie eine dedizierte Mailbox für
dmarc-reports@ihre-domain.deein - Prüfen Sie die lokale DMARC-History:
tail -50 /var/log/exim4/dmarc.history - Nutzen Sie dmarcian oder Postmark DMARC zur Auswertung der komprimierten XML-Reports
- Identifizieren Sie alle legitimen Absender — prüfen Sie SPF/DKIM für jeden Dienst einzeln
- Erst wenn alle Dienste korrekt authentifiziert sind: Policy verschärfen und ACL-
deny-Regel aktivieren (Kapitel 05)
Häufige Fehler bei Exim
Diese drei Fehler treten bei Exim-DMARC-Konfigurationen besonders häufig auf.
Exim-Version ohne DMARC-Support kompiliert
Problem: Die native DMARC-Unterstützung ist erst ab Exim 4.95+ verfügbar und muss explizit einkompiliert sein. Viele Distributionen liefern Exim ohne DMARC-Support aus — die ACL-Variablen dmarc_status existieren dann nicht.
Lösung: Prüfen Sie mit exim -bV | grep DMARC. Wenn DMARC fehlt: Exim neu kompilieren mit DMARC-Support oder auf OpenDMARC als Milter-Alternative ausweichen (wie bei Postfix).
public_suffix_list.dat fehlt oder veraltet
Problem: Die Datei dmarc_tld_file fehlt oder enthält eine veraltete Version der Public Suffix List. Exim kann die Organizational Domain nicht korrekt ermitteln — DMARC-Prüfungen schlagen für Subdomains fehl.
Lösung: public_suffix_list.dat von publicsuffix.org herunterladen und wöchentlich per Cronjob aktualisieren. Pfad in dmarc_tld_file korrekt setzen.
ACL deny-Regel ohne Testphase aktiviert
Problem: Die deny-Regel für dmarc_status = reject wird sofort aktiviert. Legitime E-Mails von Domains mit fehlerhafter DMARC-Konfiguration werden abgelehnt.
Lösung: Starten Sie mit der warn-Regel (nur Logging). Werten Sie die DMARC-History-Datei 2-4 Wochen aus. Erst dann die deny-Regel aktivieren.
DMARC-Anleitung auch für:
Wie steht Ihre Domain bei DMARC?
Prüfen Sie es jetzt — kostenlos, ohne Registrierung, mit 165 Prüfpunkte.