Djbdns nimeserveri kasutamine Debian Lenniga
Toores. Ehk seda pala võib täiendada.
Sisukord
Sissejuhatus
Üks võimalus on jaotada nimeservereid gruppidesse selle järgi, millised päringuid nad teenindavad
- autoriteetne (ingl. k. authoritative) -
- rekursiivne (ingl. k. recursive) -
- vaheladustav (ingl. k. caching) -
Seejuures tuleb tähele panna, et sama nimeserveri tarkvara saab käivitada kas mõnes või äärmisel juhul kõigil nimetatud režiimides. Arusaadavalt eeldab mingis režiimis käivitamine, et kõnealune nimeserveri tarkvara vastavat režiimi toetab.
djbdns on iseenesest autoriteetne, rekursiivne ja vaheladustav nimeserver.
Tööpõhimõte
djbdns tarkvara erineb oluliselt teistest nimeserveritest selle poolest, et tarkvara on modulaarne. Erinevaid funktsioone täidavad erinevate kasutajatena töötavad protsessid, nt
- dnscache - rekursiivne dns server, ei sisalda autoriteetseid andmeid
- tinydns - autoriteetne dns server, mis teenindab üle UDP
- axfrdns - autoriteetne dns server, mis teenindab üle TCP
djbdns protsessid töötavad nö daemontools ja ucspi-tcp utiliitide keskkonnas. Keskkond tagab protsessidele võrguühendused, logimise, ressursipiirangud jms.
djbdns paigaldamine
djbdns tarkvara paigaldamiseks tuleb öelda
# apt-get install djbdns
kusjuures lisaks paigaldatakse sellised paketid
- daemontools - komplekt utiliite unixi deemonite pidamiseks, korraldab deemonite töö jälgimise, logi jms
- daemontools-run - paketi paigaldamisega kaasneb muudatuste tegemine /etc/inittab faili, lisaks sisaldab daemontools töötaks mõnda vajalikku utiliiti, nt update-service
- ucspi-tcp - komplekt utiliite tcp ühenduste pidamiseks
Lisaks tuleb lisada kasutaja:grupp dnslog:dns
# groupadd dns # useradd -g dns dnslog
dnscache seadistamine
dnscache on djbdns komplekti rekursiivne resolver, tarkvara kasutamiseks ettevalmistamiseks peab süsteemis olema kasutaja:grupp dnscache:dns
# useradd -g dns dnscache
ning üks kord öelda nt
# dnscache-conf dnscache dnslog /etc/service/dnscache 192.168.10.53
kus
- dnscache - kasutajanimi
- dnslog - kasutajagrupp
- /etc/service/dnscache - kataloog kuhu dnscache tööd puudutavad andmed paigutatakse
- 192.168.10.53 - arvuti ip aadress, millel hakatakse päringutele vastama
Täiendav dnscache seadistamine toimub /etc/service/dnscache alla jäävas muutatuste tegemise teel, nt
- selleks, et subnetist 10.0.0.0/24 saaks esitada päringuid tuleb öelda
# touch /etc/service/dnscache/root/ip/10.0.0.0
kusjuures muudatus kehtestub koheselt.
tinydns seadistamine
tinydns on djbdns komplekti autoriteetne nimeserver, mille kasutamiseks ettevalmistamiseks peab süsteemis olema kasutaja:grupp tinydns:dns
# useradd -g dns dnscache
ning üks kord öelda nt
# tinydns-conf tinydns dnslog /etc/service/tinydns 127.0.0.1
Tsooniandmete lisamiseks tuleb kirjeldada andmed failis
# cat /etc/service/tinydns/root# cat data #define the authoritative nameserver .loomaaed.tartu.ee::ns.loomaaed.tartu.ee #mail exchanger @loomaaed.tartu.ee::mail.loomaaed.tartu.ee #arvutite ip aadressid =arvuti-1.loomaaed.tartu.ee:192.168.3.1 =arvuti-2.loomaaed.tartu.ee:192.168.3.2 # arvuti-1 on ka nimeserver +ns.loomaaed.tartu.ee:192.168.3.1 # arvuti-2 on postimasin +mail.loomaaed.tartu.ee:192.168.3.2 #and our webserver +www.loomaaed.tartu.ee:192.168.3.2
tinydns andmebaasi tekitamiseks tuleb öelda
# cd /etc/service/tinydns/root # make
axfrdns seadistamine
axfrdns on djbdns komplekti autoriteetne nimeserveri üle tcp töötav komponent, mille kasutamiseks ettevalmistamiseks peab süsteemis olema kasutaja:grupp axfrdns:dns
# useradd -g dns axfrdns
ning üks kord öelda nt
# axfrdns-conf axfrdns dnslog /etc/service/axfrdns /etc/service/tinydns 127.0.0.1
Nt tsooni kopeerimiseks peab failis /etc/service/axfrdns/tcp sisalduma rida
127.0.0.1:allow,AXFR="loomaaed.tartu.ee"
ning seejärel öelda
# cd /etc/service/axfrdns # make
djbdns käivitamine
djbdns programmid käivad svc tarkvara kontrolli all, daemontools-run paketi paigaldamisel lisatakse /etc/inittab faili sissekanne
#-- daemontools-run begin SV:123456:respawn:/usr/bin/svscanboot #-- daemontools-run end
Töötava dnscache, tinydns ja axfrdns protsessid näevad välja sellised
root 7830 0.0 0.2 17276 1368 ? Ss 16:13 0:00 /bin/sh /usr/bin/svscanboot root 7832 0.0 0.0 3824 448 ? S 16:13 0:00 \_ svscan /etc/service root 8089 0.0 0.0 3652 392 ? S 17:12 0:00 | \_ supervise dnscache root 8090 0.0 0.0 3652 392 ? S 17:12 0:00 | \_ supervise log dnslog 8091 0.0 0.0 3664 392 ? S 17:12 0:00 | | \_ multilog t ./main root 8504 0.0 0.0 3652 396 ? S 19:26 0:00 | \_ supervise dnscache root 8505 0.0 0.0 3652 396 ? S 19:26 0:00 | \_ supervise log dnslog 8506 0.3 0.0 3796 460 ? S 19:26 0:23 | | \_ multilog t ./main root 8839 0.0 0.0 3652 396 ? S 20:41 0:00 | \_ supervise tinydns tinydns 9087 17.2 0.0 3904 456 ? S 21:28 0:48 | | \_ /usr/bin/tinydns root 8840 0.0 0.0 3652 392 ? S 20:41 0:00 | \_ supervise log dnslog 8842 0.6 0.0 3796 460 ? S 20:41 0:19 | | \_ multilog t ./main root 8915 0.0 0.0 3652 392 ? S 21:03 0:00 | \_ supervise axfrdns root 9089 0.0 0.0 3684 400 ? S 21:28 0:00 | | \_ tcpserver -vDRHl0 -x \ tcp.cdb -- 192.168.10.53 53 /usr/bin/axfrdns root 8916 0.0 0.0 3652 392 ? S 21:03 0:00 | \_ supervise log dnslog 8918 0.0 0.0 3664 392 ? S 21:03 0:00 | \_ multilog t ./main root 7833 0.0 0.0 3640 352 ? S 16:13 0:00 \_ readproctitle service errors: ....
Nt dnscache käivitamiseks tuleb öelda
# svc -u /etc/service/dnscache
ja seiskamiseks
# svc -d /etc/service/dnscache
Kontrolliks
# svstat /etc/service/dnscache /etc/service/dnscache: up (pid 8507) 403 seconds
Logi tekib faili
/etc/service/dnscache/log/main/current
djbdns programmide töö lõpetamiseks tuleb /etc/inittab failist vastav rida välja kommenteerida ja öelda
# telinit q
djbdns kasutamine
TODO
Märkused
- djbdns ei sisalda SecDNS vahendeid