DNS-Auftrag
Aufgabenstellung
Einrichtung des Labors:
- Ein Debian Linux-Server wird konfiguriert, um als DNS-Server zu dienen, wobei BIND (Berkeley Internet Name Domain) als Softwarelösung zum Einsatz kommt.
Konfiguration des DNS-Servers:
- Installation von BIND: Der BIND-DNS-Server wird auf dem Debian Linux-System installiert.
- Einrichtung der Zonen-Dateien: Konfiguration und Einrichtung der primären DNS-Zone für eine Domäne. Dabei wird besonderer Wert auf die Erstellung und Konfiguration der Zonendatei gelegt, einschließlich aller relevanten DNS-Einträge und des SOA (Start of Authority) Records.
- Konfiguration eines sekundären DNS-Servers: Einrichtung eines sekundären (Slave) DNS-Servers für Redundanz und zur Demonstration der automatisierten Zonensynchronisation.
Analyse und erweiterte Konfiguration:
- Analyse der DNS-Anfragen: Verwendung von Wireshark zur Aufzeichnung und Analyse der DNS-Anfragen. Dies umfasst das Verständnis der rekursiven Anfragen und der Antwortpakete.
- Erforschung verschiedener DNS-Record-Typen: Untersuchung und Erläuterung unterschiedlicher Arten von DNS-Einträgen (wie A, AAAA, MX, CNAME, TXT) und deren Anwendung.
- Dynamische DNS-Updates: Experimentieren mit dynamischen Updates von DNS-Einträgen. Nutzung von
tsig-keygen
zur Generierung sicherer Schlüssel für die Authentifizierung von Update-Anfragen.
- Integration in bestehende Netzwerkumgebungen: Einbeziehung des konfigurierten DNS-Servers in ein bestehendes Netzwerk, eventuell unter Nutzung von exotischen Betriebssystemen, um deren Kompatibilität und Funktionalität in Bezug auf DNS-Anfragen zu testen.
- Erforschung von DNS unter IPv6: Untersuchung der Besonderheiten und Konfigurationen von DNS in IPv6-Netzwerken, einschließlich Reverse-DNS.

DNS-Auftrag.excalidraw
Theorie
Aufbau der Umgebung
Konfiguration des DNS Servers (Master)
Schritt 1: Installation von BIND
Paketdatenbank aktualisieren
:aktualisieren:
sudo apt-get update
BIND Installieren:
sudo apt-get install bind9 bind9utils bind9-doc dnsutils
Schritt 2: Konfiguration von BIND
Edit the named.conf.options file:
sudo nano /etc/bind/named.conf.options
acl LAN {
192.168.1.0/26;
};
options {
directory "/var/cache/bind"; // default directory
allow-query { localhost; LAN; }; // allow queries from localhost and 192.168.1.0-192.168.1.255
forwarders { 1.1.1.1; }; // use CloudFlare 1.1.1.1 DNS as a forwarder
recursion yes; // allow recursive queries
};
named-checkconf /etc/bind/named.conf.options

Edit the named.conf.local file
sudo nano /etc/bind/named.conf.local
zone "test.local" {
type master;
file "/etc/bind/zones/db.test.local"; # Pfad zur Zonendatei
allow-transfer { 192.168.1.5; }; # IP des sekundären DNS-Servers
};
zone "1.168.192.in-addr.arpa" IN {
type master;
file "/etc/bind/zones/db.test.local.rev"; # Pfad zur Zonendatei
allow-transfer { 192.168.1.5; }; # IP des sekundären DNS-Servers
}
named-checkconf /etc/bind/named.conf.local

Zone Folder erstellen:
mkdir /etc/bind/zones
Forward Zone File erstellen:
nano /etc/bind/zones/db.test.local
$TTL 604800
@ IN SOA ns1.test.local. admin.test.local. (
3 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
;
@ IN NS ns1.test.local.
@ IN NS ns2.test.local.
ns1 IN A 192.168.1.4
ns2 IN A 192.168.1.5
router IN A 192.168.1.1
named-checkzone test.local /etc/bind/zones/db.test.local

Reverse Zone File erstellen:
nano /etc/bind/zones/db.test.local.rev
$TTL 604800
; SOA record with MNAME and RNAME updated
@ IN SOA cherry.example. root.cherry.example. (
2 ; Serial Note: increment after each change
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
; Name server record
@ IN NS ns1.test.local.
@ IN NS ns2.test.local.
; A record for name server
ns1 IN A 192.168.1.4
ns2 IN A 192.168.1.5
; PTR record for name server
4 IN PTR ns1.test.local.
5 IN PTR ns2.test.local.
; PTR record for clients
1 IN PTR router.test.local.
named-checkzone test.local /etc/bind/zones/db.test.local.rev

Bind Neustarten
systemctl restart bind9
Erweiterte Konfiguration und Analyse
Einbinden in vorhandenes Netzwerk
vogelsrv42002 - DHCP Konfiguration ändern
sudo nano /etc/dhcp/dhcpd.conf
# minimal sample /etc/dhcp/dhcpd.conf
default-lease-time 600;
max-lease-time 7200;
subnet 192.168.1.0 netmask 255.255.255.192 {
range 192.168.1.10 192.168.1.50;
option routers 192.168.1.1;
option domain-name-servers 192.168.1.4, 192.168.1.5;
}
systemctl restart isc-dhcp-server