Pseudo second level domain von Basics zu DNSEC: Unterschied zwischen den Versionen

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen
Zeile 32: Zeile 32:
 
</pre>
 
</pre>
 
=DNSSEC Schlüssel erzeugen=
 
=DNSSEC Schlüssel erzeugen=
 
 
;Forward Zone
 
;Forward Zone
*dnssec-keygen -a RSASHA256 -b 2048 -n ZONE it2XX.int
+
*dnssec-keygen -a ECDSAP256SHA256 -n ZONE it2XX.int
*dnssec-keygen -a RSASHA256 -b 4096 -f KSK -n ZONE it2XX.int
+
*dnssec-keygen -a ECDSAP256SHA256 -f KSK -n ZONE it2XX.int
 
=DNSKEY einbinden=
 
=DNSKEY einbinden=
 
 
;Forward
 
;Forward
 
*for k in Kit2XX.int.+*.key ; do echo "\$INCLUDE $k" >> /var/cache/bind/it2XX.int; done
 
*for k in Kit2XX.int.+*.key ; do echo "\$INCLUDE $k" >> /var/cache/bind/it2XX.int; done
 
 
=Zonen signieren=
 
=Zonen signieren=
 
 
*dnssec-signzone -A -N INCREMENT -o it2XX.int -t /var/cache/bind/it2XX.int
 
*dnssec-signzone -A -N INCREMENT -o it2XX.int -t /var/cache/bind/it2XX.int
 
 
;Erzeugt
 
;Erzeugt
 
<pre>
 
<pre>
 
/var/cache/bind/it2XX.int.signed
 
/var/cache/bind/it2XX.int.signed
 
</pre>
 
</pre>
 
 
*systemctl restart named
 
*systemctl restart named
 
=DS Record für Fake Root erzeugen=
 
=DS Record für Fake Root erzeugen=
 
 
;DS aus signierter Zone erzeugen
 
;DS aus signierter Zone erzeugen
 
*dnssec-dsfromkey -f /var/cache/bind/it2XX.int.signed it2XX.int
 
*dnssec-dsfromkey -f /var/cache/bind/it2XX.int.signed it2XX.int
 
 
;DS Eintrag an Fake Root weitergeben
 
;DS Eintrag an Fake Root weitergeben
 
;Im Fake Root in Zone int einfügen
 
;Im Fake Root in Zone int einfügen
 
 
;Beispiel:
 
;Beispiel:
 
;it2XX      IN NS ns.it2XX.int.
 
;it2XX      IN NS ns.it2XX.int.
 
;ns.it2XX.int. IN A 10.88.2XX.21
 
;ns.it2XX.int. IN A 10.88.2XX.21
;it2XX.int. IN DS 12345 8 2 ABCDEF123456....
+
;it2XX.int. IN DS 12345 13 2 ABCDEF123456....
 
 
 
;Danach Fake Root neu signieren
 
;Danach Fake Root neu signieren
 
*cd /var/cache/bind
 
*cd /var/cache/bind
 
*dnssec-signzone -A -N INCREMENT -o int int
 
*dnssec-signzone -A -N INCREMENT -o int int
 
*rndc reload
 
*rndc reload
 
 
=Handling und Logging=
 
=Handling und Logging=
 
*systemctl restart bind9
 
*systemctl restart bind9
 
*journalctl -fu bind9
 
*journalctl -fu bind9
 
*journalctl -u bind9 -g it2XX.int
 
*journalctl -u bind9 -g it2XX.int
 
 
=Validierungstest=
 
=Validierungstest=
 
 
;Forward Validierung
 
;Forward Validierung
 
*dig www.it2XX.int +dnssec
 
*dig www.it2XX.int +dnssec
 
 
;Antwort muss AD-Flag enthalten
 
;Antwort muss AD-Flag enthalten
 
 
=Status=
 
=Status=
 
*systemctl status named
 
*systemctl status named
 
 
=Logs=
 
=Logs=
 
;Aktualisierte Log von named
 
;Aktualisierte Log von named
Zeile 91: Zeile 75:
 
;Aktualisierte Log von named plus grepen nach it2XX
 
;Aktualisierte Log von named plus grepen nach it2XX
 
*journalctl -fu named -g it2XX
 
*journalctl -fu named -g it2XX
 
 
=Sind die Ports geöffnet=
 
=Sind die Ports geöffnet=
 
*ss -lntpu | grep named
 
*ss -lntpu | grep named
 
 
=Tests=
 
=Tests=
 
*[[host]]
 
*[[host]]
 
*[[dig]]
 
*[[dig]]
 
*[[nslookup]]
 
*[[nslookup]]

Version vom 2. Juni 2026, 14:32 Uhr

Trust Anker einfügen

/etc/bind/named.conf.options

Berechtigungen und Einschränkungen

options {
  directory "/var/cache/bind";
  forwarders { <DNSGW>; };
  allow-query { 0.0.0.0/0; };
  allow-recursion { 10.88.2XX.0/24; 172.26.2XX.0/24; 10.2XX.1.0/24; 172.20.2XX.0; 127.0.0.1; };
  allow-transfer {127.0.0.1; };
  dnssec-validation yes;
  empty-zones-enable no;
  listen-on-v6 { none; };
  listen-on { any; };
};

/etc/bind/named.conf.local

 //Standardmässig leer
 //Hier werden die sogenanten Zonen angelegt.
 zone "it2XX.int" {
        type master;
        file "it2XX.int.signed";
        };
  zone "2XX.88.10.in-addr.arpa" {
        type master;
        file "2XX.88.10.in-addr.arpa";
      };

DNSSEC Schlüssel erzeugen

Forward Zone
  • dnssec-keygen -a ECDSAP256SHA256 -n ZONE it2XX.int
  • dnssec-keygen -a ECDSAP256SHA256 -f KSK -n ZONE it2XX.int

DNSKEY einbinden

Forward
  • for k in Kit2XX.int.+*.key ; do echo "\$INCLUDE $k" >> /var/cache/bind/it2XX.int; done

Zonen signieren

  • dnssec-signzone -A -N INCREMENT -o it2XX.int -t /var/cache/bind/it2XX.int
Erzeugt
/var/cache/bind/it2XX.int.signed
  • systemctl restart named

DS Record für Fake Root erzeugen

DS aus signierter Zone erzeugen
  • dnssec-dsfromkey -f /var/cache/bind/it2XX.int.signed it2XX.int
DS Eintrag an Fake Root weitergeben
Im Fake Root in Zone int einfügen
Beispiel
it2XX IN NS ns.it2XX.int.
ns.it2XX.int. IN A 10.88.2XX.21
it2XX.int. IN DS 12345 13 2 ABCDEF123456....
Danach Fake Root neu signieren
  • cd /var/cache/bind
  • dnssec-signzone -A -N INCREMENT -o int int
  • rndc reload

Handling und Logging

  • systemctl restart bind9
  • journalctl -fu bind9
  • journalctl -u bind9 -g it2XX.int

Validierungstest

Forward Validierung
  • dig www.it2XX.int +dnssec
Antwort muss AD-Flag enthalten

Status

  • systemctl status named

Logs

Aktualisierte Log von named
  • journalctl -fu named
Die letzten 20 Log Zeilen vom named
  • journalctl -n 20 -u named
Aktualisierte Log von named plus grepen nach it2XX
  • journalctl -fu named -g it2XX

Sind die Ports geöffnet

  • ss -lntpu | grep named

Tests