Pag-set up sa Bind Ingon usa ka Private DNS Server sa RHEL 8


Ang Sistema sa Ngalan sa Domain (DNS) usa ka paagi nga gigamit sa paghubad sa mga ngalan sa domain nga mabasa sa tawo (o Fully Qualified Domain Names (FQDN)) sa mga adres nga IP nga mabasa sa makina, aron makit-an ang usa ka kompyuter sa usa ka network sama sa Internet.

Sa mga sistema sa kompyuter ug network, gikinahanglan kini tungod kay, bisan kung ang mga FQDN dali nga mahinumduman ug magamit sa mga tawo, ang mga kompyuter (kliyente) nag-access sa mga kapanguhaan o serbisyo sa ubang mga kompyuter (server) base sa mga adres sa IP.

Niining bahina, ang DNS server (nailhan usab nga name server) nagmintinar sa direktoryo sa FQDNs ug gihubad kini ngadto sa mga IP address; mahimo usab kini nga ibalik ang usa ka IP address kung ang usa ka hostname/FQDN gihatag. Adunay lain-laing mga matang sa DNS servers lakip na ang authoritative name server, caching name server ug daghan pa.

Niini nga artikulo, giyahi ka namo sa mga lakang sa pag-instalar ug pag-configure sa usa ka pribado/internal, awtoritatibo nga DNS server sa RHEL 8 gamit ang BIND open source software.

  1. RHEL 8 nga adunay Minimal nga Pag-install
  2. RHEL 8 nga adunay RedHat Subscription Enabled
  3. RHEL 8 nga adunay Static IP Address

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

Lakang 1: Pag-instalar sa Bind DNS sa RHEL 8

1. Aron ma-install ang bind ug ang mga utilities niini sa imong server, padagana ang mosunod nga cdnf command.

# dnf install bind bind-utils

2. Sunod, sugdi ang serbisyo sa DNS sa pagkakaron, dayon i-enable kini nga auto-start sa system boot ug susiha kon kini nag-andar na gamit ang systemctl commands.

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

Lakang 2: Pag-configure sa BIND DNS sa RHEL 8

3. Aron ma-configure ang Bind DNS server, kinahanglan una nimo nga mag-backup sa orihinal nga configuration file /etc/named.conf gamit ang pagsunod sa cp command.

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

4. Karon ablihi ang /etc/named.conf configuration file para sa pag-edit gamit ang imong paborito nga command line text editor sama sa mosunod.

# vi /etc/named.conf 

Ubos sa options configuration section, ikomento ang mosunod nga mga linya.

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

5. Sunod, pangitaa ang parameter nga allow-query ug ibutang ang bili niini sa imong network, nga nagpasabot nga ang mga host lamang sa imong lokal nga network ang makapangutana sa DNS server.

allow-query  {localhost; 192.168.56.0/24}

Lakang 3: Paghimo sa Forward ug Reverse DNS Zone

Usa ka Forward Zone diin ang hostname (o FQDN) sa mga relasyon sa IP address gitipigan; nagbalik kini og IP address gamit ang hostname. Timan-i nga ang normal nga mga pangutana sa DNS kay mga pangutana sa pagpangita sa unahan. Sa laing bahin, ang Reverse Zone nagbalik sa FQDN sa usa ka host base sa IP address niini.

6. Para ipasabot ang forward ug reverse zones, idugang ang mosunod nga mga linya sa katapusan sa /etc/named.conf file.

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

Atong ipasabut sa daklit ang mga kapilian sa mga pag-configure sa zone sa ibabaw:

  • type: Naghubit sa papel niini nga server alang sa sona. Ang bili nga master nagpasabot nga kini usa ka awtoritatibo nga server diin ang master copy sa zone data gipadayon.
  • file: nagtino sa file sa database sa sona.
  • allow-update: nagpiho sa mga host nga nagtugot sa pagsumite sa Dynamic DNS updates para sa master zones. Wala niini nga kaso.

Lakang 4: Paghimo sa Forward DNS Zone File

7. Una, paghimo ug Forward zone file ubos sa /var/ngamed directory.

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

Idugang ang mosunod nga configuration niini.

$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

Atong ipasabut sa daklit ang kahulugan sa zone sa ibabaw ug ang mga parameter.

  • TTL: nagpiho sa time-to-live sa RR ug $TTL nga direktiba naghatag ug default TTL sa matag RR nga walay espesipikong TTL set.
  • @: Kini usa ka alyas alang sa domain name (e.g. tecmint.lan) nga gihubit sa nag-unang configuration file.
  • IN: nagpasabot sa Internet.
  • SOA: nagpiho sa Start of Authority: kinsa ang authoritative name server (dns-primary.tecmint.lan), impormasyon sa kontak sa administrator (admin.tecmint.lan, ang @ sign gipulihan ug period) ug uban pang may kalabutan impormasyon.
  • NS: nagpasabot sa name server.
  • Serial: kini nga bili gigamit sa DNS server aron mapamatud-an nga ang mga sulod sa usa ka partikular nga zone file kay pinakabag-o.
  • Pag-refresh: nagpiho kon unsa ka subsob ang usa ka slave DNS server kinahanglang mohimo ug zone transfer gikan sa master.
  • Sulayi pag-usab: nagpiho kon unsa ka subsob ang usa ka ulipon kinahanglang mosulay pag-usab sa pakyas nga pagbalhin sa sona.
  • Pag-expire: nagtino kung unsa kadugay ang usa ka slave server kinahanglan maghulat sa dili pa motubag sa pangutana sa kliyente kung ang usa ka agalon dili maabot.
  • Minimum: nagtakda sa minimum nga TTL para sa sona.
  • A: Usa ka adres sa tagbalay.

Lakang 5: Paghimo og Reverse DNS Zone File

8. Susama, paghimo ug Reverse zone file ubos sa /var/ngalan nga direktoryo.

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

Dayon idugang ang mosunod nga mga linya niini. Dinhi, ang PTR mao ang kaatbang sa Usa ka rekord nga gigamit sa pagmapa sa usa ka IP address sa usa ka hostname.

$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. Itakda ang hustong mga permiso sa pagpanag-iya sa mga file sa zone sama sa mosunod.

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

10. Sa kataposan, susiha ang DNS configuration ug ang zone files adunay hustong syntax human sa paghimo sa mga kausaban sa ibabaw, gamit ang ginganlan-checkconf utility (no out nagpasabot nga walay sayop):

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

11. Kung nahuman na nimo ang tanan nga kinahanglan nga pag-configure, kinahanglan nimo nga i-restart ang serbisyo sa DNS alang sa mga bag-o nga pagbag-o nga matuman.

# systemctl restart named

12. Sunod, sa dili pa ang bisan kinsa nga kliyente maka-access sa DNS service configurations sa server, kinahanglan nimong idugang ang DNS service sa system firewall config ug i-reload ang firewall settings gamit ang firewall-cmd utility, ingon sa mosunod:

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

Lakang 6: Pagsulay sa Serbisyo sa DNS Gikan sa usa ka Kliyente

13. Niini nga seksyon, ipakita namon kung giunsa pagsulay ang serbisyo sa DNS gikan sa usa ka bahin sa kliyente. Pag-log in sa makina sa kliyente, i-configure kini aron magamit ang DNS server sa ibabaw. Sa Linux system, ablihi ang file /etc/resolve.conf gamit ang imong paborito nga text editor.

# vi /etc/resolve.conf 

Idugang ang mosunod nga entry niini, nga nagsulti sa solver sa paggamit sa gipiho nga nameserver.

nameserver  192.168.56.100

I-save ang file ug isira kini. Timan-i nga kinahanglan nimo usab nga ipiho ang DNS server sa network interface configuration file.

14. Idugang ang DNS servers IP 192.168.56.100 isip solver sa client machine network interface configuration file /etc/sysconfig/network-scripts/ifcfg-enp0s3 sama sa gipakita sa mosunod nga numero.

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. Dayon gamita ang nslookup utility sa pagpangutana sa IP gamit ang hostname ug vise versa, sa www, mail ug docs servers sa imong network sama sa gipakita.

# 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

Sa kini nga artikulo, gipakita namon kung giunsa ang pag-install ug pag-configure sa usa ka pribado, awtoritatibo nga DNS server sa RHEL 8 gamit ang BIND software. Kami nanghinaut nga ang tanan nagtrabaho nga maayo alang kanimo, kung dili, ipadala kanamo ang imong mga pangutana o bisan unsang ubang mga komento pinaagi sa porma sa feedback sa ubos.