Postavljanje vezanja kao privatnog DNS poslužitelja na RHEL 8


Sustav imena domena (DNS) metoda je koja se koristi za prevođenje naziva domena čitljivih ljudima (ili potpuno kvalificiranih imena domena (FQDN)) na strojno čitljive IP adrese radi lociranja računala u mreži kao što je Internet.

U računalnim i mrežnim sustavima to je neophodno jer, iako je FQDN-ove lako pamtiti i koristiti, računala (klijenti) pristupaju resursima ili uslugama na drugim računalima (poslužiteljima) na temelju IP adresa.

S tim u vezi, DNS poslužitelj (poznat i kao poslužitelj imena) održava direktorij FQDN-ova i prevodi ih na IP adrese; također može vratiti IP adresu kada je naveden naziv hosta/FQDN. Postoje različite vrste DNS poslužitelja, uključujući mjerodavni poslužitelj imena, predmemoriranje poslužitelja imena i mnogi drugi.

U ovom ćemo vas članku provesti kroz korake za instaliranje i konfiguriranje privatnog/unutarnjeg, autoritativnog DNS poslužitelja na RHEL 8 pomoću softvera BIND otvorenog koda.

  1. RHEL 8 s minimalnom ugradnjom
  2. RHEL 8 s omogućenom pretplatom na RedHat
  3. RHEL 8 sa statičnom IP adresom

Domain: tecmint.lan
DNS Server IP and hostname: 192.168.56.100, dns-primary.tecmint.lan
DNS Client IP and hostname: 192.168.56.104, tecmint.tecmint.lan

Korak 1: Instalacija Bind DNS-a na RHEL 8

1. Da biste instalirali bind i njegove uslužne programe na vaš poslužitelj, pokrenite sljedeću cdnf naredbu.

# dnf install bind bind-utils

2. Zatim, za sada pokrenite DNS uslugu, a zatim joj omogućite automatsko pokretanje prilikom pokretanja sustava i provjerite radi li i radi pomoću naredbi systemctl.

# systemctl start named
# systemctl enable named
# systemctl status named

Korak 2: Konfiguriranje BIND DNS-a na RHEL 8

3. Da biste konfigurirali Bind DNS poslužitelj, prvo morate napraviti sigurnosnu kopiju izvorne konfiguracijske datoteke /etc/named.conf pomoću sljedeće cp naredbe.

# cp /etc/named.conf /etc/named.conf.orig

4. Sada otvorite /etc/named.conf konfiguracijsku datoteku za uređivanje pomoću vašeg omiljenog uređivača teksta naredbenog retka kako slijedi.

# vi /etc/named.conf 

U odjeljku za konfiguraciju options komentirajte sljedeće retke.

options {
        #listen-on port 53 { 127.0.0.1; };
        #listen-on-v6 port 53 { ::1; };
        directory       "/var/named";

5. Zatim potražite parametar allow-query i postavite njegovu vrijednost na vašu mrežu, što znači da samo domaćini na vašoj lokalnoj mreži mogu pitati DNS poslužitelj.

allow-query  {localhost; 192.168.56.0/24}

Korak 3: Stvaranje DNS zona unaprijed i obrnuto

Zona za prosljeđivanje je mjesto gdje se pohranjuju odnosi naziva hosta (ili FQDN-a) na IP adrese; vraća IP adresu pomoću imena hosta. Imajte na umu da su uobičajeni DNS upiti prosljeđivanje upita unaprijed. S druge strane, Reverse Zone vraća FQDN hosta na temelju njegove IP adrese.

6. Da biste definirali zone za naprijed i natrag, dodajte sljedeće retke na kraj datoteke /etc/named.conf.

//forward zone 
zone "tecmint.lan" IN { 
     type master; 
     file "tecmint.lan.db"; 
     allow-update { none; }; 
    allow-query {any; }
}; 
//backward zone 
zone "56.168.192.in-addr.arpa" IN { 
     type master; 
     file "tecmint.lan.rev"; 
     allow-update { none; }; 
    allow-query { any; }
};

Objasnimo ukratko opcije u gornjim konfiguracijama zona:

  • vrsta: definira ulogu ovog poslužitelja za zonu. Vrijednost "master" znači da je to mjerodavni poslužitelj na kojem se održava glavna kopija podataka zone.
  • datoteka: navodi datoteku baze podataka zone.
  • allow-update: određuje hostove kojima je dopušteno slanje dinamičkih DNS ažuriranja za glavne zone. U ovom slučaju nijedan.

Korak 4: Stvaranje prosljeđene datoteke DNS zone

7. Prvo stvorite datoteku zone s prosljeđivanjem u direktoriju/var/named.

# vi /var/named/tecmint.lan.db

Dodajte sljedeću konfiguraciju u nju.

$TTL 86400
@ IN SOA dns-primary.tecmint.lan. admin.tecmint.lan. (
    2019061800 ;Serial
    3600 ;Refresh
    1800 ;Retry
    604800 ;Expire
    86400 ;Minimum TTL
)

;Name Server Information
@ IN NS dns-primary.tecmint.lan.

;IP for Name Server
dns-primary IN A 192.168.56.100

;A Record for IP address to Hostname 
www IN A 192.168.56.5
mail IN A 192.168.56.10
docs  IN A 192.168.56.20

Objasnimo ukratko gornju definiciju zone i parametre.

  • TTL: određuje vrijeme života RR-a, a $TTL direktiva daje zadani TTL za svaki RR bez određenog TTL-a.
  • @: To je zamjensko ime za naziv domene (npr. tecmint.lan) definirano u glavnoj konfiguracijskoj datoteci.
  • IN: znači Internet.
  • SOA: navodi početak ovlaštenja: tko je mjerodavni poslužitelj imena (dns-primary.tecmint.lan), kontakt podaci administratora (admin.tecmint.lan, znak @ zamijenjen je točkom) i ostalo s tim u vezi informacije.
  • NS: znači poslužitelj imena.
  • Serijski: DNS poslužitelj koristi ovu vrijednost za provjeru ažuriranja sadržaja određene datoteke zone.
  • Osvježi: određuje koliko bi često pomoćni DNS poslužitelj trebao izvršiti prijenos zone s glavnog.
  • Pokušaj ponovo: određuje koliko često slave treba pokušati neuspjeli prijenos zone.
  • Istek: određuje koliko dugo slave server treba čekati prije nego što odgovori na upit klijenta kada je master nedostupan.
  • Minimum: postavlja minimalni TTL za zonu.
  • O: Adresa hosta.

Korak 5: Stvaranje datoteke obrnute DNS zone

8. Slično, stvorite datoteku reverzne zone u direktoriju/var/named.

# vi /var/named/tecmint.lan.rev

Zatim u njega dodajte sljedeće retke. Ovdje je PTR suprotan zapisu koji se koristi za mapiranje IP adrese na ime hosta.

$TTL 86400
@ IN SOA dns-primary.tecmint.lan. admin.tecmint.lan. (
    2019061800 ;Serial
    3600 ;Refresh
    1800 ;Retry
    604800 ;Expire
    86400 ;Minimum TTL
)
;Name Server Information
@ IN NS dns-primary.tecmint.lan.

;Reverse lookup for Name Server
100 IN PTR dns-primary.tecmint.lan.

;PTR Record IP address to HostName
5 IN PTR www.tecmint.lan.
10 IN PTR mail.tecmint.lan.
20 IN PTR docs.tecmint.lan.

9. Postavite ispravna vlasnička dopuštenja za datoteke zona kako slijedi.

# chown :named /var/named/tecmint.lan.db
# chown :named /var/named/tecmint.lan.rev

10. Na kraju, provjerite DNS konfiguraciju i datoteke zona imaju točnu sintaksu nakon što napravite gore navedene promjene, pomoću uslužnog programa named-checkconf (nema izlaza ne znači grešku):

# named-checkconf
# named-checkzone tecmint.lan /var/named/tecmint.lan.db
# named-checkzone 192.168.56.100 /var/named/tecmint.lan.rev

11. Nakon što obavite sve potrebne konfiguracije, morate ponovno pokrenuti DNS uslugu kako bi nedavne promjene stupile na snagu.

# systemctl restart named

12. Dalje, prije nego što bilo koji klijent može pristupiti konfiguracijama DNS usluga na poslužitelju, morate dodati DNS uslugu u konfiguraciju vatrozida sustava i ponovo učitati postavke vatrozida pomoću uslužnog programa firewall-cmd, kako slijedi:

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

Korak 6: Testiranje DNS usluge od klijenta

13. U ovom ćemo odjeljku pokazati kako testirati DNS uslugu s klijentske strane. Prijavite se na klijentski stroj, konfigurirajte ga da koristi gornji DNS poslužitelj. Na Linux sustavu otvorite datoteku /etc/resolve.conf pomoću omiljenog uređivača teksta.

# vi /etc/resolve.conf 

Dodajte u njega sljedeći unos koji rješavaču govori da koristi navedeni poslužitelj imena.

nameserver  192.168.56.100

Spremite datoteku i zatvorite je. Imajte na umu da u konfiguracijskoj datoteci mrežnog sučelja morate navesti i DNS poslužitelj.

14. Dodajte DNS poslužitelje IP 192.168.56.100 kao razrješivač u datoteku konfiguracije mrežnog sučelja klijentskog stroja/etc/sysconfig/network-scripts/ifcfg-enp0s3 kao što je prikazano na sljedećoj slici.

TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=dhcp
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=enp0s3
UUID=aba298ca-fa65-48cd-add9-6c3f1f28cee2
DEVICE=enp0s3
ONBOOT=no
DNS=192.168.56.100

15. Zatim upotrijebite uslužni program nslookup da biste upitali IP koristeći ime hosta i obrnuto, poslužitelja www, pošte i dokumenata u vašoj mreži, kao što je prikazano.

# nslookup 192.168.56.5
# nslookup www.tecmint.lan
# nslookup 192.168.56.10
# nslookup mail.tecmint.lan
# nslookup 192.168.56.20
# nslookup docs.tecmint.lan
# nslookup 192.168.56.100
# nslookup dns-primary.tecmint.lan

U ovom smo članku pokazali kako instalirati i konfigurirati privatni, autoritativni DNS poslužitelj na RHEL 8 pomoću softvera BIND. Nadamo se da vam je sve pošlo za rukom, u suprotnom, pošaljite nam svoje upite ili bilo koji drugi komentar putem obrasca za povratne informacije u nastavku.