Pseudo second level domain Basics: Unterschied zwischen den Versionen

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
 
(22 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
=Klonen des Templates=
=Klonen des Templates=
;Erstellen eines Nameservers laut Plan
;Erstellen eines Nameservers laut Plan
;Name ns.it1XX.int
;Name ns.it213.int
;Vorläufiger DNS ist der 192.168.X.88
;Vorläufiger DNS ist der 192.168.X.88
;Der Server ist autoritativ UND rekursiv validierend
;Der Server ist autoritativ UND rekursiv


=Installation=
=Installation=
*apt install bind9 bind9-utils
*apt update
*apt install bind9 bind9-utils bind9-dnsutils


=Auf den Nameservern=
=Auf den Nameservern=
Zeile 15: Zeile 16:
options {
options {
         directory "/var/cache/bind";
         directory "/var/cache/bind";
         forwarders { 192.168.X.88; };
         forwarders { 192.168.X.88; };
         empty-zones-enable no;
         empty-zones-enable no;
         recursion yes;
         recursion yes;
        dnssec-validation auto;
         allow-query { any; };
         allow-query { any; };
        allow-transfer { 127.0.0.1; };
        dnssec-validation no;
};
};
</pre>
</pre>
==Trust-Anker für Fake Root (.int)==
;KSK der Zone int vom Fake Root ermitteln
*dig DNSKEY int @192.168.X.88 +short
;Nur der Key mit Kennung 257 3 13 wird verwendet
;Eintragen in /etc/bind/named.conf.options
<pre>
managed-keys {
  int. initial-key 257 3 13 "BASE64-KSK-VON-INT-HIER-EINFÜGEN";
};
</pre>
*systemctl restart bind9


==Zonenfestlegung==
==Zonenfestlegung==
*cat /etc/bind/named.conf.local
*cat /etc/bind/named.conf.local
<pre>
<pre>
zone "it113.int" IN {
zone "it213.int" IN {
     type master;
     type master;
     file "it113.int.signed";
     file "it213.int";
};
};


zone "113.88.10.in-addr.arpa" IN {
zone "213.88.10.in-addr.arpa" IN {
     type master;
     type master;
     file "113.88.10.in-addr.arpa.signed";
     file "213.88.10.in-addr.arpa";
};
};
</pre>
</pre>


=Zonen selbst (unsigniert)=
=Zonen selbst=


*cat /var/cache/bind/it113.int
*cat /var/cache/bind/it213.int
<pre>
<pre>
$TTL 300
$TTL 300
@          IN SOA  ns.it113.int. technik.xinux.de. (
@          IN SOA  ns.it213.int. technik.xinux.de. (
                         2011090204
                         2011090204
                         14400
                         14400
Zeile 68: Zeile 52:
                     )
                     )
         IN NS      ns
         IN NS      ns
ns     IN A      10.88.113.21
        IN MX 10  mail
www    IN A      10.88.113.22
 
ns       IN A      10.88.213.21
www       IN A      10.88.213.11
mail      IN A      10.88.213.3
fw        IN A      10.88.213.1
proxy     IN A      10.88.213.4
checkmk  IN A      10.88.213.5
revproxy  IN A      10.88.213.41
nextcloud IN A      10.88.213.8
docker    IN A      10.88.213.9
</pre>
</pre>


*cat /var/cache/bind/113.88.10.in-addr.arpa
*cat /var/cache/bind/213.88.10.in-addr.arpa
<pre>
<pre>
$TTL 300
$TTL 300
@          IN SOA  ns.it113.int. technik.xinux.de. (
@          IN SOA  ns.it213.int. technik.xinux.de. (
                         2011090204
                         2011090204
                         14400
                         14400
Zeile 82: Zeile 75:
                         86400
                         86400
                     )
                     )
         IN NS      ns.it113.int.
         IN NS      ns.it213.int.
21      IN PTR    ns.it113.int.
22      IN PTR    www.it113.int.
</pre>
 
=DNSSEC Schlüssel erzeugen=
 
;Forward Zone
*dnssec-keygen -a RSASHA256 -b 2048 -n ZONE it113.int
*dnssec-keygen -a RSASHA256 -b 4096 -f KSK -n ZONE it113.int
 
;Reverse Zone
*dnssec-keygen -a RSASHA256 -b 2048 -n ZONE 113.88.10.in-addr.arpa
*dnssec-keygen -a RSASHA256 -b 4096 -f KSK -n ZONE 113.88.10.in-addr.arpa
 
=DNSKEY einbinden=
 
;Forward
*for k in Kit113.int*.key ; do echo "\$INCLUDE /var/cache/bind/$k" >> /var/cache/bind/it113.int; done


;Reverse
1      IN PTR    fw.it213.int.
*for k in K113.88.10.in-addr.arpa*.key ; do echo "\$INCLUDE /var/cache/bind/$k" >> /var/cache/bind/113.88.10.in-addr.arpa; done
21      IN PTR    ns.it213.int.
 
11      IN PTR    www.it213.int.
=Zonen signieren=
3      IN PTR    mail.it213.int.
 
4      IN PTR    proxy.it213.int.
*dnssec-signzone -A -N INCREMENT -o it113.int -t /var/cache/bind/it113.int
5      IN PTR    checkmk.it213.int.
*dnssec-signzone -A -N INCREMENT -o 113.88.10.in-addr.arpa -t /var/cache/bind/113.88.10.in-addr.arpa
8      IN PTR    nextcloud.it213.int.
 
9      IN PTR    docker.it213.int.
;Erzeugt
41      IN PTR    revproxy.it213.int.
<pre>
/var/cache/bind/it113.int.signed
/var/cache/bind/113.88.10.in-addr.arpa.signed
</pre>
</pre>


*systemctl restart bind9
=Server starten=
 
*systemctl restart named
=DS Record für Fake Root erzeugen=
 
;KSK anzeigen
*dig DNSKEY it113.int @127.0.0.1 +short
 
;DS erzeugen
*dnssec-dsfromkey Kit113.int.+008+XXXXX.key
 
;DS Eintrag an Fake Root weitergeben
;Im Fake Root in Zone int einfügen
;Beispiel:
;it113    IN DS  12345 13 2 ABCDEF123456....
 
=Handling und Logging=
*systemctl restart bind9
*journalctl -fu bind9
*journalctl -u bind9 -g it113.int
 
=Validierungstest=
 
;Forward Validierung
*dig www.it113.int +dnssec


;Antwort muss AD-Flag enthalten
=Test=
==journactl==
;Fortlaufend die letzten 10 Einträge
*journalctl -fu named
;Die letzten 20 Einträge
*journalctl -n 20 -u  named
;Grep nach it213.int
*journalctl  -u  named -g it213.int
==dig==
;Forwardlookup eigener Nameserver wird gefragt
*dig @127.0.0.1 -t a www.it213.int
;Welcher Mailserver ist für die Zone zuständig
*dig @127.0.0.1 -t mx it213.int
;Reverse Lookup
*dig @127.0.0.1 -x 10.88.213.21
;Zonen abziehen
*dig @127.0.0.1 -t axfr it213.int
*dig @127.0.0.1 -t axfr 213.88.10.in-addr.arpa
;Fakeroot Nameserver abfragen
*dig @192.168.9.88 -t a mail.it213.int
=Eigenen Nameserver eintragen=
*cat /etc/resolv.conf
search it213.int
nameserver 127.0.0.1

Aktuelle Version vom 17. März 2026, 08:06 Uhr

Klonen des Templates

Erstellen eines Nameservers laut Plan
Name ns.it213.int
Vorläufiger DNS ist der 192.168.X.88
Der Server ist autoritativ UND rekursiv

Installation

  • apt update
  • apt install bind9 bind9-utils bind9-dnsutils

Auf den Nameservern

Optionen

  • cat /etc/bind/named.conf.options
options {
        directory "/var/cache/bind";
        forwarders { 192.168.X.88; };
        empty-zones-enable no;
        recursion yes;
        allow-query { any; };
        allow-transfer { 127.0.0.1; };
        dnssec-validation no;
};

Zonenfestlegung

  • cat /etc/bind/named.conf.local
zone "it213.int" IN {
     type master;
     file "it213.int";
};

zone "213.88.10.in-addr.arpa" IN {
     type master;
     file "213.88.10.in-addr.arpa";
};

Zonen selbst

  • cat /var/cache/bind/it213.int
$TTL 300
@           IN SOA  ns.it213.int. technik.xinux.de. (
                        2011090204
                        14400
                        3600
                        3600000
                        86400
                    )
        IN NS      ns
        IN MX 10   mail

ns        IN A       10.88.213.21
www       IN A       10.88.213.11
mail      IN A       10.88.213.3
fw        IN A       10.88.213.1
proxy     IN A       10.88.213.4
checkmk   IN A       10.88.213.5
revproxy  IN A       10.88.213.41
nextcloud IN A       10.88.213.8
docker    IN A       10.88.213.9
  • cat /var/cache/bind/213.88.10.in-addr.arpa
$TTL 300
@           IN SOA  ns.it213.int. technik.xinux.de. (
                        2011090204
                        14400
                        3600
                        3600000
                        86400
                    )
        IN NS      ns.it213.int.

1       IN PTR     fw.it213.int.
21      IN PTR     ns.it213.int.
11      IN PTR     www.it213.int.
3       IN PTR     mail.it213.int.
4       IN PTR     proxy.it213.int.
5       IN PTR     checkmk.it213.int.
8       IN PTR     nextcloud.it213.int.
9       IN PTR     docker.it213.int.
41      IN PTR     revproxy.it213.int.

Server starten

  • systemctl restart named

Test

journactl

Fortlaufend die letzten 10 Einträge
  • journalctl -fu named
Die letzten 20 Einträge
  • journalctl -n 20 -u named
Grep nach it213.int
  • journalctl -u named -g it213.int

dig

Forwardlookup eigener Nameserver wird gefragt
  • dig @127.0.0.1 -t a www.it213.int
Welcher Mailserver ist für die Zone zuständig
  • dig @127.0.0.1 -t mx it213.int
Reverse Lookup
  • dig @127.0.0.1 -x 10.88.213.21
Zonen abziehen
  • dig @127.0.0.1 -t axfr it213.int
  • dig @127.0.0.1 -t axfr 213.88.10.in-addr.arpa
Fakeroot Nameserver abfragen
  • dig @192.168.9.88 -t a mail.it213.int

Eigenen Nameserver eintragen

  • cat /etc/resolv.conf
search it213.int
nameserver 127.0.0.1