In diesem Tutorial zeigen wir Ihnen, wie Sie einen DNS-Server unter Ubuntu 16.04 LTS installieren und konfigurieren. Für diejenigen unter Ihnen, die es nicht wussten, BIND ist ein weit verbreiteter DNS-Server. Idealerweise , ein DNS-Server besteht aus 2 Computern, die gleichzeitig zusammenarbeiten, einer fungiert als Master und der andere als Slave. Wenn Ihr Domain-Registrar Ihnen keinen kostenlosen DNS-Server zur Verfügung stellt oder Sie einen erstellen möchten benutzerdefinierten DNS-Eintrag, dann müssen Sie möglicherweise Ihren eigenen DNS-Server hosten.
Dieser Artikel geht davon aus, dass Sie zumindest über Grundkenntnisse in Linux verfügen, wissen, wie man die Shell verwendet, und vor allem, dass Sie Ihre Website auf Ihrem eigenen VPS hosten. Die Installation ist recht einfach und setzt Sie voraus im Root-Konto ausgeführt werden, wenn nicht, müssen Sie möglicherweise 'sudo
hinzufügen ‘ zu den Befehlen, um Root-Rechte zu erhalten. Ich zeige Ihnen Schritt für Schritt die Installation und Konfiguration des DNS-Servers auf Ubuntu auf einem Ubuntu 16.04 (Xenial Xerus) Server.
Voraussetzungen
- Ein Server, auf dem eines der folgenden Betriebssysteme ausgeführt wird:Ubuntu 16.04 (Xenial Xerus).
- Es wird empfohlen, dass Sie eine neue Betriebssysteminstallation verwenden, um potenziellen Problemen vorzubeugen.
- SSH-Zugriff auf den Server (oder öffnen Sie einfach das Terminal, wenn Sie sich auf einem Desktop befinden).
- Ein
non-root sudo user
oder Zugriff auf denroot user
. Wir empfehlen, alsnon-root sudo user
zu agieren , Sie können jedoch Ihr System beschädigen, wenn Sie als Root nicht aufpassen.
DNS-Server auf Ubuntu 16.04 LTS installieren und konfigurieren
Host | Rolle | Privater FQDN | Private IP-Adresse |
---|---|---|---|
ns1 | Primärer DNS-Server | 108.100.100.1 | |
ns2 | Sekundärer DNS-Server | 108.100.100.2 | |
Host | Generischer Host | ihre-domain.com | 216.239.38.120 |
Schritt 1. Stellen Sie zunächst sicher, dass alle Ihre Systempakete auf dem neuesten Stand sind, indem Sie das folgende apt-get
ausführen Befehle im Terminal.
sudo apt-get update sudo apt-get upgrade
Schritt 2. DNS-Server Bind9 installieren.
Führen Sie nach der Aktualisierung des Systems den folgenden Befehl aus, um BIND9-Pakete zu installieren, die zum Einrichten des DNS-Servers verwendet werden:
apt-get install bind9 bind9utils bind9-doc
Schritt 3. Bind9 konfigurieren.
Es ist an der Zeit, Ihnen eine grundlegende Konfiguration zu zeigen, wie Sie Ihre Domain für die Auflösung zu Ihrem Server einrichten:
### nano /etc/bind/named.conf.options options { directory "/var/cache/bind"; additional-from-auth no; additional-from-cache no; version "Bind Server"; // If there is a firewall between you and nameservers you want // to talk to, you may need to fix the firewall to allow multiple // ports to talk. See http://www.kb.cert.org/vuls/id/800113 // If your ISP provided one or more IP addresses for stable // nameservers, you probably want to use them as forwarders. // Uncomment the following block, and insert the addresses replacing // the all-0's placeholder. forwarders { 8.8.8.8; 8.8.4.4; }; //======================================================================== // If BIND logs error messages about the root key being expired, // you will need to update your keys. See https://www.isc.org/bind-keys //======================================================================== dnssec-validation auto; allow-recursion { 127.0.0.1; }; auth-nxdomain no; # conform to RFC1035 listen-on-v6 { any; }; };
Schritt 4. Lokale Datei konfigurieren.
Als Nächstes konfigurieren wir die lokale Datei, um unsere DNS-Zonen anzugeben:
### nano /etc/bind/named.conf.local //place these lines at the bottom of file zone "your-domain.com" { type master; file "/etc/bind/zones/your-domain.com.db"; allow-transfer { 108.200.200.2; }; also-notify { 108.200.200.200.2; }; };
Weil wir in der obigen Konfiguration die Zonendatei in „/etc/bind/zones/your-domain.com.db
abgelegt haben “, dann müssen wir den Ordner und die Datei erstellen:
mkdir /etc/bind/zones nano /etc/bind/zones/your-domain.com.db
$TTL 86400 $ORIGIN your-domain.com. @ IN SOA ns1.your-domain.com. root.your-domain.com. ( 1 ; Serial 86400 ; Refresh 7200 ; Retry 2419200 ; Expire 604800 ) ; Negative Cache TTL ; @ IN NS ns1.your-domain.com. @ IN NS ns2.your-domain.com. ns1 IN A 108.100.100.1 ns2 IN A 108.100.100.2 ;also list other computers @ IN A 216.239.38.120 www IN A 216.239.38.120
Und starten Sie dann den bind9-Dienst neu, um die Änderungen zu übernehmen:
systemctl restart bind9
Schritt 5. Sekundären DNS-Server konfigurieren.
Slave-Bindungsoptionen konfigurieren:
### nano /etc/bind/named.conf.options zone "your-domain.com" { type slave; file "/var/cache/bind/your-domain.com.db"; masters {108.100.100.1;}; };
bind9-Dienst neu starten, um die Änderungen zu übernehmen:
systemctl restart bind9
Dieser DNS-Server funktioniert erst, wenn Sie den Nameserver Ihrer Domain ändern. Dies kann auf der Website des Registrars Ihrer Domain erfolgen. In diesem Szenario ändern wir den Nameserver zu:
ns1.ihre-domain.com
ns2.ihre-domain.com
Schritt 6. BIND testen.
Schließlich könnte dieser Test entweder auf dem DNS-Server selbst oder von einem anderen Server oder von Ihrem eigenen PC aus durchgeführt werden. In diesem Fall führen wir den Test von aus durch ein anderer Server mit Ubuntu OS.
dnsutils installieren:
apt-get install dnsutils
Führen Sie den Dig-DNS-Test durch:
dig your-domain.com
Führen Sie den nslookup-DNS-Test durch:
nslookup your-domain.com
Herzlichen Glückwunsch! Sie haben den DNS-Server erfolgreich installiert. Vielen Dank, dass Sie dieses Tutorial zur Installation des DNS-Servers auf einem Ubuntu 16.04 LTS (Xenial Xerus)-System verwendet haben. Für zusätzliche Hilfe oder nützliche Informationen empfehlen wir Sie um die offizielle bind9-Website zu besuchen.