DNSSEC prüfen

Sehen Sie, ob eine Domain signiert ist: die DS-Records in der übergeordneten Zone, die DNSKEY-Records in der Zone selbst und ob zwei validierende Resolver die Antwort als authentifiziert markiert haben.

Wie DNSSEC aufgebaut ist

DNSSEC versieht DNS-Antworten mit Signaturen, damit ein Resolver prüfen kann, dass sie unterwegs nicht verändert wurden. Die Zone veröffentlicht ihre öffentlichen Schlüssel als DNSKEY-Records und signiert damit ihre Records. Die übergeordnete Zone (.com bei example.com) veröffentlicht einen DS-Record: einen Digest des Key-Signing-Keys der Zone. Dieser DS-Record ist das Glied in der Vertrauenskette von der Root-Zone bis hinunter zur Domain, und er wird über den Registrar gesetzt.

Beide Hälften sind nötig. Schlüssel in der Zone ohne DS-Record in der übergeordneten Zone werden von niemandem validiert. Schlimmer ist ein DS-Record, der auf einen Schlüssel zeigt, den die Zone nicht veröffentlicht: Validierende Resolver verwerfen dann jede Antwort, und die Domain verschwindet für deren Nutzer.

Was dieses Tool prüft und woher die Daten stammen

OrbitProbe fragt zwei öffentliche validierende Resolver, Cloudflare und Google, per DNS-over-HTTPS nach den DS- und DNSKEY-Records der registrierbaren Domain, mit gesetztem DNSSEC-OK-Bit. Aufgelistet werden die DS-Records mit Key-Tag, Algorithmus und Digest-Typ, die DNSKEY-Records mit ihrer Rolle (KSK oder ZSK) und ihrem Algorithmus sowie die Angabe, ob der jeweilige Resolver in seiner Antwort das AD-Flag (Authenticated Data) gesetzt hat. Wo die Registry es veröffentlicht, erscheint das RDAP-Flag „delegation signed“ als zweite Quelle.

Das Ergebnis lautet auf eines von fünf Urteilen: signiert (DS und DNSKEY vorhanden), nicht signiert (die Resolver haben geantwortet, und es gibt keinen DS-Record), Schlüssel ohne DS-Record veröffentlicht, DS vorhanden, aber Schlüssel nicht lesbar, oder konnte nicht geprüft werden. Fällt ein Resolver aus, wird die Antwort des anderen trotzdem verwendet, und der Ausfall wird angezeigt.

Das AD-Flag ehrlich lesen

Ein AD-Flag bedeutet: Diese validierenden Resolver haben die Antwort zum Zeitpunkt der Prüfung als authentifiziert markiert. Es ist ihre Aussage über die eigene Validierung, kein Zertifikat für die Domain und keine Zusage über andere Resolver. Das Tool prüft die Signaturen nicht selbst noch einmal nach und geht auch nicht jeden Record der Zone durch. Eine abgelaufene Signatur auf einem einzelnen Record kann hier deshalb unbemerkt bleiben.

So verwenden Sie dieses Tool

  1. Domain eingeben. Tippen Sie einen Domainnamen wie example.com ein oder fügen Sie ihn ein. Eine vollständige URL geht auch: Schema, Pfad und ein führendes www werden entfernt.
  2. DS und DNSKEY abfragen. Das Tool fragt zwei validierende Resolver (Cloudflare und Google) per DNS-over-HTTPS, mit gesetztem DNSSEC-OK-Bit.
  3. Ergebnis lesen. Sie sehen, ob DS- und DNSKEY-Records vorhanden sind, welche Algorithmen sie verwenden und ob der jeweilige Resolver das AD-Flag gesetzt hat.

Dasselbe auf der Kommandozeile

Dieselbe Prüfung im Terminal. Die Befehle verwenden example.com: Ersetzen Sie es durch Ihren eigenen Namen.

  • DS-Record in der übergeordneten Zonedig +dnssec DS example.com
  • DNSKEY-Records der Zonedig +dnssec DNSKEY example.com +multi
  • AD-Flag eines validierenden Resolversdig @1.1.1.1 example.com A +dnssec | grep flags
  • Dieselbe Abfrage per DNS-over-HTTPScurl -s -H "accept: application/dns-json" "https://cloudflare-dns.com/dns-query?name=example.com&type=DS&do=1"
  • Windows (PowerShell)Resolve-DnsName example.com -Type DNSKEY -DnssecOk

Häufige Fragen

Wie prüfe ich, ob eine Domain DNSSEC verwendet?

Geben Sie oben die Domain ein, oder führen Sie dig +dnssec DS example.com und dig +dnssec DNSKEY example.com aus. Eine signierte Domain hat einen DS-Record in der übergeordneten Zone und DNSKEY-Records in der eigenen Zone.

Was ist der Unterschied zwischen DS und DNSKEY?

DNSKEY-Records sind die öffentlichen Schlüssel der Zone und liegen in der Zone selbst. Der DS-Record ist ein Digest des Key-Signing-Keys und liegt in der übergeordneten Zone, wo er über den Registrar gesetzt wird.

Welche Algorithmen sind heute in Ordnung?

Verbreitet sind ECDSAP256SHA256 (13), ED25519 (15) und RSASHA256 (8). Die RSASHA1-Varianten (5 und 7) und SHA-1-Digests im DS-Record (Typ 1) sind veraltet und werden vom Tool markiert.

Das Tool meldet „nicht signiert“. Ist das ein Problem?

Für sich genommen nicht: Viele Domains sind nicht signiert und funktionieren. DNSSEC schützt vor gefälschten DNS-Antworten. Es einzuschalten ist eine betriebliche Entscheidung, denn ein Fehler beim Schlüsselwechsel nimmt die Domain für validierende Resolver vom Netz.

Wie schalte ich DNSSEC sicher ab?

Entfernen Sie zuerst den DS-Record beim Registrar, warten Sie mindestens den Ablauf seiner TTL ab, und beenden Sie erst dann das Signieren der Zone. In umgekehrter Reihenfolge bricht die Namensauflösung.