Sidonnan määrittäminen yksityisenä DNS-palvelimena RHEL 8: een


Domain Name System (DNS) on menetelmä, jolla käännetään ihmisen luettavia verkkotunnuksia (tai FQDN-nimiä) koneellisesti luettaviksi IP-osoitteiksi tietokoneen löytämiseksi verkosta, kuten Internetistä.

Tietokone- ja verkkojärjestelmissä tämä on välttämätöntä, koska vaikka ihmisten on helppo muistaa ja käyttää FQDN-tiedostoja, tietokoneet (asiakkaat) pääsevät muiden tietokoneiden (palvelimien) resursseihin tai palveluihin IP-osoitteiden perusteella.

Tältä osin DNS-palvelin (joka tunnetaan myös nimellä nimipalvelin) ylläpitää FQDN-hakemistoa ja kääntää ne IP-osoitteiksi; se voi myös palauttaa IP-osoitteen, kun isäntänimi/FQDN annetaan. DNS-palvelimia on erityyppisiä, mukaan lukien arvovaltainen nimipalvelin, välimuistiin tallennettu nimipalvelin ja monet muut.

Tässä artikkelissa käymme läpi vaiheet, joilla yksityinen/sisäinen, arvovaltainen DNS-palvelin asennetaan ja määritetään RHEL 8: lle avoimen lähdekoodin ohjelmistolla BIND.

  1. RHEL 8 minimaalisella asennuksella
  2. RHEL 8 ja RedHat-tilaus käytössä
  3. RHEL 8, staattinen IP-osoite

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

Vaihe 1: Sitovan DNS: n asentaminen RHEL 8: een

1. Asenna bind ja sen apuohjelmat palvelimelle suorittamalla seuraava komento cdnf.

# dnf install bind bind-utils

2. Käynnistä seuraavaksi DNS-palvelu toistaiseksi, anna sen sitten käynnistyä automaattisesti järjestelmän käynnistyksen yhteydessä ja tarkista onko järjestelmä käynnissä systemctl-komentojen avulla.

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

Vaihe 2: BIND DNS: n määrittäminen RHEL 8: lla

3. Bind DNS -palvelimen määrittämiseksi sinun on ensin tehtävä varmuuskopio alkuperäisestä asetustiedostosta /etc/named.conf seuraavalla cp-komennolla.

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

4. Avaa nyt /etc/named.conf -määritystiedosto muokkausta varten suosikkikomentorivisi tekstieditorilla seuraavasti.

# vi /etc/named.conf 

Kommentoi options -määritysosiossa seuraavat rivit.

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

5. Etsi seuraavaksi parametri allow-query ja aseta sen arvoksi verkko, mikä tarkoittaa, että vain paikallisen verkon isännät voivat tehdä kyselyn DNS-palvelimelta.

allow-query  {localhost; 192.168.56.0/24}

Vaihe 3: Forward- ja Reverse DNS -vyöhykkeiden luominen

Forward Zone on paikka, johon isäntänimi (tai FQDN) ja IP-osoitesuhde tallennetaan; se palauttaa IP-osoitteen käyttäen isäntänimeä. Huomaa, että tavalliset DNS-kyselyt ovat etsintäkyselyjä. Toisaalta käänteinen vyöhyke palauttaa isännän FQDN: n IP-osoitteensa perusteella.

6. Määritä eteenpäin ja taaksepäin olevat vyöhykkeet lisäämällä seuraavat rivit /etc/named.conf-tiedoston loppuun.

//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; }
};

Selitetään lyhyesti yllä olevien vyöhykekokoonpanojen vaihtoehdot:

  • tyyppi: Määrittää tämän palvelimen roolin vyöhykkeelle. Arvo "master" tarkoittaa, että se on arvovaltainen palvelin, jossa ylläpidetään vyöhykedatan pääkopiota.
  • tiedosto: määrittää vyöhykkeen tietokantatiedoston.
  • allow-update: määrittää isännät, jotka saivat lähettää dynaamisia DNS-päivityksiä päävyöhykkeille. Ei tässä tapauksessa.

Vaihe 4: Luo edelleenlähetetty DNS-vyöhyketiedosto

7. Luo ensin Forward zone -tiedosto hakemistoon/var/named.

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

Lisää siihen seuraava kokoonpano.

$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

Selitetään lyhyesti yllä oleva vyöhykemääritelmä ja parametrit.

  • TTL: määrittää RR: n elinajan ja $TTL -direktiivi antaa oletus-TTL jokaiselle RR: lle ilman erityistä TTL-sarjaa.
  • @: Se on alias asetustiedostossa määritetylle verkkotunnukselle (esim. tecmint.lan).
  • IN: tarkoittaa Internetiä.
  • SOA: määrittää virran alkamisen: kuka arvovaltainen nimipalvelin on (dns-primary.tecmint.lan), järjestelmänvalvojan yhteystiedot (admin.tecmint.lan, @ -merkki korvataan pisteellä) ja muut siihen liittyvät tietoa.
  • NS: tarkoittaa nimipalvelinta.
  • Sarja: DNS-palvelin käyttää tätä arvoa varmistaakseen, että tietyn vyöhyketiedoston sisältö on ajan tasalla.
  • Päivitä: määrittää, kuinka usein orjan DNS-palvelimen tulisi suorittaa vyöhykkeen siirto päälliköltä.
  • Yritä uudelleen: määrittää, kuinka usein orja yrittää epäonnistuneen vyöhykkeen siirron uudelleen.
  • Vanhenee: määrittää, kuinka kauan orjapalvelimen tulisi odottaa ennen vastaamista asiakaskyselyyn, kun isäntä ei ole tavoitettavissa.
  • Minimi: asettaa vyöhykkeen vähimmäis-TTL-arvon.
  • A: Isäntäosoite.

Vaihe 5: Käänteisen DNS-vyöhyketiedoston luominen

8. Samoin, luo käänteinen vyöhyketiedosto hakemistoon/var/named.

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

Lisää sitten seuraavat rivit siihen. Tässä PTR on vastakohta A-tietueelle, jota käytetään IP-osoitteen kartoittamiseen isäntänimeen.

$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. Määritä oikeat omistusoikeudet vyöhyketiedostoille seuraavasti.

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

10. Tarkista lopuksi DNS-kokoonpano ja vyöhyketiedostoilla on oikea syntaksin tekemisen jälkeen yllä mainitut muutokset käyttämällä name-checkconf -apuohjelmaa (no out ei tarkoita virhettä):

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

11. Kun olet suorittanut kaikki tarvittavat määritykset, sinun on käynnistettävä DNS-palvelu uudelleen, jotta viimeaikaiset muutokset tulevat voimaan.

# systemctl restart named

12. Seuraavaksi sinun on lisättävä DNS-palvelu järjestelmän palomuurin kokoonpanoon ja ladattava palomuuriasetukset palomuurin cmd-apuohjelmalla seuraavasti, ennen kuin kaikki asiakkaat voivat käyttää palvelimen DNS-palvelukokoonpanoja:

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

Vaihe 6: DNS-palvelun testaaminen asiakkaalta

13. Tässä osiossa näytetään, miten DNS-palvelu testataan asiakkaan puolelta. Kirjaudu sisään asiakaskoneeseen ja määritä se käyttämään yllä olevaa DNS-palvelinta. Avaa Linux-järjestelmässä tiedosto /etc/resolve.conf suosikkitekstieditorilla.

# vi /etc/resolve.conf 

Lisää siihen seuraava merkintä, joka käskee resolverin käyttämään määritettyä nimipalvelinta.

nameserver  192.168.56.100

Tallenna tiedosto ja sulje se. Huomaa, että sinun on määritettävä myös DNS-palvelin verkkoliittymän määritystiedostossa.

14. Lisää DNS-palvelimet IP 192.168.56.100 resolverina asiakaskoneen verkkoliitännän kokoonpanotiedostoon/etc/sysconfig/network-scripts/ifcfg-enp0s3 seuraavan kuvan mukaisesti.

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. Käytä sitten nslookup-apuohjelmaa kyselemään IP: tä verkon, www-, posti- ja docs-palvelinten isäntänimellä ja päinvastoin kuvan osoittamalla tavalla.

# 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

Tässä artikkelissa olemme osoittaneet, kuinka yksityinen, arvovaltainen DNS-palvelin asennetaan ja määritetään RHEL 8: een BIND-ohjelmiston avulla. Toivomme, että kaikki toimi sinulle hyvin, muuten lähetä meille kyselysi tai muut kommenttisi alla olevan palautelomakkeen kautta.