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

Nächste Überarbeitung
Vorherige Überarbeitung
lpi2:bind-dnssec [2014/02/14 19:06]
ingo_wichmann angelegt
lpi2:bind-dnssec [2021/06/05 05:28] (aktuell)
ingo_wichmann [DS-Record hinterlegen]
Zeile 1: Zeile 1:
 +====== dig ======
 Aktuelle root-keys herunterladen:​ Aktuelle root-keys herunterladen:​
-  dig . DNSKEY | grep -Ev '​^($|;​)'​ > root.keys+  dig . DNSKEY | egrep -'​^($|;​)'​ > root.keys
  
 Nameserver abfragen: Nameserver abfragen:
   dig +sigchase +trusted-key=./​root.keys www.isc.org A @127.0.0.1   dig +sigchase +trusted-key=./​root.keys www.isc.org A @127.0.0.1
  
 +====== Eigenen Resolver testen ======
 +  dig org. SOA +dnssec
 +-> flags: ad
 +
 +  dig test.dnssec-or-not.net TXT @localhost
 +-> "Yes, you are using DNSSEC"​
 +
 +====== Eigene Zone signieren ======
 +===== 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:
 +  dnssec-keygen -a RSASHA256 -b 2048 -n ZONE -K keys/ example.com
 +  ls keys/​Kexample.com.*
 +  less keys/​Kexample.com.*.key
 +
 +-> Schlüssel ID-Nummer von ZSK notieren (5-stellige Nummer)
 +
 +Rechte auf den Schlüsseldateien anpassen:
 +  chown bind keys/*
 +
 +Öffentliche Schlüssel zu Zone hinzufügen:​
 +  cat keys/​Kexample.com.+008+*.key >> master/​example.com
 +
 +Signierte Zonendatei erzeugen: (30 Tage gültig)
 +  dnssec-signzone -o example.com -k keys/​Kexample.com.+008+${KSK-ID}.private master/​example.com keys/​Kexample.com.+008+${ZSK-ID}.private
 +  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
 +
 +
 +  rndc sync linuxhotel.de
 +  named-compilezone -f RAW -o - example.com master/​example.com.signed | less
 +
 +
 +====== Doku und Links ======
 +  * http://​dnssectest.sidnlabs.nl/​
 +  * http://​test.dnssec-or-not.org/​
 +  * file:///​usr/​share/​doc/​bind9-doc/​arm/​Bv9ARM.ch04.html#​DNSSEC
  
lpi2/bind-dnssec.1392404773.txt.gz · Zuletzt geändert: 2014/02/14 19:06 von ingo_wichmann