Dnssec Ablauf: Unterschied zwischen den Versionen
| Zeile 1: | Zeile 1: | ||
= Anfrage des Clients = | = Anfrage des Clients = | ||
| − | + | ||
| + | |||
*Beispiel: "Gib mir die A-Record-IP für www.dnssec.net." | *Beispiel: "Gib mir die A-Record-IP für www.dnssec.net." | ||
| + | |||
= Anfrage an den Root-Nameserver = | = Anfrage an den Root-Nameserver = | ||
*Der Resolver kennt die Antwort nicht und fragt einen Root-Nameserver: | *Der Resolver kennt die Antwort nicht und fragt einen Root-Nameserver: | ||
| + | |||
*"Welche Nameserver sind für .net zuständig?" | *"Welche Nameserver sind für .net zuständig?" | ||
| + | |||
= Antwort des Root-Nameservers = | = Antwort des Root-Nameservers = | ||
| − | + | ||
| − | *Enthält NS-Records für .net. | + | |
| − | *Enthält DS-Record für .net (falls .net DNSSEC nutzt). (Fragt: Enthält den Hash des Public KSK von .net zur Validierung durch die übergeordnete Zone?) | + | * Enthält NS-Records für .net. |
| − | *Enthält RRSIG für den DS-Record. (Fragt: Diese Signatur wurde mit dem privaten ZSK der Root-Zone erstellt und sichert den DS-Record ab?) | + | * Enthält DS-Record für .net (falls .net DNSSEC nutzt). (Fragt: Enthält den Hash des Public KSK von .net zur Validierung durch die übergeordnete Zone?) |
| + | * Enthält RRSIG für den DS-Record. (Fragt: Diese Signatur wurde mit dem privaten ZSK der Root-Zone erstellt und sichert den DS-Record ab?) | ||
| + | |||
= Validierung des DS-Records für .net = | = Validierung des DS-Records für .net = | ||
| − | + | ||
| + | |||
*Dazu braucht er den Public ZSK der Root-Zone. | *Dazu braucht er den Public ZSK der Root-Zone. | ||
*Falls er den ZSK nicht gecached hat, fragt er die DNSKEYs der Root-Zone ab. | *Falls er den ZSK nicht gecached hat, fragt er die DNSKEYs der Root-Zone ab. | ||
= Abfrage der Root-DNSKEYs = | = Abfrage der Root-DNSKEYs = | ||
| − | + | ||
| + | |||
*"Gib mir die DNSKEYs für . (Root)." | *"Gib mir die DNSKEYs für . (Root)." | ||
= Antwort des Root-Nameservers = | = Antwort des Root-Nameservers = | ||
| − | + | ||
| − | *Public KSK (Trust Anchor ist bereits gespeichert). | + | |
| − | *Public ZSK. | + | * Public KSK (Trust Anchor ist bereits gespeichert). |
| − | *RRSIG über die DNSKEYs (signiert mit dem privaten KSK). | + | * Public ZSK. |
| + | * RRSIG über die DNSKEYs (signiert mit dem privaten KSK). | ||
= Validierung der DNSKEYs = | = Validierung der DNSKEYs = | ||
| − | + | ||
| + | |||
*Er prüft die RRSIG der DNSKEYs mit dem Public KSK (Trust Anchor). | *Er prüft die RRSIG der DNSKEYs mit dem Public KSK (Trust Anchor). | ||
*Ist die Signatur gültig? → Public ZSK ist authentisch. | *Ist die Signatur gültig? → Public ZSK ist authentisch. | ||
= Validierung des DS-Records für .net = | = Validierung des DS-Records für .net = | ||
| − | + | ||
| + | |||
*Falls die Signatur gültig ist, geht die Namensauflösung weiter. | *Falls die Signatur gültig ist, geht die Namensauflösung weiter. | ||
= Anfrage an die .net-Nameserver = | = Anfrage an die .net-Nameserver = | ||
| − | + | ||
| + | |||
*"Welche Nameserver sind für dnssec.net autoritativ?" | *"Welche Nameserver sind für dnssec.net autoritativ?" | ||
= Antwort der .net-Nameserver = | = Antwort der .net-Nameserver = | ||
| − | + | ||
| − | *Enthält NS-Records für dnssec.net. | + | |
| − | *Enthält DS-Record für dnssec.net. (Fragt: Enthält den Hash des Public KSK von dnssec.net zur Validierung durch die übergeordnete Zone?) | + | * Enthält NS-Records für dnssec.net. |
| − | *Enthält RRSIG für den DS-Record von dnssec.net. (Fragt: Diese Signatur wurde mit dem privaten ZSK der .net-Zone erstellt und sichert den DS-Record ab?) | + | * Enthält DS-Record für dnssec.net. (Fragt: Enthält den Hash des Public KSK von dnssec.net zur Validierung durch die übergeordnete Zone?) |
| + | * Enthält RRSIG für den DS-Record von dnssec.net. (Fragt: Diese Signatur wurde mit dem privaten ZSK der .net-Zone erstellt und sichert den DS-Record ab?) | ||
= Validierung des DS-Records für dnssec.net = | = Validierung des DS-Records für dnssec.net = | ||
| − | + | ||
| + | |||
*Dazu braucht er den Public ZSK der .net-Zone. | *Dazu braucht er den Public ZSK der .net-Zone. | ||
*Falls er den ZSK nicht gecached hat, fragt er die DNSKEYs der .net-Zone ab. | *Falls er den ZSK nicht gecached hat, fragt er die DNSKEYs der .net-Zone ab. | ||
| + | |||
| + | = Abfrage der .net-DNSKEYs = | ||
| + | Der Resolver fragt den .net-Nameserver: | ||
| + | |||
| + | * "Gib mir die DNSKEYs für dnssec.net." | ||
| + | |||
| + | = Antwort des .net-Nameservers = | ||
| + | Der .net-Nameserver liefert die DNSKEYs: | ||
| + | |||
| + | * Public KSK von dnssec.net. | ||
| + | * Public ZSK von dnssec.net. | ||
| + | * RRSIG über die DNSKEYs (signiert mit dem privaten KSK von dnssec.net). | ||
| + | |||
| + | = Validierung der DNSKEYs von dnssec.net = | ||
| + | Der Resolver validiert die DNSKEYs: | ||
| + | |||
| + | * Er prüft die RRSIG der DNSKEYs mit dem Public KSK der .net-Zone. | ||
| + | * Ist die Signatur gültig? → Public ZSK von dnssec.net ist authentisch. | ||
| + | |||
| + | = Validierung des DS-Records für dnssec.net = | ||
| + | Der Resolver validiert den DS-Record von dnssec.net mit dem Public ZSK der .net-Zone: | ||
| + | |||
| + | * Falls die Signatur gültig ist, geht die Namensauflösung weiter. | ||
| + | |||
| + | = Anfrage an die dnssec.net-Nameserver = | ||
| + | Der Resolver fragt einen der dnssec.net-Nameserver: | ||
| + | |||
| + | * "Gib mir den A-Record für www.dnssec.net." | ||
| + | |||
| + | = Antwort der dnssec.net-Nameserver = | ||
| + | Der dnssec.net-Nameserver liefert: | ||
| + | |||
| + | * A-Record für www.dnssec.net. | ||
| + | * RRSIG für den A-Record (signiert mit dem privaten ZSK von dnssec.net). | ||
| + | |||
| + | = Validierung des A-Records = | ||
| + | Der Resolver validiert die Antwort: | ||
| + | |||
| + | * Er prüft die RRSIG des A-Records mit dem Public ZSK von dnssec.net. | ||
| + | * Falls die Signatur gültig ist, gibt er die IP-Adresse an den Client zurück. | ||
| + | |||
| + | = Abschluss der DNSSEC-Validierung = | ||
| + | Der Resolver hat alle Signaturen überprüft und gibt die verifizierte Antwort an den anfragenden Client zurück. | ||
| + | |||
| + | |||
= Abfrage der .net-DNSKEYs = | = Abfrage der .net-DNSKEYs = | ||
Version vom 17. März 2025, 19:39 Uhr
Anfrage des Clients
- Beispiel: "Gib mir die A-Record-IP für www.dnssec.net."
Anfrage an den Root-Nameserver
- Der Resolver kennt die Antwort nicht und fragt einen Root-Nameserver:
- "Welche Nameserver sind für .net zuständig?"
Antwort des Root-Nameservers
- Enthält NS-Records für .net.
- Enthält DS-Record für .net (falls .net DNSSEC nutzt). (Fragt: Enthält den Hash des Public KSK von .net zur Validierung durch die übergeordnete Zone?)
- Enthält RRSIG für den DS-Record. (Fragt: Diese Signatur wurde mit dem privaten ZSK der Root-Zone erstellt und sichert den DS-Record ab?)
Validierung des DS-Records für .net
- Dazu braucht er den Public ZSK der Root-Zone.
- Falls er den ZSK nicht gecached hat, fragt er die DNSKEYs der Root-Zone ab.
Abfrage der Root-DNSKEYs
- "Gib mir die DNSKEYs für . (Root)."
Antwort des Root-Nameservers
- Public KSK (Trust Anchor ist bereits gespeichert).
- Public ZSK.
- RRSIG über die DNSKEYs (signiert mit dem privaten KSK).
Validierung der DNSKEYs
- Er prüft die RRSIG der DNSKEYs mit dem Public KSK (Trust Anchor).
- Ist die Signatur gültig? → Public ZSK ist authentisch.
Validierung des DS-Records für .net
- Falls die Signatur gültig ist, geht die Namensauflösung weiter.
Anfrage an die .net-Nameserver
- "Welche Nameserver sind für dnssec.net autoritativ?"
Antwort der .net-Nameserver
- Enthält NS-Records für dnssec.net.
- Enthält DS-Record für dnssec.net. (Fragt: Enthält den Hash des Public KSK von dnssec.net zur Validierung durch die übergeordnete Zone?)
- Enthält RRSIG für den DS-Record von dnssec.net. (Fragt: Diese Signatur wurde mit dem privaten ZSK der .net-Zone erstellt und sichert den DS-Record ab?)
Validierung des DS-Records für dnssec.net
- Dazu braucht er den Public ZSK der .net-Zone.
- Falls er den ZSK nicht gecached hat, fragt er die DNSKEYs der .net-Zone ab.
Abfrage der .net-DNSKEYs
Der Resolver fragt den .net-Nameserver:
- "Gib mir die DNSKEYs für dnssec.net."
Antwort des .net-Nameservers
Der .net-Nameserver liefert die DNSKEYs:
- Public KSK von dnssec.net.
- Public ZSK von dnssec.net.
- RRSIG über die DNSKEYs (signiert mit dem privaten KSK von dnssec.net).
Validierung der DNSKEYs von dnssec.net
Der Resolver validiert die DNSKEYs:
- Er prüft die RRSIG der DNSKEYs mit dem Public KSK der .net-Zone.
- Ist die Signatur gültig? → Public ZSK von dnssec.net ist authentisch.
Validierung des DS-Records für dnssec.net
Der Resolver validiert den DS-Record von dnssec.net mit dem Public ZSK der .net-Zone:
- Falls die Signatur gültig ist, geht die Namensauflösung weiter.
Anfrage an die dnssec.net-Nameserver
Der Resolver fragt einen der dnssec.net-Nameserver:
- "Gib mir den A-Record für www.dnssec.net."
Antwort der dnssec.net-Nameserver
Der dnssec.net-Nameserver liefert:
- A-Record für www.dnssec.net.
- RRSIG für den A-Record (signiert mit dem privaten ZSK von dnssec.net).
Validierung des A-Records
Der Resolver validiert die Antwort:
- Er prüft die RRSIG des A-Records mit dem Public ZSK von dnssec.net.
- Falls die Signatur gültig ist, gibt er die IP-Adresse an den Client zurück.
Abschluss der DNSSEC-Validierung
Der Resolver hat alle Signaturen überprüft und gibt die verifizierte Antwort an den anfragenden Client zurück.
Abfrage der .net-DNSKEYs
Der Resolver fragt den .net-Nameserver:
- "Gib mir die DNSKEYs für dnssec.net."
Antwort des .net-Nameservers
Der .net-Nameserver liefert die DNSKEYs:
- Public KSK von dnssec.net. - Public ZSK von dnssec.net. - RRSIG über die DNSKEYs (signiert mit dem privaten KSK von dnssec.net).
Validierung der DNSKEYs von dnssec.net
Der Resolver validiert die DNSKEYs:
- Er prüft die RRSIG der DNSKEYs mit dem Public KSK der .net-Zone. - Ist die Signatur gültig? → Public ZSK von dnssec.net ist authentisch.
Validierung des DS-Records für dnssec.net
Der Resolver validiert den DS-Record von dnssec.net mit dem Public ZSK der .net-Zone:
- Falls die Signatur gültig ist, geht die Namensauflösung weiter.
Anfrage an die dnssec.net-Nameserver
Der Resolver fragt einen der dnssec.net-Nameserver:
- "Gib mir den A-Record für www.dnssec.net."
Antwort der dnssec.net-Nameserver
Der dnssec.net-Nameserver liefert:
- A-Record für www.dnssec.net. - RRSIG für den A-Record (signiert mit dem privaten ZSK von dnssec.net).
Validierung des A-Records
Der Resolver validiert die Antwort:
- Er prüft die RRSIG des A-Records mit dem Public ZSK von dnssec.net. - Falls die Signatur gültig ist, gibt er die IP-Adresse an den Client zurück.
Abschluss der DNSSEC-Validierung
Der Resolver hat alle Signaturen überprüft und gibt die verifizierte Antwort an den anfragenden Client zurück.