Domain Name Server (DNS) ist eine entscheidende Komponente der Internetinfrastruktur, und der Aufbau Ihres DNS-Servers kann herausfordernd sein. Nun, nicht mit BIND, wo Sie in kürzester Zeit Ihren BIND DNS-Server erstellen können. BIND hat unter Administratoren einen ausgezeichneten Ruf für seine Flexibilität und Unterstützung für hohe Verfügbarkeit.
In diesem Artikel erfahren Sie, wie Sie einen sicheren BIND DNS-Server installieren und konfigurieren und überprüfen, dass Subdomänen richtig auf die entsprechende IP-Adresse aufgelöst werden.
Lesen Sie weiter und erstellen Sie Ihren DNS-Server ohne Schwierigkeiten!
Voraussetzungen
Dieses Tutorial wird eine praktische Demonstration sein. Stellen Sie sicher, dass Sie folgendes haben, um mitzumachen.
- A Linux server – This example uses the Ubuntu 20.04 server.
- A non-root user with root privileges or root/administrator user.
- A domain name pointed to the server IP address – This demo uses the atadomain.io domain and server IP address 172.16.1.10.
Installieren der BIND-Pakete
Das Standard-Ubuntu-Repository bietet BIND-Pakete, ist jedoch nicht in Ihrem System installiert. Sie können BIND als Haupt-DNS-Server oder nur als autoritär installieren. BIND bietet leistungsstarke Funktionen wie Master-Slave-Installationsunterstützung, DNSSEC-Unterstützung und integrierte Zugriffssteuerungslisten (ACL).
Um mit BIND DNS zu beginnen, müssen Sie zuerst die BIND-Pakete auf Ihrem Rechner mit dem apt-Paketmanager installieren.
1. Öffnen Sie Ihr Terminal und melden Sie sich auf Ihrem Server an.
2. Als Nächstes führen Sie den Befehl apt update
aus, um das Repository-Paketindex zu aktualisieren und zu aktualisieren. Dieser Befehl stellt sicher, dass Sie die neueste Version der Pakete installieren.

3. Nachdem Sie aktualisiert haben, führen Sie den folgenden Befehl apt install
aus, um BIND-Pakete für den Ubuntu-Server zu installieren.
Die Pakete bind9-utils und bind9-dnsutils bieten zusätzliche Befehlszeilentools für BIND. Diese Pakete sind nützlich zum Testen und Verwalten des BIND-DNS-Servers.

4. Führen Sie schließlich den Befehl systemctl
unten aus, um den BIND-Dienst zu überprüfen.
Das BIND-Paket wird mit dem Dienst named geliefert und wird während der BIND-Paketinstallation automatisch gestartet und aktiviert.
Jetzt sollten Sie sehen, dass der BIND-Dienst named aktiviert ist und der Status als aktiv (ausgeführt) angezeigt wird. Zu diesem Zeitpunkt wird der BIND-Dienst automatisch beim Start des Systems ausgeführt.

Konfigurieren des BIND DNS-Servers
Sie haben jetzt BIND-Pakete auf dem Ubuntu-Server installiert, also ist es an der Zeit, die BIND-Installation auf Ihrem Ubuntu-Server einzurichten. Wie? Durch Bearbeiten der BIND- und Dienstkonfigurationen von named
.
Alle Konfigurationen für BIND sind im Verzeichnis /etc/bind/ verfügbar, und Konfigurationen für den Dienst named
unter /etc/default/named.
1. Bearbeiten Sie die Konfiguration /etc/default/named mit Ihrem bevorzugten Editor und fügen Sie die Option -4
in die Zeile OPTIONS
wie unten gezeigt hinzu. Diese Option führt den Dienst named
nur für IPv4 aus.
Speichern Sie die vorgenommenen Änderungen und schließen Sie die Datei.

2. Bearbeiten Sie als nächstes die Datei /etc/bind/named.conf.options und füllen Sie die folgende Konfiguration unterhalb der Zeile directory "/var/cache/bind";
aus.
Diese Konfiguration setzt den BIND-Dienst auf den Standard-UDP-Port 53 auf der lokalen Host-IP-Adresse und der öffentlichen IP-Adresse des Servers (172.16.1.10). Gleichzeitig erlaubt es Abfragen von jedem Host an den BIND-DNS-Server unter Verwendung des Cloudflare-DNS 1.1.1.1 als Weiterleitung.
Am Ende kommentieren Sie die Zeile listen-on-v6 { any; };
aus, wie unten gezeigt, um den Dienst named vom Ausführen auf IPv6 zu deaktivieren.

3. Führen Sie abschließend den folgenden Befehl aus, um die BIND-Konfiguration zu überprüfen.
Wenn es keine Ausgabe gibt, sind die BIND-Konfigurationen korrekt und enthalten keine Fehler.

Einrichten von DNS-Zonen
Sie haben nun die Grundkonfiguration des BIND DNS-Servers eingerichtet. Sie sind bereit, einen DNS-Server mit Ihrer Domain zu erstellen und weitere Subdomänen für Ihre Anwendungen hinzuzufügen. Sie müssen eine neue DNS-Zonenkonfiguration definieren und erstellen.
In diesem Tutorial erstellen Sie einen neuen Namenserver (ns1.atadomain.io) und Subdomänen (www.atadomain.io, mail.atadomain.io, vault.atadomain.io).
1. Bearbeiten Sie die Datei /etc/bind/named.conf.local mit Ihrem bevorzugten Editor und fügen Sie die folgende Konfiguration hinzu.
Diese Konfiguration definiert die Vorwärtszone (/etc/bind/zones/forward.atadomain.io) und die Rückwärtszone (/etc/bind/zones/reverse.atadomain.io) für den Domainnamen atadomain.io.
Speichern Sie die Änderungen und schließen Sie die Datei.

2. Führen Sie anschließend den folgenden Befehl aus, um ein neues Verzeichnis (/etc/bind/zones
) für die Konfiguration von Zeichenketten-DNS-Zonen zu erstellen.
3. Führen Sie jeden der folgenden Befehle aus, um die Standardvorwärts- und rückwärtige Zonenkonfiguration in das Verzeichnis /etc/bind/zones
zu kopieren.

4. Bearbeiten Sie nun die Konfiguration der Vorwärtszone (/etc/bind/zones/forward.atadomain.io) mit Ihrem bevorzugten Editor und füllen Sie die folgende Konfiguration aus.
Die Konfiguration der Forward-Zone ist der Ort, an dem Sie Ihren Domainnamen und die Server-IP-Adresse definieren. Diese Konfiguration übersetzt den Domainnamen in die korrekte IP-Adresse des Servers.
Die folgende Konfiguration erstellt den folgenden Nameserver und Subdomänen:
ns1.atadomain.io
– Der Haupt-Nameserver für Ihre Domain mit der IP-Adresse172.16.1.10
.
- MX-Eintrag für die Domain
atadomain.io
, der vonmail.atadomain.io
verarbeitet wird. Der MX-Eintrag wird für den Mailserver verwendet.
- Subdomänen für Anwendungen:
www.atadomain.io
,mail.atadomain.io
undvault.atadomain.io
.
Speichern Sie die Änderungen und schließen Sie die Datei.

5. Ähnlich wie bei der Forward-Zone bearbeiten Sie die Konfigurationsdatei der Reverse-Zone (/etc/bind/zones/reverse.atadomain.io) und füllen Sie die folgende Konfiguration aus.
Die Reverse-Zone übersetzt die Server-IP-Adresse in den Domainnamen. Die Reverse-Zone oder der PTR-Eintrag ist für Dienste wie den Mailserver unerlässlich, was sich auf das Ansehen des Mail-Servers auswirkt.
Der PTR-Eintrag verwendet den letzten Block der IP-Adresse, ähnlich dem PTR-Eintrag mit der Nummer 10 für die Server-IP-Adresse 172.16.1.10.
Diese Konfiguration erstellt die Reverse-Zone oder den PTR-Eintrag für die folgenden Domains:
- Nameserver
ns1.atadomain.io
mit der Reverse-Zone oder dem PTR-Eintrag172.16.1.10
.
- PTR-Eintrag für die Domain
mail.atadomain.io
auf die Server-IP-Adresse172.16.1.20
.
Speichern Sie die Änderungen und schließen Sie die Datei.

6. Führen Sie nun die folgenden Befehle aus, um BIND-Konfigurationen zu überprüfen und zu bestätigen.
Wenn Ihre Konfiguration korrekt ist, sehen Sie eine Ausgabe ähnlich wie unten.

7. Führen Sie abschließend den Befehl systemctl
aus, um den named
-Dienst neu zu starten und zu überprüfen. Dadurch werden neue Änderungen am named
-Dienst angewendet.
Unten sehen Sie den Status des Named-Dienstes als aktiv (gestartet).

Öffnen Sie den DNS-Port mit der UFW-Firewall
Zu diesem Zeitpunkt haben Sie die Installation des BIND DNS-Servers abgeschlossen. Sie müssen jedoch Ihren DNS-Server noch sichern. Sie werden die UFW-Firewall einrichten und den DNS-Port für Anfragen an den Server öffnen. Dadurch können Clients Anfragen an den BIND DNS-Server stellen.
Aus Sicherheitsgründen wird empfohlen, die UFW-Firewall auf Ihrem Ubuntu-Server auszuführen und zu aktivieren.
1. Führen Sie den Befehl ufw
unten aus, um verfügbare Anwendungen in der UFW-Firewall zu überprüfen.
Sie sollten den Bind9 in der Anwendungsliste der UFW sehen.

2. Führen Sie nun den folgenden Befehl aus, um den Bind9 der UFW-Firewall zu erlauben
.

3. Führen Sie abschließend den folgenden Befehl aus, um die aktivierten Regeln auf der UFW-Firewall zu überprüfen.
Sie sollten die Anwendung Bind9 in der Liste wie im Screenshot unten sehen.

Überprüfung der BIND DNS Server Installation
Sie haben die BIND DNS-Installation abgeschlossen und die UFW-Firewall konfiguriert. Aber wie überprüfen Sie Ihre DNS-Serverinstallation? Der Befehl dig
wird Ihnen helfen.
Dig ist ein Befehlszeilen-Dienstprogramm zur Fehlerbehebung bei der DNS-Serverinstallation. dig
führt DNS-Lookups für den angegebenen Domainnamen durch und zeigt detaillierte Antworten für das Ziel des Domainnamens an. Auf dem Ubuntu-System ist dig
Teil des Pakets bind9-dnsutil
.
Um Ihre BIND DNS-Serverinstallation zu überprüfen:
1. Führen Sie jeden der folgenden dig
-Befehle aus, um die Subdomänen www.atadomain.io
, mail.atadomain.io
und vault.atadomain.io
zu überprüfen.
Wenn Ihre DNS-Serverinstallation erfolgreich ist, wird jeder Subdomain gemäß der Konfiguration von forward.atadomain.io korrekt auf die entsprechende IP-Adresse aufgelöst.
Hier finden Sie die Ausgabe der Subdomain www.atadomain.io, aufgelöst auf die Server-IP-Adresse 172.16.1.10.

Unten sehen Sie die Subdomain mail.atadomain.io, aufgelöst auf die Server-IP-Adresse 172.16.1.20.

Und unten sehen Sie die Subdomain vault.atadomain.io, aufgelöst auf die Server-IP-Adresse 172.16.1.50.

2. Führen Sie anschließend den dig
-Befehl unten aus, um den MX-Eintrag für die Domain atadomain.io
zu überprüfen.
Sie sollten sehen, dass die Domain atadomain.io den MX-Eintrag mail.atadomain.io hat.

3. Führen Sie abschließend die folgenden Befehle aus, um den PTR-Eintrag oder die Reverse Zone für die Server-IP-Adressen 172.16.1.10
und 172.16.1.20
zu überprüfen.
Wenn Ihre BIND-Installation erfolgreich ist, wird jede IP-Adresse auf den im reverse.atadomain.io konfigurierten Domainnamen aufgelöst.
Sie können unten sehen, dass die Server-IP-Adresse 172.16.1.10 auf den Domainnamen ns1.atadomain.io aufgelöst ist.

Wie unten zu sehen ist, wird die Server-IP-Adresse 172.16.1.20 auf den Domainnamen mail.atadomain.io aufgelöst.

Abschluss
Im Verlauf dieses Tutorials haben Sie gelernt, wie Sie einen sicheren BIND DNS-Server auf Ihrem Ubuntu-Server erstellen und einrichten. Sie haben auch die Vorwärts- und Rückwärtszone erstellt, um Ihre Domäne hinzuzufügen, und DNS-Server durch Ausführen von dig
-Befehlen überprüft.
Wie können Sie nun einen BIND DNS-Server in Ihrer Umgebung implementieren? Vielleicht als autoritativen Server implementieren? Oder eine hohe Verfügbarkeit mit einer Master-Slave BIND-Installation einrichten?