Was ist DNSSEC? DNS Security Extensions erklärt

DNSSEC (DNS Security Extensions) ist eine Reihe von Erweiterungen, die DNS-Antworten kryptografisch authentifizieren. Ohne DNSSEC kann ein Angreifer DNS-Antworten fälschen und Datenverkehr auf bösartige Server umleiten — eine Technik, die als DNS-Cache-Poisoning bekannt ist.

Die DNSSEC-Vertrauenskette. rootDNSKEYDS.comDS → DNSKEYDSexample.comDNSKEY → RRSIG
Jede Ebene signiert den Schlüssel der darunterliegenden Ebene, von der Root an abwärts.

Das Problem, das DNSSEC löst

Klassisches DNS wurde ohne Sicherheitsgedanken entworfen. Wenn Ihr Computer fragt „Wie lautet die IP-Adresse von bank.com?“, vertraut er der Antwort, die er erhält. Ein Angreifer zwischen Ihnen und dem DNS-Server kann eine falsche Antwort einschleusen und Sie auf eine Phishing-Seite umleiten.

DNSSEC löst das, indem DNS-Zonen ihre Einträge mit einem privaten Schlüssel signieren. Resolver können die Signatur mit dem passenden öffentlichen Schlüssel überprüfen und so sicherstellen, dass die Antwort vom rechtmäßigen Zoneninhaber stammt.

So funktioniert DNSSEC

  1. Der Zoneninhaber erzeugt ein Schlüsselpaar (DNSKEY-Einträge) und signiert alle DNS-Einträge mit dem privaten Schlüssel, wodurch RRSIG-Einträge entstehen
  2. Der öffentliche Schlüssel (DNSKEY) wird im DNS veröffentlicht
  3. Ein Hash des öffentlichen Schlüssels (DS-Eintrag) wird an die übergeordnete Zone übermittelt (.com, .org usw.)
  4. Auch die übergeordnete Zone ist signiert — und so weiter bis zur Root-Zone
  5. Erhält ein Resolver eine DNS-Antwort, folgt er der Vertrauenskette von der Root abwärts, um die Signaturen zu überprüfen

DNSSEC-Eintragstypen

Record TypePurpose
DNSKEYDer öffentliche Signierschlüssel der Zone
DSHash des DNSKEY der untergeordneten Zone, gespeichert in der übergeordneten Zone
RRSIGKryptografische Signatur über eine Gruppe von DNS-Einträgen
NSEC / NSEC3Nachweis, dass ein Eintrag nicht existiert (Denial of Existence)

Die Vertrauenskette

DNSSEC baut eine Vertrauenskette von der Root-Zone hinunter zu den einzelnen Domains auf:

Root zone (.) ← Trust anchor, key is published by IANA
  └─ .com zone ← Signed, DS record in root zone
       └─ example.com ← Signed, DS record in .com zone
            └─ DNS records ← Signed with example.com's key

Der Schlüssel der Root-Zone (der „Trust Anchor“) ist in DNSSEC-validierende Resolver eingebaut. Er ist der Ausgangspunkt jeder Überprüfung.

DNSSEC verschlüsselt den Datenverkehr NICHT

Ein häufiges Missverständnis: DNSSEC authentifiziert DNS-Antworten, aber es encrypt sie nicht. DNS-Anfragen und -Antworten werden weiterhin im Klartext übertragen. Für Privatsphäre nutzen Sie:

  • DNS-over-HTTPS (DoH) — verschlüsselt DNS-Verkehr über HTTPS
  • DNS-over-TLS (DoT) — verschlüsselt DNS-Verkehr über TLS

So aktivieren Sie DNSSEC für Ihre Domain

  1. Prüfen Sie, ob Ihr DNS-Hosting-Anbieter DNSSEC-Signierung unterstützt
  2. Aktivieren Sie die DNSSEC-Signierung im Kundenbereich Ihres DNS-Anbieters
  3. Ihr Anbieter erzeugt DNSKEY-Einträge und signiert Ihre Zone
  4. Kopieren Sie die DS-Eintragswerte, die Ihr DNS-Anbieter anzeigt
  5. Übermitteln Sie den DS-Eintrag an Ihren Domain-Registrar (meist über dessen Kundenbereich)
  6. Warten Sie die Propagierung ab (kann bis zu 48 Stunden dauern)

Ihren DNSSEC-Status prüfen

Auf Ihrer Domain ausprobieren

Sehen Sie die Theorie in der Praxis — führen Sie DNSSEC-Prüfung für Ihre eigene Domain aus.