Das die DNS-Daten durch den DNS-Server validiert werden können, ist es nötig den Vertrauensanker (Trust Anchor) einzurichten. Das ist der öffentliche DNSSEC-Schlüssel einer DNS-Domain, sowie der Vertrauensanker der DNS-Root-Zone. Durch den DNS-Server können mehrere Vertrauensanker verwaltet werden, wenn auf dem DNS mehrere DNS-Domains vorhanden sind.
- laden der Vertrauensanker der DNS-Root-Zone
Windows Server 2012
dnscmd.exe /RetrieveRootTrustAnchors
Windows Server 2016
dnscmd.exe localhost /RetrieveRootTrustAnchors /f
- DNSSEC Aktivierung des DNS-Servers prüfen
Get-DnsServerSetting -All | fl EnableDnsSec EnableDnsSec : True
wenn EnableDnsSec auf False steht, mit folgenden Befehl aktivieren
$a = Get-DnsServerSetting -All $a.EnableDnsSec = 1 $a | Set-DnsServerSetting
- Aktivierung des Vertrauensankers anzeigen
Get-DnsServerTrustPoint TrustPointName TrustPointState LastActiveRefreshTime NextActiveRefreshTime -------------- --------------- --------------------- --------------------- . Active 01.01.2018 00:00:00 02.01.2018 00:00:00
- Vertrauensanker anlegen
Add-DnsServerTrustAnchor -Root
- Root Vertrauensanker URL anzeigen und Cache löschen
(Get-DnsServerSetting -All).RootTrustAnchorsURL Clear-DnsServerCache -Force
- Validierung prüfen
nslookup www.dnssec.works ::1 ... Name: www.dnssec.works Addresses: 2a01:198:2b6:1000:203:2dff:fe29:8424 5.45.109.212
werden die IP-Adressen der Domain angezeigt ist alles Ok, bei einer fehlerhaft signierten Domain werden keine IP-Adressen zurückgeliefert. Wie im folgenden Beispiel.
nslookup fail01.dnssec.works ::1 ... *** fail01.dnssec.works wurde von UnKnown nicht gefunden: Server failed.
Fehlersuche
Wenn die folgende Meldung gezeigt wird, beim Versuch den Vertrauensanker (Trust Anchor) zu laden, ist DNSSEC auf dem Server deaktiviert
Fehler bei Befehl: DNS_ERROR_INVALID_ZONE_OPERATION 9603 0x2583