DANE TLSA für Exim konfigurieren

Exim unterstützt DANE als Compile-Time-Option (SUPPORT_DANE=yes) — unter GnuTLS ab Version 3.0.0 (Original-Zitat aus Exim-Doku). Diese Anleitung zeigt Compile-Voraussetzung, TLSA-Generation, smtp-Transport-Optionen (hosts_try_dane, hosts_require_dane, dane_require_tls_ciphers) und Log-Verifikation.

Exim · Schritt für Schritt

DANE TLSA für Exim-Mailserver

Exim unterstützt DANE als Compile-Time-Option. Original-Zitat aus der offiziellen Exim-Dokumentation (exim.org/exim-html-current, Abruf 2026-05-16): „Support for client-side operation of DANE can be included at compile time by defining SUPPORT_DANE=yes in Local/Makefile.“ Und weiter: „Under GnuTLS, DANE is only supported from version 3.0.0 onwards.“ Unter OpenSSL gibt es laut Doku keine spezifische Versionsbeschränkung. Distributions-Pakete (Debian-exim4-daemon-heavy) enthalten DANE-Support typisch ab Debian 12.

Drei zentrale smtp-Transport-Optionen: hosts_try_dane (versucht DANE-Verifikation, fällt aber zurück bei Fehler — opportunistisch), hosts_require_dane (erzwingt DANE oder lehnt Zustellung ab — strict), dane_require_tls_ciphers (alternative Cipher-Liste für DANE-Verbindungen). Zusätzlich nötig: dnssec_request_domains für DNSSEC-Auflösung am SMTP-Resolver.

DANE-Logging: Nach erfolgreicher DANE-Verifikation zeigt die Exim-Delivery-Log-Zeile CV=dane, die Variable $tls_out_dane wird auf yes gesetzt — direkt prüfbar im Exim-Mainlog. Hardening-Pfad: MXSPFDKIMDMARC → DNSSEC + DANE + CAA (dieser Guide). Bedrohungs-Cluster: DNS-Hijacking-Spoofing und SubdoMailing.

1 Schritt 1 von 4

Exim mit DANE-Support kompilieren

DANE muss zur Compile-Zeit aktiviert werden (SUPPORT_DANE=yes). Unter GnuTLS funktioniert DANE erst ab Version 3.0.0. Standard-Distributions-Pakete (Debian/Ubuntu/Fedora) liefern DANE-Support typisch ab den aktuellen Stable-Releases.

Exim Local/Makefile + exim -bV SUPPORT_DANE=yes
# Exim DANE-Support beim Compile aktivieren
# In Local/Makefile (oder über exim_makefile-Distributions-Patch):
SUPPORT_DANE=yes
USE_GNUTLS=yes      # Empfohlen; OpenSSL ist alternativ unterstützt

# DANE-Mindestversion laut Exim-Doku:
# Original-Zitat (exim.org/exim-html-current/doc/html/spec_html/ch-encrypted_smtp_connections_using_tlsssl.html):
# "Support for client-side operation of DANE can be included at compile time by
#  defining SUPPORT_DANE=yes in Local/Makefile."
# "Under GnuTLS, DANE is only supported from version 3.0.0 onwards."

# DANE-Support im Build verifizieren:
exim -bV
# Ausgabe muss "Support for DANE" enthalten.
2 Schritt 2 von 4

TLSA-Records am MX-Host anlegen

TLSA-Records werden pro MX-Host generiert (vgl. Postfix-Guide für hash-slinger/openssl-Befehle). Für SMTP: _25._tcp.<mx-host> mit Usage 3 (DANE-EE), Selector 1 (SubjectPublicKeyInfo), Matching-Type 1 (SHA-256-Hash) — diese Kombination ist nach RFC 7672 § 3.1.3 für SMTP empfohlen.

Pre-Publishing für stabile Renewal-Zyklen

Wenn Sie automatisches Cert-Renewal (Let's Encrypt) nutzen, publizieren Sie den neuen TLSA-Record vor dem Renewal-Datum als Pre-Published-Record (zweiter TLSA neben dem aktuellen). Der sendende Mailserver akzeptiert TLSA-Match wenn mindestens ein TLSA-Record passt — so vermeiden Sie Race-Conditions bei Cert-Wechseln. Alternativ: Selector 1 (Public-Key-Hash) nutzen, wenn der private Key über Renewals hinweg stabil bleibt. RFC-Grundlage: RFC 7671 § 8.1 „Key Rollover with Fixed TLSA Parameters“ beschreibt die Current+Next-Strategie zeichengenau („at least two Times to Live (TTLs) or longer before the new chain is deployed“) — vollständiger Direktzitat und Provider-Automatisierungs-Pattern im Kapitel-Index-Block.

Exim-Distributionspakete und GnuTLS-Voraussetzung (Mehrwert-Recherche 2026-05-18)

Die Exim-DANE-Unterstützung erfordert SUPPORT_DANE=yes zur Compile-Zeit — Distributionspakete liefern das in folgender Konstellation typischerweise mit: Debian 12 (Bookworm): exim4-daemon-heavy-Paket aktiviert DANE-Support. Ubuntu 22.04 LTS / 24.04 LTS: gleicher Paketname, gleiche Unterstützung. RHEL/Fedora: exim-Paket aus EPEL — Compile-Optionen prüfen mit exim -bV. Direkt-Zitat aus exim.org/exim-html-current/.../ch-encrypted_smtp_connections_using_tlsssl.html (Abruf 2026-05-18 — Cross-Reference R3-Quality-Welle-2-Verifikation): „Support for client-side operation of DANE can be included at compile time by defining SUPPORT_DANE=yes in Local/Makefile“. Und zur GnuTLS-Versions-Pflicht: „Under GnuTLS, DANE is only supported from version 3.0.0 onwards“. Unter OpenSSL gibt es laut Doku keine spezifische Versionsbeschränkung — moderne OpenSSL-1.1.1+ ist Standard und kompatibel. Migration von alten Exim-Versionen: Wer noch Exim 4.92 oder älter ohne DANE-Support einsetzt, sollte vor der DANE-Aktivierung auf eine aktuelle Distributions-LTS-Version updaten — historische Exim-CVEs (CVE-2019-10149 Pre-Auth-RCE, CVE-2020-28017 Heap-Buffer-Overflow) machen das ohnehin sicherheitskritisch.

3 Schritt 3 von 4

smtp-Transport für DANE konfigurieren

Die DANE-Konfiguration erfolgt im smtp-Transport (typisch /etc/exim4/conf.d/transport/30_exim4-config_remote_smtp). Drei Optionen: hosts_try_dane (opportunistisch), hosts_require_dane (strict, kein Fallback), dane_require_tls_ciphers (Cipher-Override für DANE).

/etc/exim4/conf.d/transport/30_exim4-config_remote_smtp Exim DANE
# /etc/exim4/conf.d/transport/30_exim4-config_remote_smtp
# Outbound-DANE-Konfiguration

remote_smtp:
  driver = smtp
  # DNSSEC-Resolver-Validation aktivieren
  dnssec_request_domains = *

  # DANE: try-Mode (opportunistisch, Fallback bei Fehler) oder require (strict)
  hosts_try_dane = *
  # hosts_require_dane = *   # Alternative: strict (kein Fallback)

  # TLS-Ciphers für DANE-Verbindungen (alternative Suite)
  # dane_require_tls_ciphers = ALL:!aNULL

  # Standard-TLS-Anforderungen
  tls_dh_min_bits = 1024
  command_timeout = 5m
  data_timeout = 5m
  hosts_avoid_tls = :
  helo_data = $primary_hostname
hosts_try_dane vs. hosts_require_dane

hosts_try_dane versucht DANE pro Ziel-Host — bei Fehler (kein TLSA, abgelaufene RRSIG) Fallback auf normales TLS. hosts_require_dane erzwingt DANE — bei Fehler wird die Zustellung abgelehnt. Strikte DANE-Pflicht nur für gezielt definierte Ziel-Domains, bei pauschalem * kann es zu unbeabsichtigten Mail-Bounces kommen.

4 Schritt 4 von 4

DANE-Verifikation per Exim-Log

Nach Aktivierung prüfen Sie die DANE-Funktion mit dig (DNSSEC + TLSA) und im Exim-Mainlog nach CV=dane. Bei erfolgreicher DANE-Authentifizierung ist die Variable $tls_out_dane auf yes gesetzt.

Terminal — dig / Exim-Mainlog Verifikation
# DNSSEC am eigenen Apex prüfen
dig +dnssec MX ihre-domain.de | grep -E "RRSIG|ad;"

# TLSA-Record verifizieren
dig TLSA _25._tcp.mx1.ihre-domain.de +short

# Exim-Mainlog für DANE-Status
grep "CV=dane" /var/log/exim4/mainlog

# Erwartete Log-Zeile (Direktzitat aus Exim-Doku):
# "After a successful DANE verification, the delivery log line shows CV=dane
#  and the variable $tls_out_dane is set to 'yes'."

# Online: DANE SMTP Validator
# https://dane.sys4.de/smtp/ihre-domain.de

Validieren Sie zusätzlich mit dem Wolf-Agents Email Security Check — dieser erkennt Exim automatisch (Banner-Detection für „ESMTP Exim“), prüft DNSSEC am Apex, validiert TLSA-Records am MX-Host, scannt CAA + SMTP-TLS-Konfiguration und prüft CVE-Stati gegen bekannte Exim-Schwachstellen.

Häufige Fehler bei Exim DANE

Exim ohne DANE-Support kompiliert

Problem: exim -bV zeigt keinen DANE-Support, hosts_try_dane in der Config wirkungslos. Ursache: Distributions-Paket ohne SUPPORT_DANE=yes oder GnuTLS <3.0.0. Lösung: Aktuelles Distributions-Paket (Debian 12+ / Ubuntu 22.04+) installieren oder selbst kompilieren mit SUPPORT_DANE=yes + GnuTLS 3.0.0+.

DNSSEC-Resolver liefert keinen AD-Flag

Problem: TLSA-Records gesetzt, DANE in smtp-Transport aktiv, aber kein CV=dane im Mainlog. Ursache: Lokaler DNS-Resolver validiert DNSSEC nicht (kein AD-Flag in Antworten). Lösung: Unbound oder systemd-resolved mit DNSSEC-Validation konfigurieren, in dnssec_request_domains die relevanten Ziel-Domains aufnehmen.

TLSA mit falschem Usage-Wert

Problem: TLSA mit Usage 0 (PKIX-TA) oder 1 (PKIX-EE) gesetzt — Exim-DANE-Validation schlägt fehl. Ursache: RFC 7672 § 3.1.3 empfiehlt für SMTP nur Usage 2 (DANE-TA) oder 3 (DANE-EE) — PKIX-TA/EE sind explizit deprecated für Port-25-SMTP. Lösung: TLSA mit Usage 3 (DANE-EE, Domain-issued End-Entity) für einzelne Mailserver-Domain, Usage 2 (DANE-TA, Trust-Anchor) für Multi-Domain-Hosting.

Compliance · NIS2 · BSI · DSGVO

Compliance: NIS2, BSI TR-03108 und DSGVO mit Exim DANE

Eine Exim-Konfiguration mit aktiviertem DANE (SUPPORT_DANE=yes + hosts_try_dane/hosts_require_dane) ist der prüfbare Nachweis für NIS2 Art. 21 Abs. 2 lit. h (Kryptografie und Verschlüsselung) auf DNS- und Transport-Schicht. Ergänzend lit. e (Schwachstellen-Management) durch Exim-CVE-Patch-Disziplin (historische CVE-2019-10149, CVE-2020-28017 etc.). DSGVO Art. 32 lit. b (Verfügbarkeit + Integrität) durch downgrade-resistente Verschlüsselung.

Exim DANE-Compliance-Stack: NIS2 lit. h (DNSSEC + DANE TLSA + CAA) + NIS2 lit. e (Exim-CVE-Patch-Disziplin, SUPPORT_DANE + GnuTLS 3.0.0+ Compile-Time) + BSI TR-03108 (E-Mail-Transport mit DANE) + DSGVO Art. 32 lit. b (Verfügbarkeit + Integrität). Wolf-Agents-USP: Der Email Security Check erkennt Exim automatisch (Banner-Detection für „ESMTP Exim“), validiert DNSSEC am Apex, prüft TLSA-Records am MX-Host und scannt CVE-Stati gegen bekannte Exim-Schwachstellen. Cross-Verweis: DNS-Hijacking-Spoofing und SubdoMailing.

Wie steht Ihre Domain bei DNS-Sicherheit · Exim?

Prüfen Sie es jetzt — kostenlos, ohne Registrierung, mit 165 Prüfpunkte.