GNU/Linux >> Znalost Linux >  >> Cent OS

Jak nastavit DNS Server (Bind) na CentOS 8 / RHEL8

Vyvinutý v 80. letech studenty Berkeley University,BIND (Berkeley Internet Name Domain ) je server DNS s otevřeným zdrojovým kódem která poskytuje služby DNS na distribucích Linuxu. Co je tedy server DNS? DNS server je služba, která pomáhá vyřešit plně kvalifikovaný název domény (FQDN ) na IP adresu a navíc provést zpětný překlad – překlad IP adresy na uživatelsky přívětivý název domény.

Proč je rozlišení jmen důležité? Počítače lokalizují služby na serverech pomocí IP adres. IP adresy však nejsou tak uživatelsky přívětivé jako doménová jména a bylo by těžké si pamatovat každou IP adresu spojenou s každým názvem domény. Server DNS zasáhne a pomůže přeložit tyto názvy domén na adresy IP počítačů.

Tato příručka vás provede procesem nastavení DNS bind serveru na CentOS 8 / RHEL 8.

Nastavení laboratoře:

  • Server:            CentOS 8 (minimální server)
  • IP adresa:    192.168.43.35
  • Hots Name :   dns-primary.linuxtechi.local
  • Doména:         linuxtechi.local

Pojďme se nyní pustit do práce s konfigurací DNS bind serveru.

Krok 1:Nainstalujte bind DNS na CentOS 8 / RHEL 8

Začneme instalací balíčku bind a bind-utils. Tyto balíčky tvoří DNS server a jeho nástroje odpovědné za dotazování jmenných serverů nebo DNS serverů.

Proveďte příkaz:

# dnf install bind bind-utils

Po úspěšné instalaci spusťte server DNS pomocí příkazu níže:

# systemctl start named

Dále jej povolte, aby se mohl spustit i po restartu

# systemctl enable named

Abyste se ujistili, že služba běží podle očekávání, zkontrolujte její stav

# systemctl status named

Skvělé, DNS server běží naprosto perfektně. Nyní přejdeme ke konfiguraci serveru Bind DNS

Krok 2:  Nakonfigurujte vazební server DNS

Doporučený postup obvykle doporučuje před provedením jakýchkoli změn vytvořit zálohu konfiguračního souboru. Je to proto, že pokud by se něco pokazilo, vždy se můžeme vrátit k původnímu neupravovanému souboru. A tady tomu není jinak.

Udělejme zálohu konfiguračního souboru  /etc/named.conf

# cp /etc/named.conf  /etc/named.bak

Nyní pokračujte a otevřete soubor pomocí preferovaného textového editoru. V tomto případě používáme editor vim.

# vim /etc/named.conf

V části „Možnosti ’ , ujistěte se, že zakomentujete řádky uvedené níže, abyste umožnili serveru Bind DNS naslouchat všem IP adresám.

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

Dále vyhledejte parametr allow-query a upravte jej podle podsítě vaší sítě.

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

Toto nastavení povoluje přístup k serveru DNS pouze hostitelům v definované síti, nikoli pouze libovolnému jinému hostiteli.

Zónadopředného vyhledávání DNS je ten, který ukládá vztah adresy IP názvu hostitele. Při dotazu poskytne IP adresu hostitelského systému pomocí názvu hostitele. Naproti tomu reverznízóna DNS vrátí plně kvalifikovaný název domény (FQDN) serveru ve vztahu k jeho IP adrese.

Chcete-li definovat zóny zpětného a dopředného vyhledávání, zkopírujte a vložte následující konfiguraci na konec /etc/named.conf

//forward zone
zone "linuxtechi.local" IN {
     type master;
     file "linuxtechi.local.db";
     allow-update { none; };
     allow-query { any; };
};

//backward zone
zone "43.168.192.in-addr.arpa" IN {
     type master;
     file "linuxtechi.local.rev";
     allow-update { none; };
     allow-query { any; };
};

  • typ :Určuje roli serveru pro konkrétní zónu. atribut ‚master‘ znamená, že se jedná o autoritativní server.
  • soubor :Ukazuje na soubor dopředné / zpětné zóny domény.
  • aktualizace povolení :Tento atribut definoval hostitelské systémy, které mohou předávat dynamické aktualizace DNS. V tomto případě žádné nemáme.

Po uložení ukončete konfigurační soubor /etc/named.conf.

Krok 3:Vytvořte dopředný soubor zóny DNS pro doménu

Vytvořte dopředný soubor zóny DNS pro doménu linuxtechi.local, jak je znázorněno níže, a přidejte následující obsah

[[email protected] ~]# vim /var/named/linuxtechi.local.db
$TTL 86400
@ IN SOA dns-primary.linuxtechi.local. admin.linuxtechi.local. (
                                                2020011800 ;Serial
                                                3600 ;Refresh
                                                1800 ;Retry
                                                604800 ;Expire
                                                86400 ;Minimum TTL
)

;Name Server Information
@ IN NS dns-primary.linuxtechi.local.

;IP Address for Name Server
dns-primary IN A 192.168.43.35

;Mail Server MX (Mail exchanger) Record
linuxtechi.local. IN MX 10 mail.linuxtechi.local.

;A Record for the following Host name
www  IN   A   192.168.43.50
mail IN   A   192.168.43.60

;CNAME Record
ftp  IN   CNAME www.linuxtechi.local.

Pojďme definovat některé parametry uvedené v konfiguračním souboru:

  • TTL :Toto je zkratka pro Time-To-Live. TTL je doba (neboli přeskoky), po kterou paket existuje v síti, než je router nakonec zahozen.
  • IN :To znamená Internet.
  • SOA :Toto je zkratka pro začátek úřadu. V podstatě definuje autoritativní jmenný server, v tomto případě dns-primary.linuxtechi.local a kontaktní informace – admin.linuxtechi.local
  • NS :Toto je zkratka pro Name Server.
  • A :Toto je záznam A. Ukazuje na název domény/subdomény na adresu IP
  • Sériové :Toto je atribut používaný serverem DNS k zajištění aktualizace obsahu souboru konkrétní zóny.
  • Obnovit :Definuje, kolikrát by měl podřízený server DNS přenést zónu z hlavního serveru.
  • Zkusit znovu :Definuje, kolikrát by se měl slave pokusit o přenos zóny, který nereaguje.
  • Platnost vyprší :Určuje dobu, po kterou by měl podřízený server čekat, než odpoví na dotaz klienta, když je hlavní server nedostupný.
  • Minimální :Toto je zodpovědné za nastavení minimálního TTL pro zónu.
  • MX :Toto je záznam výměny pošty. Určuje poštovní server, který přijímá a odesílá e-maily
  • CNAME :Toto je kanonické jméno. Mapuje alias název domény na jiný název domény.
  • PTR :Zkratka pro Pointer, tento atribut překládá IP adresu na název domény, na rozdíl od názvu domény.

Krok 4:Vytvořte soubor reverzní zóny DNS pro doménu

Podobně musíme vytvořit soubor pro zpětné vyhledávání DNS. Do souboru vložte následující obsah:

[[email protected] ~]# vim /var/named/linuxtechi.local.rev
$TTL 86400
@ IN SOA dns-primary.linuxtechi.local. admin.linuxtechi.local. (
                                            2020011800 ;Serial
                                            3600 ;Refresh
                                            1800 ;Retry
                                            604800 ;Expire
                                            86400 ;Minimum TTL
)
;Name Server Information
@ IN NS dns-primary.linuxtechi.local.
dns-primary     IN      A       192.168.43.35

;Reverse lookup for Name Server
35 IN PTR dns-primary.linuxtechi.local.

;PTR Record IP address to Hostname
50      IN      PTR     www.linuxtechi.local.
60      IN      PTR     mail.linuxtechi.local.

Dále dvěma konfiguračním souborům přiřaďte potřebná oprávnění k souboru.

# chown named:named /var/named/linuxtechi.local.db
# chown named:named /var/named/linuxtechi.local.rev

Chcete-li ověřit, že soubory vyhledávání zóny DNS neobsahují žádné syntaktické chyby, spusťte zobrazené příkazy:

# named-checkconf
# named-checkzone linuxtechi.local /var/named/linuxtechi.local.db
# named-checkzone 192.168.43.35 /var/named/linuxtechi.local.rev

Pokud nejsou žádné chyby, měl by se zobrazit výstup:

Aby se změny projevily v systému, restartujte server Bind DNS

# systemctl restart named

Aby klientské systémy měly přístup k systému, musíme přidat službu DNS na firewall a poté znovu načíst firewall.

# firewall-cmd  --add-service=dns --zone=public  --permanent
# firewall-cmd --reload

Krok 5:Otestujte server Bind DNS z klientského systému

Po dokončení konfigurace na serveru DNS se vydáme na klientský počítač a provedeme několik testů.

Na klientském počítači (CentOS 8 / RHEL 8) otevřete /etc/resolv.conf soubor a upravte následující parametr:

nameserver 192.168.43.35

Jako vždy uložte a zavřete konfigurační soubor.

Nakonec musíte připojit IP adresu Bind DNS serveru k /etc/sysconfig/network-scripts/ifcfg-enp0s3 soubor podle obrázku.

Uložte a zavřete konfigurační soubor a poté restartujte službu správce sítě, aby se výše uvedené změny projevily

# systemctl restart NetworkManager

Pomocí příkazu nslookup otestujte server Bind DNS podle obrázku:

# nslookup dns-primary.linuxtechi.local
# nslookup mail.linuxtechi.local
# nslookup www.linuxtechi.local
# nslookup ftp.linuxtechi.local

# nslookup 192.168.43.35

Výstup příkazu nslookup potvrzuje, že dopředné vyhledávání DNS funguje podle očekávání.

Kromě toho můžete také použít příkaz dig, jak je znázorněno

# dig dns-primary.linuxtechi.local

Chcete-li provést zpětné vyhledávání DNS, použijte příkaz dig, jak je uvedeno:

# dig -x 192.168.43.35

Perfektní! Reverzní DNS vyhledávání také funguje, jak bychom očekávali.

A tím tento tutoriál končí. V této příručce jsme vás provedli instalací serveru DNS pomocí Bind na CentOS 8. Vyzkoušejte to a neváhejte a pošlete nám svůj názor.

Přečtěte si také : Jak nastavit server NFS na CentOS 8 / RHEL 8


Cent OS
  1. Jak nainstalovat DNS server na RHEL 8 / CentOS 8 Linux

  2. Jak nastavit SFTP server na CentOS

  3. Jak nastavit server NFS na CentOS 7 / RHEL 7

  1. Jak nastavit SysLog Server na CentOS 7 / RHEL 7

  2. Jak nastavit DNS (Bind) Server na CentOS/RHEL 7/6/5

  3. Jak nastavit NTP server v CentOS?

  1. Jak nastavit soukromé servery DNS s BIND na CentOS 8

  2. Jak nastavit replikaci MySQL na CentOS

  3. Jak nastavit proxy server squid na CentOS/RHEL 7