Installieren und Konfigurieren eines Caching-Only-DNS-Servers in RHEL/CentOS 7 – Teil 10

DNS-Server gibt es in verschiedenen Typen, wie zum Beispiel Master, Slave, Forwarding und Cache, um nur einige Beispiele zu nennen, wobei der Cache-Only-DNS der einfachste in der Einrichtung ist. Da DNS den UDP-Protokoll verwendet, verbessert dies die Abfragezeit, da keine Bestätigung erforderlich ist.

RHCE Series: Setup Cache-Only DNS in RHEL and CentOS 7 – Part 11

Der Cache-Only-DNS-Server wird auch als Resolver bezeichnet, der DNS-Einträge abfragt und alle DNS-Details von anderen Servern abruft und jede Abfrageanfrage in seinem Cache für späteres Verwenden speichert, sodass, wenn wir in der Zukunft die gleiche Anfrage stellen, er diese aus seinem Cache beantwortet, wodurch die Antwortzeit weiter reduziert wird.

Wenn Sie auf der Suche nach einer Einrichtung eines DNS-Caching-Only-Servers in CentOS/RHEL 6 sind, folgen Sie dieser Anleitung hier:

Einrichten eines Caching-Only DNS-Namensservers in CentOS/RHEL 6

Mein Testumgebung

DNS server		:	dns.tecmintlocal.com (Red Hat Enterprise Linux 7.1)
Server IP Address	:	192.168.0.18
Client			:	node1.tecmintlocal.com (CentOS 7.1)
Client IP Address	:	192.168.0.29

Schritt 1: Installation eines Cache-Only DNS-Servers in RHEL/CentOS 7

1. Der Cache-Only DNS-Server kann über das bind-Paket installiert werden. Wenn Sie den Paketnamen nicht mehr kennen, können Sie schnell nach dem Paketnamen suchen, indem Sie den folgenden Befehl verwenden.

# yum search bind
Search DNS Bind Package

2. In den oben genannten Ergebnissen sehen Sie mehrere Pakete. Von diesen müssen wir nur die bind und bind-utils Pakete mit folgendem yum-Befehl auswählen und installieren.

# yum install bind bind-utils -y
Install DNS Bind in RHEL/CentOS 7

Schritt 2: Konfigurieren des Cache-Only DNS in RHEL/CentOS 7

3. Sobald die DNS-Pakete installiert sind, können wir mit der Konfiguration von DNS fortfahren. Öffnen und bearbeiten Sie /etc/named.conf mit Ihrem bevorzugten Texteditor. Nehmen Sie die unten vorgeschlagenen Änderungen vor (oder verwenden Sie Ihre Einstellungen entsprechend Ihren Anforderungen).

listen-on port 53 { 127.0.0.1; any; };
allow-query     { localhost; any; };
allow-query-cache       { localhost; any; };
Configure Cache-Only DNS in CentOS and RHEL 7

Diese Direktiven weisen den DNS-Server an, auf dem UDP-Port 53 zu lauschen, und Anfragen zuzulassen sowie Antworten aus dem Cache von localhost und von jedem anderen Rechner, der den Server erreicht.

4. Es ist wichtig zu beachten, dass das Eigentum dieser Datei auf root:named gesetzt sein muss und auch, wenn SELinux aktiviert ist, nach dem Bearbeiten der Konfigurationsdatei sicherstellen müssen, dass ihr Kontext auf named_conf_t gesetzt ist, wie in Abb. 4 gezeigt (das Gleiche gilt für die Hilfsdatei /etc/named.rfc1912.zones):

# ls -lZ /etc/named.conf
# ls -lZ /etc/named.rfc1912.zones

Andernfalls konfigurieren Sie den SELinux-Kontext, bevor Sie fortfahren:

# semanage fcontext -a -t named_conf_t /etc/named.conf
# semanage fcontext -a -t named_conf_t /etc/named.rfc1912.zones

5. Darüber hinaus müssen wir die DNS-Konfiguration jetzt auf Syntaxfehler testen, bevor wir den Bind-Dienst starten:

# named-checkconf /etc/named.conf

6. Nachdem die Syntaxüberprüfungsergebnisse perfekt erscheinen, starten Sie den named-Dienst neu, um die neuen Änderungen wirksam werden zu lassen, und stellen Sie sicher, dass der Dienst beim Systemstart automatisch gestartet wird, und überprüfen Sie dann seinen Status:

# systemctl restart named
# systemctl enable named
# systemctl status named
Configure and Start DNS Named Service

7. Öffnen Sie als Nächstes den Port 53 in der Firewall.

# firewall-cmd --add-port=53/udp
# firewall-cmd --add-port=53/udp --permanent
Open DNS Port 53 on Firewall

Schritt 3: Chroot Cache-Only DNS Server in RHEL und CentOS 7

8. Wenn Sie den Cache-only-DNS-Server innerhalb der chroot-Umgebung bereitstellen möchten, müssen Sie das Paket chroot auf dem System installiert haben und es ist keine weitere Konfiguration erforderlich, da es standardmäßig auf chroot verlinkt ist.

# yum install bind-chroot -y

Nach der Installation des chroot-Pakets können Sie named neu starten, um die neuen Änderungen wirksam werden zu lassen:

# systemctl restart named

9. Erstellen Sie als Nächstes einen symbolischen Link (auch genannt /etc/named.conf) innerhalb von /var/named/chroot/etc/:

# ln -s /etc/named.conf /var/named/chroot/etc/named.conf

Schritt 4: Konfigurieren Sie DNS auf dem Client-Rechner

10. Fügen Sie die DNS-Cache-Server IP 192.168.0.18 als Resolver zum Client-Rechner hinzu. Bearbeiten Sie /etc/sysconfig/network-scripts/ifcfg-enp0s3 wie im folgenden Bild gezeigt:

DNS=192.168.0.18
Configure DNS on Client Machine

Und /etc/resolv.conf wie folgt:

nameserver 192.168.0.18

11. Schließlich ist es an der Zeit, unseren Cache-Server zu überprüfen. Hierfür können Sie das dig-Dienstprogramm oder den nslookup-Befehl verwenden.

Wählen Sie eine beliebige Website aus und fragen Sie sie zweimal ab (wir verwenden facebook.com als Beispiel). Beachten Sie, dass die Abfrage beim zweiten Mal mit dig viel schneller abgeschlossen wird, da sie aus dem Cache bedient wird.

# dig facebook.com
Check Cache only DNS Queries

Sie können auch nslookup verwenden, um zu überprüfen, ob der DNS-Server wie erwartet funktioniert.

# nslookup facebook.com
Checking DNS Query with nslookup

Zusammenfassung

In diesem Artikel haben wir erklärt, wie man einen DNS-Cache-Only-Server in Red Hat Enterprise Linux 7 und CentOS 7 einrichtet und ihn auf einer Client-Maschine getestet. Lassen Sie uns gerne wissen, wenn Sie Fragen oder Vorschläge haben, indem Sie das untenstehende Formular verwenden.

Source:
https://www.tecmint.com/install-configure-cache-only-dns-server-in-rhel-centos-7/