Linuxhotel Wiki

Wie ging das nochmal?

Benutzer-Werkzeuge

Webseiten-Werkzeuge


lpi2:bind-dnssec

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen gezeigt.

Link zu der Vergleichsansicht

Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung
Nächste Überarbeitung
Vorherige Überarbeitung
lpi2:bind-dnssec [2014/02/19 18:17]
ingo_wichmann
lpi2:bind-dnssec [2021/06/05 05:28]
ingo_wichmann [DS-Record hinterlegen]
Zeile 1: Zeile 1:
 ====== dig ====== ====== dig ======
 Aktuelle root-keys herunterladen:​ Aktuelle root-keys herunterladen:​
-  dig . DNSKEY | grep -Ev '​^($|;​)'​ > root.keys+  dig . DNSKEY | egrep -'​^($|;​)'​ > root.keys
  
 Nameserver abfragen: Nameserver abfragen:
Zeile 14: Zeile 14:
  
 ====== Eigene Zone signieren ====== ====== Eigene Zone signieren ======
-  ​cd /var/lib/named+===== von Hand signieren ===== 
 +Debian: 
 +  ​cd /var/cache/bind 
 +  mkdir keys 
 +  chown bind keys 
 + 
 +key-signing key (KSK) erzeugen: (grösserer Schlüssel und KSK-Flag) ((Kann auf einer virtuellen Maschine recht lange dauern. Stichwort: Entropie. Tip: [[http://​www.issihosts.com/​haveged/​|haveged]] ))  
 + 
 +  dnssec-keygen -a RSASHA256 -b 2560 -n ZONE -K keys/ -f KSK example.com 
 +  ls keys/​Kexample.com.* 
 + 
 +-> Schlüssel ID-Nummer von KSK ZSK notieren (5-stellige Nummer)
  
 zone-signing key erzeugen: zone-signing key erzeugen:
-((Kann auf einer virtuellen Maschine recht lange dauernStichwort: EntropieTip: haveged)) ​+  dnssec-keygen -a RSASHA256 -b 2048 -n ZONE -K keys/ example.com 
 +  ls keys/​Kexample.com.* 
 +  less keys/​Kexample.com.*.key
  
-  dnssec-keygen ​-a RSASHA256 ​-b 1024 -n ZONE example.com +-> Schlüssel ID-Nummer von ZSK notieren (5-stellige Nummer)
-  ls Kexample.com.* +
-  less Kexample.com.*.key+
  
-key-signing key erzeugen+Rechte auf den Schlüsseldateien anpassen
-  ​dnssec-keygen -a RSASHA256 -b 4096 -f KSK -n ZONE example.com +  ​chown bind keys/*
-  ls Kexample.com.*+
  
-Öffentliche ​Schlüssen ​zu Zone hinzufügen:​ +Öffentliche ​Schlüssel ​zu Zone hinzufügen:​ 
-  cat Kexample.com.+008+*.key >> example.com+  cat keys/Kexample.com.+008+*.key >> ​master/example.com
  
 Signierte Zonendatei erzeugen: (30 Tage gültig) Signierte Zonendatei erzeugen: (30 Tage gültig)
-  dnssec-signzone -o example.com -k Kexample.com.+008+52216.private example.com Kexample.com.+008+12678.private +  dnssec-signzone -o example.com -k keys/Kexample.com.+008+${KSK-ID}.private ​master/example.com ​keys/Kexample.com.+008+${ZSK-ID}.private 
-  less example.com.signed+  chown bind:bind master/​example.com.signed 
 +  less master/example.com.signed 
 + 
 +Signierte Zonendatei einbinden:​ 
 +<file txt /​etc/​bind/​named.conf.local>​ 
 +zone "​example.com"​ { 
 +… 
 +  file "​master/​example.com.signed";​ 
 +… 
 +}; 
 +</​file>​ 
 + 
 +Konfiguration prüfen und BIND 9 neu laden: 
 +  named-checkconf -z 
 +  rndc reload 
 + 
 +Testen: 
 +  dig @localhost example.com SOA +dnssec +mu 
 +-> muss RRSIG enthalten 
 + 
 +===== DS-Record hinterlegen ===== 
 + 
 +{{:​lpi2:​ds-dnskey.png?​400|}} 
 + 
 + 
 +DS-Record erstellen:​ 
 +  dnssec-dsfromkey keys/​Kexample.com.+008+${KSK-ID}.key 
 +  dnssec-dsfromkey keys/​Kexample.com.+008+${KSK-ID}.key > ~/​ds-example.com 
 + 
 +Eintrag bei Registry bzw. übergeordneter Domain hinterlegen 
 + 
 +Testen: 
 +  dig @1.1.1.1 soa example.com +dnssec +mu 
 +-> ad-Flag muss gesetzt sein 
 + 
 +===== bind automatisch ZSK signieren lassen ===== 
 +Debian: 
 +  cd /​var/​cache/​bind 
 + 
 +Schritte wie bei [[#von Hand signieren]],​ aber signierte Zonendatei nicht mehr (selbst) erzeugen, sondern ab da folgende Schritte: 
 + 
 +Zonendatei von bind signieren lassen: 
 +<file txt /​etc/​bind/​named.conf.local>​ 
 +zone "​example.com"​ { 
 +… 
 +  file "​master/​example.com";​ 
 +  auto-dnssec maintain; 
 +  inline-signing yes; 
 +… 
 +}; 
 +</​file>​ 
 + 
 +Konfiguration prüfen und BIND 9 neu laden: 
 +  named-checkconf -z 
 +  rndc reconfig 
 + 
 +Zone (erstmalig) signieren:​ 
 +  rndc sign example.com 
 + 
 +Testen: 
 +  dig @localhost example.com SOA +dnssec +mu 
 +-> muss RRSIG enthalten 
  
-Todo:+  rndc sync linuxhotel.de 
 +  named-compilezone -f RAW -o - example.com master/​example.com.signed | less
  
-  * Diesen Server als hidden primary konfigurieren 
-  * wöchentlichen cron-job zum Signieren anlegen 
-  * Bind 9.9 kann seine Zonen selbst signieren. 
  
 ====== Doku und Links ====== ====== Doku und Links ======
   * http://​dnssectest.sidnlabs.nl/​   * http://​dnssectest.sidnlabs.nl/​
   * http://​test.dnssec-or-not.org/​   * http://​test.dnssec-or-not.org/​
-  * file://​usr/​share/​doc/​bind9-doc/​arm/​Bv9ARM.ch04.html#​DNSSEC+  * file:///​usr/​share/​doc/​bind9-doc/​arm/​Bv9ARM.ch04.html#​DNSSEC
  
lpi2/bind-dnssec.txt · Zuletzt geändert: 2021/06/05 05:28 von ingo_wichmann