Pseudo top level domain DNSSEC
DNSSEC-Umstellung für eine Pseudo-Top-Level-Domain
Einleitung
Dieser Artikel beschreibt die Aktivierung von DNSSEC für eine Pseudo-Top-Level-Domain (TLD), die mit BIND9 verwaltet wird. DNSSEC stellt sicher, dass die Antworten des DNS-Servers authentifiziert und vor Manipulation geschützt sind.
Voraussetzungen
- Ein laufender BIND9-Nameserver, der als autoritativer DNS-Server für die Pseudo-TLD dient.
- Installation der notwendigen Werkzeuge: `dnssec-tools` oder `bind9-utils`.
- Zugriff auf das Verzeichnis `/var/cache/bind/` zur Speicherung der signierten Zonen.
Generierung der DNSSEC-Schlüssel
DNSSEC benötigt zwei Arten von Schlüsseln:
- Zone Signing Key (ZSK): Signiert die Zone und wird häufiger gewechselt.
- Key Signing Key (KSK): Signiert den ZSK und wird seltener gewechselt.
ZSK erzeugen
dnssec-keygen -a RSASHA256 -b 2048 -n ZONE int
KSK erzeugen
dnssec-keygen -a RSASHA256 -b 4096 -f KSK -n ZONE int
Die generierten Dateien sehen ungefähr so aus:
- Kint.+008+12315.key
- Kint.+008+12315.private
- Kint.+008+43144.key
- Kint.+008+43144.private
Integration der DNSSEC-Schlüssel in die Zone
Die .key-Dateien müssen in die Zonendatei /var/cache/bind/int eingebunden werden:
$INCLUDE /var/cache/bind/Kint.+008+12315.key $INCLUDE /var/cache/bind/Kint.+008+43144.key
Zonensignierung mit DNSSEC
Sobald die Schlüssel eingebunden sind, wird die Zone signiert:
dnssec-signzone -A -N INCREMENT -o int -t /var/cache/bind/int
Dies erzeugt eine signierte Datei `int.signed`.
BIND9-Konfiguration anpassen
Die Datei `/etc/bind/named.conf.local` muss angepasst werden, damit die signierte Zone verwendet wird:
zone "int" {
type master;
file "/var/cache/bind/int.signed";
allow-query { any; };
dnssec-policy default;
inline-signing yes;
};
DNSSEC in BIND9 aktivieren
In der Datei `/etc/bind/named.conf.options` folgende Einstellungen setzen:
options {
directory "/var/cache/bind";
listen-on-v6 { any; };
dnssec-validation auto;
};
Neustart von BIND9
Nach den Änderungen muss der DNS-Server neu gestartet werden:
systemctl restart bind9
Überprüfung von DNSSEC
Zur Kontrolle, ob DNSSEC korrekt funktioniert:
dig DNSKEY int @localhost +dnssec dig A www.it100.int @localhost +dnssec
Falls die Konfiguration korrekt ist, sollten RRSIG-Einträge sichtbar sein.
Fazit
Mit diesen Schritten ist die Pseudo-Top-Level-Domain mit DNSSEC abgesichert. Falls ein Slave-Server existiert, muss auch dort DNSSEC aktiviert und die signierte Zone übernommen werden.