Linux - Netzwerk und Serveradminstration DNS: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
| (27 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
| Zeile 1: | Zeile 1: | ||
| − | = | + | =Vorab Theorie= |
| + | * [[DNS Grundlagen]] | ||
| + | * [[DNS Records]] | ||
| + | * [[DNS Master - Slave - Forward]] | ||
| + | |||
| + | |||
| + | = Eigener DNS Server = | ||
{{#drawio:5102-dns}} | {{#drawio:5102-dns}} | ||
=Pseudo Top-Level-Domain= | =Pseudo Top-Level-Domain= | ||
| Zeile 75: | Zeile 81: | ||
forwarders { <DNSGW>; }; | forwarders { <DNSGW>; }; | ||
allow-query { 0.0.0.0/0; }; | allow-query { 0.0.0.0/0; }; | ||
| − | allow-recursion { 10.88. | + | allow-recursion { 10.88.2XX.0/24; 172.26.2XX.0/24; 10.2XX.1.0/24; 127.0.0.1; }; |
allow-transfer {127.0.0.1; }; | allow-transfer {127.0.0.1; }; | ||
dnssec-validation no; | dnssec-validation no; | ||
| Zeile 85: | Zeile 91: | ||
;allow-query { 0.0.0.0/0; }; | ;allow-query { 0.0.0.0/0; }; | ||
*Diese Rechner dürfen den Nameserver nach dem von ihm verwalteten Zonen befragen. | *Diese Rechner dürfen den Nameserver nach dem von ihm verwalteten Zonen befragen. | ||
| − | ;allow-recursion { 10.88. | + | ;allow-recursion { 10.88.2XX.0/24; 172.26.2XX.0/24; 10.2XX.1.0/24; 127.0.0.1; }; |
*Diese Rechner dürfen den Nameserver nach Einträgen befragen die er nicht selbst beantworten kann. | *Diese Rechner dürfen den Nameserver nach Einträgen befragen die er nicht selbst beantworten kann. | ||
;allow-transfer {127.0.0.1; }; | ;allow-transfer {127.0.0.1; }; | ||
| Zeile 142: | Zeile 148: | ||
<pre> | <pre> | ||
$TTL 300 ; 5 minutes | $TTL 300 ; 5 minutes | ||
| − | @ IN SOA ns. | + | @ IN SOA ns.it2XX.int. technik.it2XX.int. ( |
2025062501 ; serial | 2025062501 ; serial | ||
14400 ; refresh (4 hours) | 14400 ; refresh (4 hours) | ||
| Zeile 151: | Zeile 157: | ||
NS ns.it2xx.int. | NS ns.it2xx.int. | ||
MX 10 mail.it2xx.int. | MX 10 mail.it2xx.int. | ||
| − | + | fw IN A 10.88.2XX.1 | |
| − | + | ns IN A 10.88.2XX.21 | |
| − | + | sftp IN A 10.88.2XX.3 | |
| − | + | proxy IN A 10.88.2XX.4 | |
| − | proxy | + | ntp IN A 10.88.2XX.17 |
| − | + | dhcp IN A 172.26.2XX.2 | |
| − | + | smb IN A 10.2XX.1.2 | |
| − | + | ldap IN A 10.2XX.1.3 | |
| − | |||
| − | ldap | ||
</pre> | </pre> | ||
| Zeile 169: | Zeile 173: | ||
=Reverse Zonen Datei= | =Reverse Zonen Datei= | ||
| − | *vi /var/cache/bind/ | + | *vi /var/cache/bind/2XX.88.10.in-addr.arpa |
| − | $TTL | + | $TTL 1 |
| − | @ IN SOA ns. | + | @ IN SOA ns.it2XX.int. technik.it2XX.int. ( |
2025062501 ; serial | 2025062501 ; serial | ||
14400 ; refresh (4 hours) | 14400 ; refresh (4 hours) | ||
| Zeile 178: | Zeile 182: | ||
86400 ; minimum (1 day) | 86400 ; minimum (1 day) | ||
) | ) | ||
| − | IN NS ns. | + | IN NS ns.it2XX.int. |
| − | + | 1 IN PTR fw.it2XX.int. | |
| − | + | 21 IN PTR ns.it2XX.int. | |
| − | 1 IN PTR fw. | + | 3 IN PTR sftp.it2XX.int. |
| − | + | 4 IN PTR proxy.it2XX.int. | |
| − | + | 17 IN PTR ntp.it2XX.int. | |
| − | |||
| − | |||
| − | |||
| − | |||
=Check= | =Check= | ||
| Zeile 222: | Zeile 222: | ||
==DNS Aufgabe Reverse Lookup Zone LAN & SERVERS== | ==DNS Aufgabe Reverse Lookup Zone LAN & SERVERS== | ||
*[[DNS Linux - Netzwerk und Serveradministration - Reverse Aufgabe]] | *[[DNS Linux - Netzwerk und Serveradministration - Reverse Aufgabe]] | ||
| + | =DNS Secondary Nameserver= | ||
| + | *Als Beispiel dienen die Domain it213.int und it214.int | ||
| + | ==Änderungen in der /etc/bind/named.conf.options== | ||
| + | *Der Slave Nameserver muss einen Trandfer durchführen können. | ||
| + | *Er muss unter allow-transfer eingetragen werden | ||
| + | *Der Transfer erfplg im Gegensatz zu den normalen Record abfragen über TCP | ||
| + | *cat /etc/bind/named.conf.options | ||
| + | options { | ||
| + | directory "/var/cache/bind"; | ||
| + | forwarders { 192.168.16.88; }; | ||
| + | allow-query { any; }; | ||
| + | allow-recursion { 10.88.213.0/24; 172.26.213.0/24; 10.213.1.0/24; 127.0.0.1; }; | ||
| + | allow-transfer { 127.0.0.1; '''<span style="color:red">10.88.214.21;</span>''' }; | ||
| + | dnssec-validation no; | ||
| + | listen-on-v6 { none; }; | ||
| + | listen-on { any; }; | ||
| + | }; | ||
| + | |||
| + | ==Änderungen in der /etc/bind/named.conf.local== | ||
| + | *Es müssen zwei neute Zonen eingetragen. | ||
| + | *Diese werden vom Masterserver gezogen. | ||
| + | *Sie werden in einem speziellen Format auf der Platte abgelegt. | ||
| + | |||
| + | *cat /etc/bind/named.conf.local | ||
| + | '''<span style="color:red">zone "it214.int" {</span> | ||
| + | '''<span style="color:red">type slave;</span> | ||
| + | '''<span style="color:red">masters { 10.88.214.21; };</span> | ||
| + | '''<span style="color:red">file "/var/cache/bind/it214.int";</span> | ||
| + | '''<span style="color:red">};</span> | ||
| + | |||
| + | '''<span style="color:red">zone "214.88.10.in-addr.arpa" {</span> | ||
| + | '''<span style="color:red">type slave;</span> | ||
| + | '''<span style="color:red">masters { 10.88.214.21; };</span> | ||
| + | '''<span style="color:red">file "/var/cache/bind/214.88.10.in-addr.arpa";</span> | ||
| + | '''<span style="color:red">}};</span> | ||
| + | |||
| + | ==Änderungen in /var/cache/bind/it213.int== | ||
| + | NS ns.it213.int. | ||
| + | '''<span style="color:red">NS ns.it214.int.</span>''' | ||
| + | |||
| + | ==Änderungen in /var/cache/bind/213.88.10.in-addr.arpa== | ||
| + | NS ns.it213.int. | ||
| + | '''<span style="color:red">NS ns.it214.int.</span>''' | ||
| + | |||
| + | ==Abschluss== | ||
| + | *Wenn die Änderungen auf beiden Nameserver gemacht wurden kann man named neustarten. | ||
| + | ==Debbuging== | ||
| + | ===auf ns.it214.int=== | ||
| + | *journal -fu named | ||
| + | ===auf ns.it213.int=== | ||
| + | ;Manueller Zonentransfer | ||
| + | *dig -t axfr @10.88.214.21 it213.int | ||
| + | *dig -t axfr @10.88.214.21 213.88.10.in-addr.arpa | ||
| + | ;Automatischer Zonentransfer | ||
| + | *systemctl restart named | ||
| + | ===auf ns.it214.int=== | ||
| + | *tcpdump -ni enp0s3 port 53 | ||
| + | ===auf ns.it213.int=== | ||
| + | ;A Record | ||
| + | *dig -t a @10.88.214.21 sftp.it213.int | ||
| + | ;Zonentranfer | ||
| + | *dig -t axfr @10.88.214.21 it213.int | ||
| + | ;Ereknntniss Zonetransfer läuft über TCP und A-Rcord über UDP. | ||
Aktuelle Version vom 1. April 2026, 13:41 Uhr
Vorab Theorie
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
- 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 |
| DOM | it2XX.int | Domain Name |
- Anpassen des Templates
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.26.2XX.0/24; 10.2XX.1.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.26.2XX.0/24; 10.2XX.1.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.
fw IN A 10.88.2XX.1
ns IN A 10.88.2XX.21
sftp IN A 10.88.2XX.3
proxy IN A 10.88.2XX.4
ntp IN A 10.88.2XX.17
dhcp IN A 172.26.2XX.2
smb IN A 10.2XX.1.2
ldap IN A 10.2XX.1.3
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 1
@ 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.
1 IN PTR fw.it2XX.int.
21 IN PTR ns.it2XX.int.
3 IN PTR sftp.it2XX.int.
4 IN PTR proxy.it2XX.int.
17 IN PTR ntp.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
DNS Secondary Nameserver
- Als Beispiel dienen die Domain it213.int und it214.int
Änderungen in der /etc/bind/named.conf.options
- Der Slave Nameserver muss einen Trandfer durchführen können.
- Er muss unter allow-transfer eingetragen werden
- Der Transfer erfplg im Gegensatz zu den normalen Record abfragen über TCP
- cat /etc/bind/named.conf.options
options {
directory "/var/cache/bind";
forwarders { 192.168.16.88; };
allow-query { any; };
allow-recursion { 10.88.213.0/24; 172.26.213.0/24; 10.213.1.0/24; 127.0.0.1; };
allow-transfer { 127.0.0.1; 10.88.214.21; };
dnssec-validation no;
listen-on-v6 { none; };
listen-on { any; };
};
Änderungen in der /etc/bind/named.conf.local
- Es müssen zwei neute Zonen eingetragen.
- Diese werden vom Masterserver gezogen.
- Sie werden in einem speziellen Format auf der Platte abgelegt.
- cat /etc/bind/named.conf.local
zone "it214.int" { type slave; masters { 10.88.214.21; }; file "/var/cache/bind/it214.int"; };
zone "214.88.10.in-addr.arpa" { type slave; masters { 10.88.214.21; }; file "/var/cache/bind/214.88.10.in-addr.arpa"; }};
Änderungen in /var/cache/bind/it213.int
NS ns.it213.int.
NS ns.it214.int.
Änderungen in /var/cache/bind/213.88.10.in-addr.arpa
NS ns.it213.int.
NS ns.it214.int.
Abschluss
- Wenn die Änderungen auf beiden Nameserver gemacht wurden kann man named neustarten.
Debbuging
auf ns.it214.int
- journal -fu named
auf ns.it213.int
- Manueller Zonentransfer
- dig -t axfr @10.88.214.21 it213.int
- dig -t axfr @10.88.214.21 213.88.10.in-addr.arpa
- Automatischer Zonentransfer
- systemctl restart named
auf ns.it214.int
- tcpdump -ni enp0s3 port 53
auf ns.it213.int
- A Record
- dig -t a @10.88.214.21 sftp.it213.int
- Zonentranfer
- dig -t axfr @10.88.214.21 it213.int
- Ereknntniss Zonetransfer läuft über TCP und A-Rcord über UDP.

