Issettja Master-Slave DNS Server billi tuża Għodod Bind f'RHEL/CentOS 6.5


Server tal-Ismijiet tad-Dominju (DNS) użat għar-riżoluzzjoni tal-isem għal kwalunkwe hosts. Is-servers tad-DNS Master (Server Primarju) huma l-handlers tad-dejta taż-żona oriġinali u s-server tad-DNS Slave (Server Sekondarju) huma biss servers ta’ backup li jintużaw biex jikkopjaw l-istess informazzjoni taż-żona mis-servers prinċipali. Master Server se jsolvi l-ismijiet għal kull hosts li ddefinijna fid-database taż-żona u juża l-protokoll UDP, minħabba li l-protokolli UDP qatt ma jużaw il-proċess ta 'rikonoxximent filwaqt li tcp juża rikonoxximent. Is-servers DNS jużaw ukoll protokolli UDP biex isolvu t-talba tal-mistoqsija l-aktar kmieni.

Il-fehim tad-DNS jista 'jkun ftit konfuż għal dawk li għadhom jibdew. Hawnhekk hawn spjegazzjoni qasira dwar kif jaħdem id-DNS.

Ejja ngħidu, jekk irridu naċċessaw xi websajt x'se nagħmlu? Ittajpja www.google.com fil-browser u agħfas id-dħul. Hmm dak huwa dak kollu li nafu, iżda l-fatt hu, kif l-uġigħ DNS jgħaddi minnu, filwaqt li jistaqsi għalina. Filwaqt li nittajpja www.google.com is-sistema tfittex għal www.google.com. Kull meta nittajpja xi isem tad-dominju, hemm . (tikka) fl-aħħar tal-www.google.com li jgħidu li tfittex is-server tal-għeruq tal-ispazju tal-isem.

Globalment hemm 13-il root server disponibbli biex isolvu l-mistoqsija. Għall-ewwel, filwaqt li nagħtu dħul bħala www.google.com il-brawżer tagħna se jgħaddi talba lis-solvent lokali tagħna, li għandu dħul dwar l-informazzjoni tas-server DNS tagħna kaptan u slave. Jekk ma jkollhomx informazzjoni dwar tali mistoqsija mitluba huma jgħaddu t-talba lid-dominju tal-Ogħla Livell (TLD), jekk TLD jgħidu li ma nafx it-talba, jista’ jkun is-server awtorevoli jaf it-talba tiegħek, jgħaddi lil awtorevoli. servers, hawn biss www.google.com kien definit bħala indirizz 72.36.15.56.

Sadanittant is-server awtorevoli jagħti t-tweġiba għal TLD u TLD jgħaddi lis-server tal-għeruq u l-għeruq jipprovdi l-informazzjoni lill-browser, għalhekk il-browser se jdaħħal fil-cache t-talba tad-DNS għal użu futur. Għalhekk dawn il-proċess twil se jsolvu biss b'millisekondi. Jekk ma jafux it-talba huma jwieġbu bħala NXDOMAIN. Dan ifisser, m'hemm l-ebda rekord kwalunkwe-stabu fid-database taż-Żona. Nittama li dan iġġiegħlek tifhem kif jaħdem id-DNS.

Aqra wkoll: Issettja DNS Cache Server f'Ubuntu

Għal dan l-artikolu, qed nuża 3 magni, 2 għas-setup tas-server (master u slave) u 1 għall-klijent.

---------------------------------------------------
Master DNS Server
---------------------------------------------------

IP Address	:	192.168.0.200
Host-name	:	masterdns.tecmintlocal.com
OS		:	Centos 6.5 Final
---------------------------------------------------
Slave DNS Server
---------------------------------------------------

IP Address	:	192.168.0.201
Host-name	:	slavedns.tecmintlocal.com
OS		:	Centos 6.5 Final
---------------------------------------------------
Client Machine to use DNS
---------------------------------------------------

IP Address	:	192.168.0.210
Host-name	:	node1.tecmintlocal.com
OS		:	Centos 6.5 Final
bind, bind-utils, bind-chroot
config file	:	/etc/named.conf
script file	:	/etc/init.d/named
53, UDP

Setup Master DNS Server

L-ewwel, ivverifika l-indirizz IP, Hostname u verżjoni tad-Distribuzzjoni tal-Master DNS Server, qabel ma timxi 'l quddiem għas-setup.

$ sudo ifconfig | grep inet
$ hostname
$ cat /etc/redhat-release

Ladarba, tikkonferma li s-settings ta 'hawn fuq huma korretti, huwa żmien li timxi' l quddiem biex tinstalla l-pakketti meħtieġa.

$ sudo yum install bind* -y

Wara l-installazzjoni tal-pakketti meħtieġa, issa ddefinixxi l-fajls taż-żona fil-fajl tal-konfigurazzjoni prinċipali 'named.conf'.

$ sudo vim /etc/named.conf

Mogħtija hawn taħt hija d-dħul tal-fajl named.conf tiegħi, ibdel il-fajl tal-konfigurazzjoni skont il-ħtieġa tiegħek.

//
// named.conf
//
// Provided by Red Hat bind package to configure the ISC BIND named(8) DNS
// server as a caching only nameserver (as a localhost DNS resolver only).
//
// See /usr/share/doc/bind*/sample/ for example named configuration files.
//

options {
        listen-on port 53 { 127.0.0.1; 192.168.0.200; }; # Here we need to add our Master DNS Server IP.
        listen-on-v6 port 53 { ::1; };
        directory       "/var/named";
        dump-file       "/var/named/data/cache_dump.db";
        statistics-file "/var/named/data/named_stats.txt";
        memstatistics-file "/var/named/data/named_mem_stats.txt";
        allow-query     { localhost; 192.168.0.0/24; }; # subnet range where my hosts are allowed to query our DNS.
        allow-transfer     { localhost; 192.168.0.201; };  # Here we need to our Slave DNS server IP.
        recursion no;

        dnssec-enable yes;
        dnssec-validation yes;
        dnssec-lookaside auto;

        /* Path to ISC DLV key */
        bindkeys-file "/etc/named.iscdlv.key";

        managed-keys-directory "/var/named/dynamic";
};

logging {
        channel default_debug {
                file "data/named.run";
                severity dynamic;
        };
};

zone "." IN {
        type hint;
        file "named.ca";
};

## Define our forward & reverse Zone file here for tecmintlocal.com.


zone"tecmintlocal.com" IN {
type master;
file "tecmintlocal.fwd.zone";
allow-update { none; };
};

zone"0.168.192.in-addr.arpa" IN {
type master;
file "tecmintlocal.rev.zone";
allow-update { none; };
};

#####
include "/etc/named.rfc1912.zones";
include "/etc/named.root.key";

Dawn li ġejjin huma l-ispjegazzjoni ta 'kull konfigurazzjoni li użajna fil-fajl ta' hawn fuq.

  1. listen-on port 53 – Dan jintuża biex id-DNS jisma' f'interfaces disponibbli.
  2. Master DNS – Iddefinixxi, l-indirizz IP Master DNS tiegħek biex tisma' l-mistoqsija.
  3. Slave DNS – Iddefinixxi Slave DNS tiegħek, li jintuża biex tissinkronizza l-informazzjoni taż-żona tagħna biex issolvi l-hosts minn Master.
  4. rikorsjoni le – Jekk issettjat għal iva, mistoqsijiet rikorsivi jagħmlu s-server f'attakk DDOS.
  5. Isem taż-Żona – Iddefinixxi l-isem taż-Żona tiegħek hawn definit bħala tecminlocal.com.
  6. tip master – Peress li din is-sistema kienet ikkonfigurata għal server master, għal server slave li jmiss dan se jkun slave.
  7. tecmintlocal.fwd.zone – Dan il-fajl għandu l-informazzjoni ospitanti għal din iż-żona.
  8. allow-update none – Jekk l-ebda wieħed se jissettja. mhux se juża Dynamic DNS (DDNS).

Għall-ewwel ejjew niddefinixxu d-dħul fiż-żona ta' ħarsa 'l quddiem. Hawnhekk għandna bżonn noħolqu l-fajls taż-żona fl-isem ta 'dak li għandna niddefinixxu fil-fajl named.conf kif hawn taħt.

tecmintlocal.fwd.zone
tecmintlocal.rev.zone

Aħna nużaw kampjuni ta 'fajls ta' konfigurazzjoni għall-ħolqien ta 'fajls ta' żona ta 'quddiem, għal dan irridu nikkopjaw il-kampjuni ta' fajls ta 'konfigurazzjoni.

$ sudo cp /var/named/named.localhost /var/named/tecmintlocal.fwd.zone
$ sudo cp /var/named/named.loopback /var/named/tecmintlocal.rev.zone

Ladarba, tkun ikkopjajt il-fajls tal-konfigurazzjoni, issa editja dawn il-fajls taż-żoni billi tuża l-editur vim.

$ sudo vim /var/named/tecmintlocal.fwd.zone

Qabel ma tiddefinixxi l-informazzjoni ospitanti tagħna fil-fajl taż-żona 'l quddiem, l-ewwel agħti ħarsa malajr lejn il-fajl taż-żona tal-kampjun.

Din hija l-konfigurazzjoni tiegħi taż-żona 'l quddiem, ehmeż id-dħul ta' hawn taħt u agħmel bidliet skont il-ħtieġa tiegħek.

$TTL 86400
@       IN SOA  masterdns.tecmintlocal.com.     root.tecmintlocal.com. (
                                  2014090401    ; serial
                                        3600    ; refresh
                                        1800    ; retry
                                      604800    ; expire
                                       86400 )  ; minimum

; Name server's

@       IN      NS      masterdns.tecmintlocal.com.
@       IN      NS      slavedns.tecmintlocal.com.

; Name server hostname to IP resolve.

@       IN      A       192.168.0.200
@       IN      A       192.168.0.201

; Hosts in this Domain

@       IN      A       192.168.0.210
@       IN      A       192.168.0.220
masterdns       IN      A       192.168.0.200
slavedns        IN      A       192.168.0.201
node1           IN      A       192.168.0.210
rhel1           IN      A       192.168.0.220

Issejvja u nieqaf mill-fajl billi tuża wq!. Wara li teditja l-ħarsa 'l quddiem, tidher qisha hawn taħt, Uża TAB biex tikseb format deċenti fil-fajl taż-żona.

Issa, oħloq fajl ta 'tfittxija b'lura, diġà għamilna kopja tal-fajl loop-back fl-isem ta' tecmintlocal.rev.zone. Allura, nużaw dan il-fajl biex nikkonfiguraw il-ħarsa inversa tagħna.

$ sudo vim /var/named/tecmintlocal.rev.zone

Qabel ma tiddefinixxi l-informazzjoni ospitanti tagħna fil-fajl taż-żona b'lura, agħti ħarsa malajr tal-kampjun tal-fajl ta 'tfittxija b'lura kif muri hawn taħt.

Din hija l-konfigurazzjoni tar-reverse zone tiegħi, ehmeż l-entrata hawn taħt u agħmel bidliet skont il-ħtieġa tiegħek.

$TTL 86400
@       IN SOA  masterdns.tecmintlocal.com. root.tecmintlocal.com. (
                                2014090402      ; serial
                                      3600      ; refresh
                                      1800      ; retry
                                    604800      ; expire
                                     86400 )    ; minimum

; Name server's

@       IN      NS      masterdns.tecmintlocal.com.
@       IN      NS      slavedns.tecmintlocal.com.
@       IN      PTR     tecmintlocal.com.

; Name server hostname to IP resolve.

masterdns       IN      A       192.168.0.200
slavedns        IN      A       192.168.0.201

;Hosts in Domain 

node1           IN      A       192.168.0.210
rhel            IN      A       192.168.0.220
200             IN      PTR     masterdns.tecmintlocal.com.
201             IN      PTR     slavedns.tecmintlocal.com.
210             IN      PTR     node1.tecmintlocal.com.
220             IN      PTR     rhel1.tecmintlocal.com.

Issejvja u aqbad il-fajl billi tuża wq!. Wara li teditja l-ħarsa inversa, tidher qisha hawn taħt, Uża TAB biex tikseb format deċenti fil-fajl taż-żona.

Iċċekkja s-sjieda tal-grupp ta' fajls ta' ħarsa 'l quddiem u ta' tfittxija b'lura, qabel ma tiċċekkja għal xi żbalji fil-konfigurazzjoni.

$ sudo ls -l /var/named/

Hawnhekk nistgħu naraw iż-żewġ fajls huma sjieda tal-utenti għerq, minħabba li fajls li nagħmlu kopja minn fajls kampjun huma disponibbli taħt /var/named/. Ibdel il-grupp għal imsejjaħ fuq iż-żewġ fajls billi tuża l-kmandi li ġejjin.

$ sudo chgrp named /var/named/tecmintlocal.fwd.zone
$ sudo chgrp named /var/named/tecmintlocal.rev.zone

Wara li tissettja s-sjieda korretta fuq il-fajls, ivverifikahom mill-ġdid.

$ sudo ls -l /var/named/

Issa, iċċekkja l-iżbalji fil-fajls taż-żona, qabel ma tibda s-servizz DNS. L-ewwel iċċekkja l-fajl named.conf, imbagħad iċċekkja fajls oħra taż-żona.

$ sudo named-checkconf /etc/named.conf
$ sudo named-checkzone masterdns.tecminlocal.com /var/named/tecmintlocal.fwd.zone
$ sudo named-checkzone masterdns.tecminlocal.com /var/named/tecmintlocal.rev.zone

B'mod awtomatiku iptables kien qed jaħdem u s-server DNS tagħna huwa ristrett għal localhost, jekk il-klijent irid isolvi l-isem mis-Server DNS tagħna, allura rridu nħallu t-talba deħlin, għal dan irridu nżidu r-regola ta 'l-inbound iptables għall-port 53.

$ sudo iptables -I INPUT -p udp --dport 53 -m state --state NEW -j ACCEPT

Issa, ivverifika li r-regoli ġew miżjuda b'mod korrett fil-katina INPUT.

$ sudo iptables -L INPUT

Sussegwentement, issalva r-regoli u erġa ibda l-firewall.

$ sudo service iptables save
$ sudo service iptables restart

Ibda s-servizz imsemmi u agħmel persistenti.

$ sudo service named start
$ sudo chkconfig named on
$ sudo chkconfig --list named

Fl-aħħarnett, ittestja l-fajls taż-żona DNS Master konfigurati (quddiem u b'lura), billi tuża għodod dig & nslookup.

$ dig masterdns.tecmintlocal.com		[Forward Zone]
$ dig -x 192.168.0.200
$ nslookup tecmintlocal.com
$ nslookup masterdns.tecmintlocal.com
$ nslookup slavedns.tecmintlocal.com

Kessaħ! aħna kkonfigurajna DNS Master, issa għandna bżonn inwaqqfu Slave DNS Server. Ejja nimxu 'l quddiem biex inwaqqfu server slave, Dan mhux se jieħu ħafna ħin bħala setup prinċipali.

Setup Slave DNS Server

Fil-magna Slave, irridu wkoll ninstallaw l-istess pakketti li jorbtu kif muri f'Master, allura ejja ninstallawhom billi tuża l-kmand li ġej.

$ sudo yum install bind* -y

Iftaħ u editja l-fajl ‘named.conf’ għad-database taż-żona u l-port isimgħu tagħna.

$ sudo vim /etc/named.conf

Agħmel bidliet kif muri, skont ir-rekwiżiti tiegħek.

//
// named.conf
//
// Provided by Red Hat bind package to configure the ISC BIND named(8) DNS
// server as a caching only nameserver (as a localhost DNS resolver only).
//
// See /usr/share/doc/bind*/sample/ for example named configuration files.
//

options {
        listen-on port 53 { 127.0.0.1; 192.168.0.201}; # Our Slave DNS server IP
        listen-on-v6 port 53 { ::1; };
        directory       "/var/named";
        dump-file       "/var/named/data/cache_dump.db";
        statistics-file "/var/named/data/named_stats.txt";
        memstatistics-file "/var/named/data/named_mem_stats.txt";
        allow-query     { localhost; 192.168.0.0/24; };
        recursion no;

        dnssec-enable yes;
        dnssec-validation yes;
        dnssec-lookaside auto;

        /* Path to ISC DLV key */
        bindkeys-file "/etc/named.iscdlv.key";

        managed-keys-directory "/var/named/dynamic";
};

logging {
        channel default_debug {
                file "data/named.run";
                severity dynamic;
        };
};

zone "." IN {
        type hint;
        file "named.ca";
};

## Define our slave forward and reverse zone, Zone files are replicated from master.

zone"tecmintlocal.com" IN {
type slave;
file "slaves/tecmintlocal.fwd.zone";
masters { 192.168.0.200; };
};

zone"0.168.192.in-addr.arpa" IN {
type slave;
file "slaves/tecmintlocal.rev.zone";
masters { 192.168.0.200; };
};

#####
include "/etc/named.rfc1912.zones";
include "/etc/named.root.key";

Ibda s-servizz DNS bl-użu.

$ sudo service named start

Wara li nibdew mill-ġdid is-servizz tal-irbit, m'għandniex għalfejn niddefinixxu l-informazzjoni taż-żona individwalment, peress li t-trasferiment tal-permess tagħna se jirreplika l-informazzjoni taż-żona mis-server prinċipali kif muri fl-immaġni hawn taħt.

$ sudo ls -l /var/named/slaves

Ivverifika, l-informazzjoni taż-żona billi tuża kmand tal-qtates.

$ sudo cat /var/named/slaves/tecmintlocal.fwd.zone
$ sudo cat /var/named/slaves/tecmintlocal.rev.zone

Sussegwentement, iftaħ il-port DNS 53 fuq iptables biex tippermetti konnessjoni deħlin.

$ sudo iptables -I INPUT -p udp --dport 53 -m state --state NEW -j ACCEPT

Issejvja r-regoli iptables u erġa ibda s-servizz iptables.

$ sudo service iptables save
$ sudo service iptables restart

Agħmel is-servizz persistenti fuq il-boot tas-sistema.

$ sudo chkconfig iptables on
Check whether persistent set for run-levels .
$ sudo chkconfig --list iptables

Dak hu!. Issa wasal iż-żmien li tikkonfigura l-magni tal-klijenti tagħna u niċċekkja l-hostname.

Ikkonfigura l-Magni tal-Klijent

Fin-naħa tal-klijent irridu nassenjaw l-entrata Primarja (192.168.0.200) u DNS Sekondarja (192.168.0.201) fis-settings tan-netwerk biex niksbu tassenja hostname. Biex tagħmel, mexxi l-kmand tas-setup biex tiddefinixxi dawn l-entrati kollha kif muri fl-istampa.

$ setup

Inkella, editja l-fajl '/etc/reslov.conf' u żid l-entrati li ġejjin.

$ vim /etc/resolv.conf
search tecmintlocal.com
nameserver 192.168.0.200
nameserver 192.168.0.201

Issa, ivverifika l-ip, l-isem tal-host u l-ħarsa tas-server tal-isem.

$ ifconfig | grep inet
$ hostname
$ nslookup tecmintlocal.com

Issa, iċċekkja l-quddiem & Reverse look-up DNS bl-użu.

$ dig masterdns.tecmintlocal.com
$ dig -x 192.168.0.200

Nifhmu l-Output tad-dig:

  1. Header – Dan jgħid kollox dak li tlabna u kif kien ir-riżultat.
  2. Status – L-istatus ma kien L-EBDA ŻBALL, dan ifisser liema talba ta' mistoqsija mibgħuta minna kienet ta' suċċess mingħajr ebda ŻBALL.
  3. Mistoqsija – Il-Mistoqsija li saret minna, hawnhekk il-mistoqsija tiegħi kienet masterdns.tecmintlocal.com.
  4. Tweġiba – It-talba għall-Mistoqsija ġiet solvuta jekk ikun hemm informazzjoni disponibbli.
  5. Awtorità – Ir-rispons tas-servers tal-ismijiet għad-dominju u ż-żona.
  6. Addizzjonali – Informazzjoni addizzjonali dwar is-servers tal-ismijiet bħall-isem tal-host u l-indirizz IP.
  7. Ħin ta' mistoqsija – Kemm dam biex jiġu solvuti l-ismijiet mis-servers ta' hawn fuq.

Fl-aħħar iċċekkja għan-node tagħna u agħmel ping.

$ dig node1.tecmintlocal.com
$ ping masterdns.tecmintlocal.com -c 2
$ ping slavedns.tecmintlocal.com -c 2
$ ping 192.168.0.200 -c 2
$ ping 192.168.0.201 -c 2

Fl-aħħarnett, is-setup komplut, hawn aħna kkonfigurajna kemm is-server DNS Primarju (Master) kif ukoll Slav (It-tieni) b'suċċess, nittama li kulħadd ikun setup-ed mingħajr ebda kwistjoni, tħossok liberu li twaqqa kumment jekk tiffaċċja xi kwistjoni waqt is-setup.