GNU/Linux >> LINUX-Kenntnisse >  >> Cent OS

So richten Sie private DNS-Server mit BIND unter CentOS 8 ein

BIND, auch bekannt als „Berkeley Internet Name Domain“, ist heute eines der beliebtesten Domain Name Systeme (DNS). Es ist Open Source und bietet DNS-Dienste auf Linux-Betriebssystemen. Im Allgemeinen hilft es Ihnen, einen vollständig qualifizierten Domänennamen in eine IP-Adresse oder eine IP-Adresse in einen Domänennamen aufzulösen. Es kann als autoritativer Nameserver verwendet werden und bietet verschiedene Funktionen wie Lastverteilung, dynamische Aktualisierung, Split-DNS usw.

In diesem Tutorial zeigen wir Ihnen, wie Sie einen privaten DNS-Server mit BIND unter CentOS 8 einrichten. Sehen Sie sich außerdem unser Tutorial zur Installation und Konfiguration eines einfachen DNS-Servers (BIND) unter Debian 9 an. P>

Voraussetzungen

  • Ein CentOS 8 VPS (wir verwenden unseren SSD 2 VPS-Plan)
  • Zugriff auf das Root-Benutzerkonto (oder Zugriff auf ein Administratorkonto mit Root-Rechten)

Für dieses Tutorial verwenden wir das folgende Setup:

Hostname : ns1.rosehosting.local
IP-Adresse: 192.168.1.100
Lokales Netzwerk : 192.168.1.0/24

Schritt 1:Melden Sie sich beim Server an und aktualisieren Sie die Server-OS-Pakete

Melden Sie sich zunächst über SSH als Root-Benutzer bei Ihrem CentOS 8-Server an:

ssh root@IP_Address -p Port_number

Sie müssen „IP_Address“ und „Port_number“ durch die jeweilige IP-Adresse und SSH-Portnummer Ihres Servers ersetzen. Ersetzen Sie außerdem „root“ gegebenenfalls durch den Benutzernamen des Administratorkontos.

Bevor Sie beginnen, müssen Sie sicherstellen, dass alle auf dem Server installierten CentOS-Pakete auf dem neuesten Stand sind. Sie können dies tun, indem Sie die folgenden Befehle ausführen:

dnf update -y

Schritt 2:Installieren Sie den BIND-DNS-Server

Standardmäßig ist das Bind-Paket im CentOS 8-Standard-Repository verfügbar. Sie können es installieren, indem Sie den folgenden Befehl ausführen:

dnf install bind bind-utils -y

Starten Sie nach der Installation von BIND den BIND-Dienst und ermöglichen Sie ihm, beim Systemneustart zu starten:

systemctl start named
systemctl enable named

Schritt 3:BIND-DNS-Server konfigurieren

Standardmäßig lauscht der BIND-Server nur auf localhost. Sie müssen es also so konfigurieren, dass es auf allen Netzwerkschnittstellen lauscht. Sie können es konfigurieren, indem Sie die Datei /etc/named.conf:

bearbeiten
nano /etc/named.conf

Kommentieren Sie die folgenden Zeilen aus:

//listen-on port 53 { 127.0.0.1; };
//listen-on-v6 port 53 { ::1; };

Ändern Sie die folgende Zeile, um Abfragen für Ihr lokales Netzwerk zuzulassen:

allow-query     { localhost;192.168.1.0/24; };

Speichern und schließen Sie die Datei, wenn Sie fertig sind.

Schritt 4:Forward- und Reverse-DNS-Zone erstellen

Eine Forward Zone wird verwendet, um den Hostnamen in eine IP-Adresse aufzulösen, während eine Reverse Zone verwendet wird, um die IP-Adresse in einen Hostnamen aufzulösen. Im Allgemeinen sind alle normalen DNS-Abfragen Forward-Lookup-Abfragen. Sie können die Forward- und Reverse-Lookup-Zonen in der Datei /etc/named.conf definieren.

Bearbeiten Sie die Datei /etc/named.conf mit dem folgenden Befehl:

nano /etc/named.conf

Fügen Sie die folgenden Zeilen am Ende der Datei hinzu

//Forward Zone
zone "rosehosting.local" IN { 

           type master;  
           file "rosehosting.local.db"; 
           allow-update { none; };  

};

//Reverse Zone
zone "1.168.192.in-addr.arpa" IN { 

             type master;  
             file "192.168.1.db";             
             allow-update { none; };

};

Speichern und schließen Sie die Datei, wenn Sie fertig sind.

Schritt 5:Forward- und Reverse-Zonendateien erstellen

Als Nächstes müssen Sie im vorherigen Schritt definierte Forward- und Reverse-Zonendateien erstellen. Standardmäßig befinden sich alle Zonen-Lookup-Dateien im Verzeichnis /var/named.

Erstellen Sie zunächst eine Forward-Zonendatei mit dem folgenden Befehl:

nano /var/named/rosehosting.local.db

Fügen Sie die folgenden Zeilen hinzu:

$TTL 86400
@   IN  SOA     ns1.rosehosting.local. root.rosehosting.local. (
                                              3           ;Serial
                                              3600        ;Refresh
                                              1800        ;Retry
                                              604800      ;Expire
                                              86400       ;Minimum TTL
)

;Name Server Information
@       IN  NS      ns1.rosehosting.local.

;IP address of Name Server
ns1       IN  A       192.168.1.100

;A - Record HostName To Ip Address
www     IN  A       192.168.1.101

;CNAME record
ftp     IN CNAME        www.rosehosting.local.

Speichern und schließen Sie die Datei und erstellen Sie dann eine Reverse-Zone-Datei mit dem folgenden Befehl:

nano /var/named/192.168.1.db

Fügen Sie die folgenden Zeilen hinzu:

$TTL 86400
@   IN  SOA     ns1.rosehosting.local. root.rosehosting.local. (
                                       3           ;Serial
                                       3600        ;Refresh
                                       1800        ;Retry
                                       604800      ;Expire
                                       86400       ;Minimum TTL
)

;Name Server Information
@         IN      NS         ns1.rosehosting.local.

;Reverse lookup for Name Server
100       IN  PTR     ns1.rosehosting.local.

;PTR Record IP address to HostName
101      IN  PTR     www.rosehosting.local.

Speichern und schließen Sie die Datei, wenn Sie fertig sind.

Schritt 6:Überprüfen Sie die DNS-Konfiguration

Nachdem Sie alle Zonendateien konfiguriert haben, müssen Sie die Konfigurationsdateien überprüfen.

Validieren Sie zunächst die Hauptkonfigurationsdatei mit dem folgenden Befehl:

named-checkconf /etc/named.conf

Wenn alles in Ordnung ist, werden keine Fehler angezeigt.

Überprüfen Sie als Nächstes die Forward-Zonendatei mit dem folgenden Befehl:

named-checkzone rosehosting.local /var/named/rosehosting.local.db

Sie sollten die folgende Ausgabe erhalten:

zone rosehosting.local/IN: loaded serial 3
OK

Überprüfen Sie als Nächstes die Reverse-Zone-Datei mit dem folgenden Befehl:

named-checkzone 1.168.192.in-addr.arpa /var/named/192.168.1.db

Sie sollten die folgende Ausgabe erhalten:

zone 1.168.192.in-addr.arpa/IN: loaded serial 3
OK

Starten Sie abschließend den BIND-Dienst neu, um die Änderungen zu übernehmen:

systemctl restart named

Schritt 7:Firewall konfigurieren

Als Nächstes müssen Sie eine Firewallregel für Port 53 erstellen, um DNS-Abfragen von Clientcomputern zuzulassen. Sie können es mit dem folgenden Befehl erstellen:

firewall-cmd --permanent --add-port=53/udp

Laden Sie als Nächstes den Firewall-Dienst neu, um die Änderungen zu übernehmen:

firewall-cmd --reload

Schritt 8:DNS-Server verifizieren

An diesem Punkt wird der BIND-DNS-Server installiert und konfiguriert. Es ist Zeit zu überprüfen, ob es funktioniert oder nicht.

Bearbeiten Sie zunächst Ihre /etc/resolv.conf-Datei und fügen Sie Ihre DNS-Server-IP hinzu:

nano /etc/resolv.conf

Fügen Sie am Anfang der Datei die folgende Zeile hinzu:

nameserver 192.168.1.100

Speichern und schließen Sie die Datei und überprüfen Sie dann die Vorwärtssuche mit dem Befehl dig:

dig www.rosehosting.local 

Oder

dig ns1.rosehosting.local

Wenn alles in Ordnung ist, sollten Sie die folgende Antwort erhalten:

; <<>> DiG 9.11.20-RedHat-9.11.20-5.el8 <<>> www.rosehosting.local
;; global options: +cmd
;; Got answer:
;; WARNING: .local is reserved for Multicast DNS
;; You are currently testing what happens when an mDNS query is leaked to DNS
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 52518
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 2

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
; COOKIE: cd9d365f1f02621aa9c8753c5fd47154db8cae737b9ca09f (good)
;; QUESTION SECTION:
;www.rosehosting.local.        IN  A

;; ANSWER SECTION:
www.rosehosting.local.    86400   IN  A   192.168.1.101

;; AUTHORITY SECTION:
rosehosting.local.    86400   IN  NS  ns1.rosehosting.local.

;; ADDITIONAL SECTION:
ns1.rosehosting.local.    86400   IN  A   192.168.1.100

;; Query time: 0 msec
;; SERVER: 192.168.1.100#53(192.168.1.100)
;; WHEN: Sat Dec 12 02:29:24 EST 2020
;; MSG SIZE  rcvd: 128

Überprüfen Sie als Nächstes die umgekehrte Suche mit dem folgenden Befehl:

dig -x 192.168.1.100

Sie sollten die folgende Antwort erhalten:

; <<>> DiG 9.11.20-RedHat-9.11.20-5.el8 <<>> -x 192.168.1.100
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 30878
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 2

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
; COOKIE: 18a66bab478cf57219e6c17c5fd471671887a1dd983fef57 (good)
;; QUESTION SECTION:
;100.1.168.192.in-addr.arpa.    IN  PTR

;; ANSWER SECTION:
100.1.168.192.in-addr.arpa. 86400 IN    PTR ns1.rosehosting.local.

;; AUTHORITY SECTION:
1.168.192.in-addr.arpa.    86400   IN  NS  ns1.rosehosting.local.

;; ADDITIONAL SECTION:
ns1.rosehosting.local.    86400   IN  A   192.168.1.100

;; Query time: 0 msec
;; SERVER: 192.168.1.100#53(192.168.1.100)
;; WHEN: Sat Dec 12 02:29:43 EST 2020
;; MSG SIZE  rcvd: 148

Herzliche Glückwünsche! Sie haben erfolgreich einen privaten DNS-Server mit BIND auf CentOS 8 eingerichtet.

Natürlich müssen Sie nichts davon tun, wenn Sie einen unserer Linux-VPS-Hosting-Dienste nutzen. In diesem Fall können Sie einfach unsere erfahrenen Linux-Administratoren bitten, dies für Sie einzurichten. Sie sind rund um die Uhr erreichbar und kümmern sich umgehend um Ihr Anliegen.

PS . Wenn Ihnen dieser Beitrag gefallen hat, teilen Sie ihn bitte mit Ihren Freunden in den sozialen Netzwerken über die Schaltflächen auf der linken Seite oder hinterlassen Sie einfach unten eine Antwort. Danke.


Cent OS
  1. So installieren Sie den DNS-Server unter RHEL 8 / CentOS 8 Linux

  2. Konfigurieren Sie DNS auf CentOS 5 / RHEL 5 mit Chroot

  3. DHCP-Server auf CentOS 8 einrichten – wie geht das?

  4. So richten Sie einen Mailserver mit PostfixAdmin auf CentOS 7 ein

  5. So richten Sie VSFTPD unter CentOS 8 ein

So konfigurieren Sie den DNS (BIND)-Server unter CentOS 8 / RHEL 8

So richten Sie mit iRedMail ganz einfach einen voll ausgestatteten Mailserver unter CentOS 7 ein

Richten Sie die Response Policy Zone (RPZ) im BIND-Resolver unter CentOS/RHEL ein

So richten Sie mit iRedMail ganz einfach einen voll ausgestatteten Mailserver unter CentOS 8 ein

So richten Sie einen DHCP-Server unter CentOS 8 ein

So richten Sie einen TeamSpeak-Server unter CentOS 7 ein