Linux - Netzwerk und Serveradminstration DNS

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen

eigener DNS Server

Pseudo Top-Level-Domain

Pseudo-Top-Level Domäne

  • Um die Domänen der anderen Labore aufzulösen ist ein Forwarder nötig
  • Dieser zeigt auf den entsprechenden DNS-Server der Domäne, sodass die Zonen nur einmal definiert werden müssen

Vorbereitungen

  • VirtualBox Server-Vorlage mit neuen MAC-Adressen klonen
  • Der Host soll im DMZ-Netzwerk liegen
  • IP-Adresse herausfinden über das DHCP-Log oder die Konsol
  • statische IP-Adresse nach dem Netzwerkplan setzen (/etc/network/interfaces)
  • Hostname ändern zu ns
  • SSH-Server anpassen
  • SSH-Schlüssel des Kit Hosts für User kit hinterlegen

Netzkonfiguration DNS-Server (DMZ)

Parameter Wert Erläuterung
Netzwerk (NIC) DMZ Interface-Zuweisung in VirtualBox
IP 10.88.2XX.21 Statische IP
CIDR 24 Classless Inter-Domain Routing Präfixlänge
GW 10.88.2XX.1 GATEWAY
NS 192.168.6.88 Resolver
FQDN ns.it2XX.int Fully Qualified Domain Name
SHORT ns Short Name
DON it21XX.int Domain Name

Anpassen des Templates

JumpHost

Auf dem KIT Host anfügen
  • vim ~/.ssh/config
Host ns
 Hostname 10.88.2XX.21
 ProxyJump kit@fw
PubKey Übertragung
  • ssh-copy-id ns

Danach könnt ihr euch mit ssh servername passswortlos einlogen

Installation

  • apt install bind9

DNS Umsetzung

Installation

  • apt install bind9

Stop

  • systemctl stop named

Start

  • systemctl start named

Restart

  • systemctl restart named

Status

  • systemctl status named


Hauptkonfiguration

Standardmäßig ist die Konfiguration von bind9 auf mehrere Dateien aufgeteilt:

/etc/bind/named.conf

#Diese Datei inkludiert einfach nur die anderen 3 Dateien

Allgemeine Option zum Nameserver

include "/etc/bind/named.conf.options";

Hier kommen die eignen Zonen rein

include "/etc/bind/named.conf.local";

Hier die Default Zonen

include "/etc/bind/named.conf.default-zones";

/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.16.2xx.0/24; 172.17.2xx.0/24; 172.20.2xx.0/24; 127.0.0.1; };
  allow-transfer {127.0.0.1; };
  dnssec-validation no;
  listen-on-v6 { none; };
  listen-on { any; };
};

Erklärungen

allow-query { 0.0.0.0/0; };
  • Diese Rechner dürfen den Nameserver nach dem von ihm verwalteten Zonen befragen.
allow-recursion { 10.88.2xx.0/24; 172.16.2xx.0/24; 172.17.2xx.0/24; 172.20.2xx.0/24; 127.0.0.1; };
  • Diese Rechner dürfen den Nameserver nach Einträgen befragen die er nicht selbst beantworten kann.
allow-transfer {127.0.0.1; };
  • Diese Rechner dürfen einen axfr Abfrage durchführen.

Testen

  • named-checkconf

Restart

  • systemctl restart named

Konfigurations

/etc/bind/named.conf.default-zones

#Standardzonen
zone "." {
  type hint;
  file "/usr/share/dns/root.hints";
};
zone "localhost" {
  type master;
  file "/etc/bind/db.local";
};
zone "127.in-addr.arpa" {
  type master;
  file "/etc/bind/db.127";
};
zone "0.in-addr.arpa" {
  type master;
  file "/etc/bind/db.0";
};
zone "255.in-addr.arpa" {
  type master;
  file "/etc/bind/db.255";
};

/etc/bind/named.conf.local

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

Konfigurationsverzeichnis

/var/cache/bind

Forward Zonen Datei ohne Secundary DNS

  • Die Zonendatei enthält die Informationen zu den Adressen, und sieht folgendermaßen aus:
  • vi /var/cache/bind/it2xx.int
$TTL 300        ; 5 minutes
@                       IN SOA  ns.it2xx.int. technik.it2xx.int. (
                               2025062501 ; serial
                               14400      ; refresh (4 hours)
                               3600       ; retry (1 hour)
                               3600000    ; expire (5 weeks 6 days 16 hours)
                               86400      ; minimum (1 day)
                               )
                       NS      ns.it2xx.int.
                       MX 10   mail.it2xx.int.     
ns                     IN      A       10.88.2xx.21
sftp                   IN      A       10.88.2xx.4
mail                   IN      A       10.88.2xx.34
www                    IN      A       10.88.2xx.41
proxy		       IN      A       10.88.2xx.51
haproxy		       IN      A       10.88.2xx.52
smb		       IN      A       172.16.2xx.2  
fw                     IN      A       10.88.2xx.1
kali                   IN      A       10.88.2xx.71
ldap                   IN      A       10.88.2xx.37

Check

  • named-checkzone it213.int /var/cache/bind/it213.int
zone it213.int/IN: loaded serial 2011090204
OK

Reverse Zonen Datei

  • vi /var/cache/bind/2xx.88.10.in-addr.arpa
$TTL 300        ; 5 minutes
@                       IN SOA  ns.it2xx.int. technik.it2xx.int. (
                               2025062501 ; serial
                               14400      ; refresh (4 hours)
                               3600       ; retry (1 hour)
                               3600000    ; expire (5 weeks 6 days 16 hours)
                               86400      ; minimum (1 day)
                               )
                       IN      NS      ns.it2xx.int.
21                     IN      PTR     ns.it2xx.int.
4                      IN      PTR     sftp.it2xx.int.
1                      IN      PTR     fw.it2xx.int.
34                     IN      PTR     mail.it2xx.int.
37                     IN      PTR     ldap.it2xx.int.
41                     IN      PTR     www.it2xx.int.
51                     IN      PTR     proxy.it2xx.int.
52                     IN      PTR     haproxy.it2xx.int.
71                     IN      PTR     kali.it2xx.int.

Check

  • named-checkzone 213.88.10.in-addr.arpa /var/cache/bind/213.88.10.in-addr.arpa
zone 213.88.10.in-addr.arpa/IN: loaded serial 2011090204
OK

Restart

  • systemctl restart named

Finaler Check

Zone
  • dig @127.0.0.1 it213.int -t axfr
Reverse Zone
  • dig @127.0.0.1 213.88.10.in-addr.arpa -t axfr

ändern der /etc/resolv.conf

nameserver 127.0.0.1
search it2xx.int

Logs

Aktualisierte Log von named
  • journalctl -fu named
Die letzten 20 Log Zeilen vom named
  • journalctl -n 20 -u named

Sind die Ports geöffnet

  • ss -lntpu | grep named

Tests

DNS Aufgabe Reverse Lookup Zone LAN & SERVERS