DNS-Server · 3 min read · Feb 11, 2026

Installation eines DNS-Servers mit Ubuntu Hardy 8.04 LTS und BIND - Seite 4

10 Installieren Sie den DNS-Server

Führen Sie

apt-get install bind9

Aus Sicherheitsgründen möchten wir BIND chrooted ausführen, daher müssen wir die folgenden Schritte durchführen:

/etc/init.d/bind9 stop

Bearbeiten Sie die Datei /etc/default/bind9, damit der Daemon als unprivilegierter Benutzer bind, chrooted zu /var/lib/named, ausgeführt wird. Ändern Sie die Zeile: OPTIONS=”-u bind” so, dass sie OPTIONS=”-u bind -t /var/lib/named” lautet:

vi /etc/default/bind9

| OPTIONS="-u bind -t /var/lib/named" # Set RESOLVCONF=no, um resolvconf nicht auszuführen RESOLVCONF=yes |

Erstellen Sie die erforderlichen Verzeichnisse unter /var/lib:

mkdir -p /var/lib/named/etc  
mkdir /var/lib/named/dev  
mkdir -p /var/lib/named/var/cache/bind  
mkdir -p /var/lib/named/var/run/bind/run

Verschieben Sie dann das Konfigurationsverzeichnis von /etc nach /var/lib/named/etc:

mv /etc/bind /var/lib/named/etc

Erstellen Sie einen Symlink zum neuen Konfigurationsverzeichnis von dem alten Standort (um Probleme zu vermeiden, wenn bind in Zukunft aktualisiert wird):

ln -s /var/lib/named/etc/bind /etc/bind

Erstellen Sie Null- und Zufallsgeräte und beheben Sie die Berechtigungen der Verzeichnisse:

mknod /var/lib/named/dev/null c 1 3  
mknod /var/lib/named/dev/random c 1 8  
chmod 666 /var/lib/named/dev/null /var/lib/named/dev/random  
chown -R bind:bind /var/lib/named/var/*  
chown -R bind:bind /var/lib/named/etc/bind

Wir müssen /etc/default/syslogd ändern, damit wir weiterhin wichtige Nachrichten in den Systemprotokollen protokollieren können. Ändern Sie die Zeile: SYSLOGD=”” so, dass sie SYSLOGD=”-a /var/lib/named/dev/log” lautet:

vi /etc/default/syslogd

| # # Hauptkonfigurationsdatei für syslogd # # Vollständige Dokumentation möglicher Argumente finden Sie in der Man-Seite # syslogd(8). # # Für Remote-UDP-Protokollierung verwenden Sie SYSLOGD="-r" # SYSLOGD="-a /var/lib/named/dev/log" |

Starten Sie den Protokolldaemon neu:

/etc/init.d/sysklogd restart

Starten Sie BIND und überprüfen Sie /var/log/syslog auf Fehler:

/etc/init.d/bind9 start

11 Konfigurieren Sie BIND

Jetzt ist die Hauptkonfigurationsdatei in BIND named.conf, jedoch ist named.conf.local bereits in named.conf enthalten und dient der benutzerdefinierten Konfiguration, also werden wir named.conf.local bearbeiten und unsere Zonen hinzufügen. Hier habe ich eine Zone camed tm.local sowie eine umgekehrte Zone für 192.168.0.0 hinzugefügt:

vi /etc/bind/named.conf.local

| zone "tm.local" { type master; file "/etc/bind/zones/tm.local.db"; }; zone "3.13.10.in-addr.arpa" { type master; file "/etc/bind/zones/rev.0.168.192.in-addr.arpa"; }; |

Bitte beachten Sie, dass Sie, wenn Sie einen Kommentar in named.conf oder named.conf.local hinzufügen möchten, // verwenden sollten. Außerdem können Sie oben sehen, dass die Zonendatei für tm.local tm.local.db heißt und sich in /etc/bind/zone befindet. Das Wichtigste ist, dass die Zonendatei als Präfix für einen Kommentar verwendet wird; und nicht //, da ich in vielen Foren Verwirrung gesehen habe, also dachte ich, ich füge es hier hinzu - (gleiches gilt für die umgekehrte Zone).

12 Konfigurieren Sie die Zonen

Wir beginnen mit der Zone tm.local

mkdir /etc/bind/zones
vi /etc/bind/zones/tm.local.db

| $TTL 1500 @ IN SOA server1.tm.local. root ( 2007062703 ;serial 28800 ;refresh 3600 ;retry 604800 ;expire 38400 ) ;minimum 25 Minuten tm.local. IN NS server1.tm.local. server1 IN A 192.168.0.100 webserver1 IN A 192.168.0.103 webserver2 IN A 192.168.0.104 loadb1 IN A 192.168.0.101 loadb2 IN A 192.168.0.102 tm.local. IN MX 10 server1.tm.local. |

Fühlen Sie sich frei, den obigen Zonnennamen (tm.local) oder Ihren DNS-Servernamen (server1) nach Bedarf zu ersetzen, beachten Sie einfach den Punkt nach dem Zonnennamen.

Jetzt gehen wir zur umgekehrten Zone über.

vi /etc/bind/zones/rev.3.13.10.in-addr.arpa

| $TTL 1500 @ IN SOA server1.tm.local. root ( 2007062703 ;serial 28800 ;refresh 3600 ;retry 604800 ;expire 38400 ) ;minimum 25 Minuten IN NS server1.tm.local. 100 IN PTR server1.tm.local. 103 IN PTR webserver1.tm.local. 104 IN PTR webserver2.tm.local. 101 IN PTR load1.tm.local. 102 IN PTR load2.tm.local. |

Jetzt konfigurieren Sie den Server so, dass er alle Anfragen an den ISP-Server weiterleitet, damit er externe IPs auflösen kann.

vi /etc/bind/named.conf.options

Kommentieren Sie den Forwarder-Bereich aus, damit er so aussieht:

| forwarders { # Ersetzen Sie die Adresse unten durch die Adresse Ihres ISP-DNS-Servers 123.123.123.123; }; |

13 Konfigurieren Sie den Server, um sich selbst als DNS zu verwenden

vi /etc/resolv.conf

| search tm.local nameserver 192.168.0.100 |

14 Referenzen und Quellen

  • Falkos Artikel “Der perfekte Server - Ubuntu Hardy Heron (Ubuntu 8.04 LTS Server)”
  • BIND auf Ubuntu “ So richten Sie einen DNS-Server mit bind ein
Share: X/Twitter LinkedIn

Erhalte neue Beiträge in deinem Posteingang.

Kein Spam. Jederzeit abmelden.