Wyszukiwanie w witrynie

Zainstaluj i skonfiguruj serwer DNS obsługujący tylko buforowanie w RHEL/CentOS 7 – część 10


Serwery DNS są dostępne w kilku typach, takich jak master, slave, forwarding i cache, żeby wymienić tylko kilka przykładów, przy czym DNS obsługujący tylko pamięć podręczną jest łatwiejszy w konfiguracji. Ponieważ DNS korzysta z protokołu UDP, skraca to czas zapytania, ponieważ nie wymaga potwierdzenia.

Serwer DNS obsługujący tylko pamięć podręczną jest również nazywany resolwerem, który będzie wysyłał zapytania do rekordów DNS i pobierał wszystkie szczegóły DNS z innych serwerów, a następnie przechowywał każde żądanie zapytania w swojej pamięci podręcznej do późniejszego wykorzystania, tak że gdy będziemy wykonywać to samo żądanie w przyszłości, będzie działać z pamięci podręcznej, co jeszcze bardziej skróci czas odpowiedzi.

Jeśli chcesz skonfigurować serwer wyłącznie buforujący DNS w CentOS/RHEL 6, postępuj zgodnie z tym przewodnikiem tutaj:

Konfigurowanie serwera nazw DNS obsługującego tylko buforowanie w CentOS/RHEL 6

Moje środowisko testowe

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

Krok 1: Instalowanie serwera DNS obsługującego tylko pamięć podręczną w RHEL/CentOS 7

1. Serwer DNS obsługujący tylko pamięć podręczną można zainstalować za pomocą pakietu bind. Jeśli nie pamiętasz nazwy pakietu, możesz szybko wyszukać nazwę pakietu, korzystając z poniższego polecenia.

yum search bind

2. W powyższym wyniku zobaczysz kilka pakietów. Spośród nich musimy wybrać i zainstalować tylko pakiety bind i bind-utils, używając następującego polecenia yum.

yum install bind bind-utils -y

Krok 2: Skonfiguruj DNS obsługujący tylko pamięć podręczną w RHEL/CentOS 7

3. Po zainstalowaniu pakietów DNS możemy przystąpić do konfiguracji DNS. Otwórz i edytuj /etc/named.conf za pomocą preferowanego edytora tekstu. Wprowadź zmiany sugerowane poniżej (lub możesz użyć ustawień zgodnie ze swoimi wymaganiami).

listen-on port 53 { 127.0.0.1; any; };
allow-query     { localhost; any; };
allow-query-cache       { localhost; any; };

Te dyrektywy instruują serwer DNS, aby nasłuchiwał na porcie UDP 53 oraz zezwalał na zapytania i buforował odpowiedzi z localhost i dowolnej innej maszyny, która osiągnie serwer.

4. Należy pamiętać, że własność tego pliku musi być ustawiona na root:named, a także, jeśli jest włączony SELinux, po edycji pliku konfiguracyjnego musimy się upewnić, że jego kontekst jest ustawiony na named_conf_t jak pokazano na rys. 4 (to samo dotyczy pliku pomocniczego /etc/named.rfc1912.zones ):

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

W przeciwnym razie przed kontynuowaniem skonfiguruj kontekst SELinux:

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

5. Dodatkowo musimy teraz przetestować konfigurację DNS pod kątem błędów składniowych przed uruchomieniem usługi wiązania:

named-checkconf /etc/named.conf

6. Gdy wyniki weryfikacji składni wydają się idealne, zrestartuj usługę named, aby zastosować nowe zmiany, a także spraw, aby usługa automatycznie uruchamiała się po uruchomieniu systemu, a następnie sprawdź jej status:

systemctl restart named
systemctl enable named
systemctl status named

7. Następnie otwórz port 53 w zaporze sieciowej.

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

Krok 3: Serwer DNS obsługujący wyłącznie pamięć podręczną Chroot w RHEL i CentOS 7

8. Jeśli chcesz wdrożyć serwer DNS obsługujący tylko pamięć podręczną w środowisku chroot, musisz mieć zainstalowany w systemie pakiet chroot i nie jest wymagana żadna dalsza konfiguracja, ponieważ domyślnie jest to połączenie twarde z chrootem.

yum install bind-chroot -y

Po zainstalowaniu pakietu chroot możesz uruchomić ponownie Name, aby zastosować nowe zmiany:

systemctl restart named

9. Następnie utwórz dowiązanie symboliczne (nazwane także /etc/named.conf) wewnątrz /var/named/chroot/etc/:

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

Krok 4: Skonfiguruj DNS na komputerze klienckim

10. Dodaj serwery DNS Cache IP 192.168.0.18 jako moduł rozpoznawania nazw do komputera klienckiego. Edytuj /etc/sysconfig/network-scripts/ifcfg-enp0s3 jak pokazano na poniższym rysunku:

DNS=192.168.0.18

Oraz /etc/resolv.conf w następujący sposób:

nameserver 192.168.0.18

11. Wreszcie nadszedł czas, aby sprawdzić nasz serwer pamięci podręcznej. Aby to zrobić, możesz użyć narzędzia dig lub polecenia nslookup.

Wybierz dowolną witrynę i zapytaj ją dwukrotnie (jako przykład wykorzystamy facebook.com). Należy pamiętać, że w przypadku dig za drugim razem zapytanie zostanie zakończone znacznie szybciej, ponieważ jest obsługiwane z pamięci podręcznej.

dig facebook.com

Możesz także użyć nslookup, aby sprawdzić, czy serwer DNS działa zgodnie z oczekiwaniami.

nslookup facebook.com

Streszczenie

W tym artykule wyjaśniliśmy, jak skonfigurować serwer obsługujący tylko pamięć podręczną DNS w Red Hat Enterprise Linux 7 i CentOS 7 oraz przetestowaliśmy go na komputerze klienckim. Jeśli masz jakieś pytania lub sugestie, daj nam znać, korzystając z poniższego formularza.