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.
- listen-on port 53 – Dan jintuża biex id-DNS jisma' f'interfaces disponibbli.
- Master DNS – Iddefinixxi, l-indirizz IP Master DNS tiegħek biex tisma' l-mistoqsija.
- Slave DNS – Iddefinixxi Slave DNS tiegħek, li jintuża biex tissinkronizza l-informazzjoni taż-żona tagħna biex issolvi l-hosts minn Master.
- rikorsjoni le – Jekk issettjat għal iva, mistoqsijiet rikorsivi jagħmlu s-server f'attakk DDOS.
- Isem taż-Żona – Iddefinixxi l-isem taż-Żona tiegħek hawn definit bħala tecminlocal.com.
- tip master – Peress li din is-sistema kienet ikkonfigurata għal server master, għal server slave li jmiss dan se jkun slave.
- tecmintlocal.fwd.zone – Dan il-fajl għandu l-informazzjoni ospitanti għal din iż-żona.
- 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:
- Header – Dan jgħid kollox dak li tlabna u kif kien ir-riżultat.
- 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.
- Mistoqsija – Il-Mistoqsija li saret minna, hawnhekk il-mistoqsija tiegħi kienet masterdns.tecmintlocal.com.
- Tweġiba – It-talba għall-Mistoqsija ġiet solvuta jekk ikun hemm informazzjoni disponibbli.
- Awtorità – Ir-rispons tas-servers tal-ismijiet għad-dominju u ż-żona.
- Addizzjonali – Informazzjoni addizzjonali dwar is-servers tal-ismijiet bħall-isem tal-host u l-indirizz IP.
- Ħ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.