Erinevus lehekülje "Rekursiivse resolveri Unbound kasutamine" redaktsioonide vahel
(→Unbound seadistamine) |
|||
| (ei näidata ühe teise kasutaja 66 vahepealset redaktsiooni) | |||
| 1. rida: | 1. rida: | ||
| + | [[Kategooria:Interneti domeeninimede süsteem]] | ||
===Sissejuhatus=== | ===Sissejuhatus=== | ||
| − | Üks võimalus on | + | Üks võimalus liigitada nimeservereid või nimeserverite tarkvara on selle järgi, millised päringuid teenindatakse |
| − | * autoriteetne (ingl. k. authoritative) - vastab päringutele ainult nimeserveri tsoonifailis kirjeldatud andmete alusel; autoriteetsed nimeserverid teenindavad | + | * autoriteetne (ingl. k. authoritative) - vastab päringutele ainult nimeserveri tsoonifailis kirjeldatud andmete alusel; autoriteetsed nimeserverid teenindavad reeglina resolverite päringuid |
| − | * rekursiivne (ingl. k. recursive) - rekursiivne nimeserver ei sisalda nö oma tsoonifaili, st ta ei ole mingite vastuste osas | + | * rekursiivne (ingl. k. recursive) - rekursiivne nimeserver ei sisalda nö oma tsoonifaili, st ta ei ole mingite vastuste osas autoriteetne; rekursiivne nimeserver teenindab mingi piiratud hulga klientide päringuid lahendades neid autoriteetsete nimeserverite abil ja seetõttu nimetatakse rekursiivset nimeserverit tihti resolveriks (ingl. k. to resolve - lahendama) |
| − | Unbound resolveril on selliseid omadused | + | Unbound http://www.unbound.net/ resolveril on selliseid omadused |
* rekursiivne - lahendab nö lõppkasutaja esitatud päringuid, nt sobib seadistada töökohaarvuti nimeserveriks | * rekursiivne - lahendab nö lõppkasutaja esitatud päringuid, nt sobib seadistada töökohaarvuti nimeserveriks | ||
* vaheladustav (ingl. k. caching) - Unbound peab kord lahendatud vastust mõnda aega meeles, mis tähendab, et järgmisele samale päringule vastab ta kliendile kohe ja ei pea omakorda pöörduma vastuse saamiseks autoriteetsete nimeserverite poole | * vaheladustav (ingl. k. caching) - Unbound peab kord lahendatud vastust mõnda aega meeles, mis tähendab, et järgmisele samale päringule vastab ta kliendile kohe ja ei pea omakorda pöörduma vastuse saamiseks autoriteetsete nimeserverite poole | ||
| − | * valideeriv - | + | * valideeriv - toetab DNSSEC kasutamist |
| + | * IPv6 tugi | ||
| − | + | Rekursiivse resolveri vastutus on parimal võimalikul moel anda kliendi esitatud päringule vastus, seejuures | |
| + | |||
| + | * anda õige vastus - nt mitte ennast lasta eksitada cache poisoning tehnikatest, võimalusel kasutada DNSSEC vahendeid | ||
| + | * vastata kiiresti | ||
===Unbound paigaldamine=== | ===Unbound paigaldamine=== | ||
2010 aastal leidub paljude operatsioonisüsteemide paketihalduses Unbound tarkvara. | 2010 aastal leidub paljude operatsioonisüsteemide paketihalduses Unbound tarkvara. | ||
| + | |||
| + | ====Debian==== | ||
Debian Lenny sisaldab versiooni 1.0.2 ja paigaldamiseks sobib öelda | Debian Lenny sisaldab versiooni 1.0.2 ja paigaldamiseks sobib öelda | ||
| 22. rida: | 29. rida: | ||
# apt-get install unbound | # apt-get install unbound | ||
| − | OpenBSD 4. | + | ====OpenBSD==== |
| + | |||
| + | OpenBSD 4.7 sisaldab binaarse paketina versiooni 1.4.1 ja paigaldamiseks sobib öelda | ||
| − | + | --- +unbound-1.4.1 ------------------- | |
| + | You should add: | ||
| + | |||
| + | syslogd_flags="${syslogd_flags} -a /var/unbound/dev/log" | ||
| + | |||
| + | to /etc/rc.conf.local to create a syslog socket in the unbound chroot. | ||
| + | |||
| + | You may also want to add the following to /etc/rc.local to start unbound | ||
| + | at boot: | ||
| + | |||
| + | if [ -x /usr/local/sbin/unbound ]; then | ||
| + | echo -n ' unbound'; /usr/local/sbin/unbound | ||
| + | fi | ||
===Unbound seadistamine=== | ===Unbound seadistamine=== | ||
| − | + | Resolveri seadistusfailis tuleb näidata muu hulgas | |
| + | |||
| + | * juurnimeserverite aadressid | ||
| + | * millisel aadressil resolver päringuid teenindab | ||
| + | * millised kliendid saavad resolverit kasutada, tavaliselt kliendi src ip aadressi täpsusega | ||
| + | |||
| + | Unbound tööd juhib seadistusfail unbound.conf | ||
| + | |||
| + | * /etc/unbound/unbound.conf - Debian | ||
| + | * /var/unbound/etc/unbound.conf - OpenBSD | ||
| + | |||
| + | Lihtsamal juhul võib kasutada nt sellise sisuga seadistusfaili | ||
| + | |||
| + | server: | ||
| + | interface: 192.168.10.190 | ||
| + | outgoing-interface: 192.168.10.190 | ||
| + | access-control: 192.168.10.0/24 allow | ||
| + | root-hints: "/var/unbound/etc/named.cache" | ||
| + | |||
| + | kus | ||
| + | |||
| + | * interface - millisel aadressil arvuti Unbound resolveri kliente teenindab | ||
| + | * outgoing-interface - milliselt aadressilt resolveri päringud autoriteetsetele nimeserveritele väljuvad | ||
| + | * access-control - millistelt ip aadressidelt saab Unbound resolverit kasutada | ||
| + | * root-hints - resolver peab alati teadma interneti juurnimeserverite aadresse | ||
| + | |||
| + | Juurnimeserverite aadresse saab küsida mõnes juba seadistatud resolveriga arvutis | ||
| + | |||
| + | $ dig . ns | ||
| + | |||
| + | või kopeerida aadressilt | ||
| + | |||
| + | $ ftp ftp://FTP.INTERNIC.NET/domain/named.cache | ||
| + | |||
| + | ===Unbound käivitamine=== | ||
| + | |||
| + | Unbound resolver teenindab päringuid portidel 53/udp ja 53/tcp. | ||
====Debian==== | ====Debian==== | ||
| − | + | Käivitamiseks tuleb öelda | |
| + | |||
| + | # /etc/init.d/unbound start | stop | ||
====OpenBSD==== | ====OpenBSD==== | ||
| − | Vaikimisi töötab Unbound OpenBSD all chroot keskkonnas kataloogis /var/unbound kasutajana _unbound. Unbound | + | Vaikimisi töötab Unbound OpenBSD all chroot keskkonnas kataloogis /var/unbound kasutajana _unbound. Selleks, et chroot keskkonnas töötav Unbound saaks logida syslog'i tuleb syslog käivitamisel lisaks kasutada '-a /var/unbound/dev/log' |
| − | = | + | # syslogd -a /var/www/dev/log -a /var/empty/dev/log -a /var/unbound/dev/log |
| + | |||
| + | /etc/rc.conf.local failis sobib kasutada rida | ||
| + | |||
| + | syslogd_flags="${syslogd_flags} -a /var/unbound/dev/log" | ||
| − | + | Unbound töö lõpetamiseks sobib öelda | |
| − | # | + | # pkill unbound |
===Unbound kasutamine=== | ===Unbound kasutamine=== | ||
| − | + | Unbound resolveri kasutajateks on tavaliselt arvutid, mis vajavad nimelahendust, nt kohtvõrgu arvutid, eposti serverid jt. Linux keskkonnas sobib näidata nimeserveri aadress staatiliselt arvuti /etc/resolv.conf failis nt reaga | |
| + | |||
| + | nameserver 192.168.10.190 | ||
| + | |||
| + | Unbound resolveri tööd saab kontrollida nt öeldes mõnes arvutis, kus peab kõnealust resolverit saama kasutada | ||
| + | |||
| + | $ dig @192.168.10.190 kuutorvaja.eenet.ee a | ||
| + | |||
| + | ja vastus peaks sisaldama sarnaseid ridu rida | ||
| + | |||
| + | ... | ||
| + | ;; QUESTION SECTION: | ||
| + | ;kuutorvaja.eenet.ee. IN A | ||
| + | |||
| + | ;; ANSWER SECTION: | ||
| + | kuutorvaja.eenet.ee. 83840 IN A 193.40.0.7 | ||
| + | .. | ||
| + | |||
| + | ===Nimepäringu vastuste valideerimine=== | ||
| + | |||
| + | Nimepäringute vastuste valideerimiseks kasutatakse üldiselt DNSSEC tehnikat. 2010 aastal on selleks mitmeid võimalusi, üks populaarne viis on DLV (DNSSEC Look-aside Validation). DLV seadistamiseks tuleb | ||
| + | |||
| + | * kopeerida trust anchor fail kataloogi /var/unbound/etc | ||
| + | |||
| + | # cd /var/unbound/etc | ||
| + | # ftp http://ftp.isc.org/www/dlv/dlv.isc.org.key | ||
| + | |||
| + | * Unbound seadistusfailis kasutada rida | ||
| + | |||
| + | dlv-anchor-file: "dlv.isc.org.key | ||
| + | |||
| + | Valideeritud nimepäringu vastus näeb välja nt selline | ||
| + | |||
| + | $ dig www.kaminskybug.se a +dnssec +multiline | ||
| + | |||
| + | ; <<>> DiG 9.5.1-P3 <<>> www.kaminskybug.se a +dnssec +multiline | ||
| + | ;; global options: printcmd | ||
| + | ;; Got answer: | ||
| + | ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 56069 | ||
| + | ;; flags: qr rd ra ad; QUERY: 1, ANSWER: 4, AUTHORITY: 4, ADDITIONAL: 1 | ||
| + | |||
| + | ;; OPT PSEUDOSECTION: | ||
| + | ; EDNS: version: 0, flags: do; udp: 4096 | ||
| + | ;; QUESTION SECTION: | ||
| + | ;www.kaminskybug.se. IN A | ||
| + | |||
| + | ;; ANSWER SECTION: | ||
| + | www.kaminskybug.se. 3590 IN CNAME fou.iis.se. | ||
| + | www.kaminskybug.se. 3590 IN RRSIG CNAME 5 3 3600 20100205210001 ( | ||
| + | 20100126210001 13358 kaminskybug.se. | ||
| + | goEav1vWK49WEvGY/G1EBKOgekQk11JvjsQxE7chH6Kg | ||
| + | OwZNpOXwomE1z9zvLcwkD60CQAZWC9psA1z01iIwtOrt | ||
| + | Yq6L+2A0PLVAAuRYeY3CQnbHoHRYClCUz0dIkxhtz9f/ | ||
| + | Um1AuC3FtqV6t9q8lLb4ooav0Ex64KuwoPPxqqs= ) | ||
| + | fou.iis.se. 3590 IN A 212.247.204.242 | ||
| + | fou.iis.se. 3590 IN RRSIG A 5 3 3600 20100209131501 ( | ||
| + | 20100130131501 56315 iis.se. | ||
| + | BOPpSETDBKu6CjOcz2ULnOnfRVoXfOXj9OjW4zwjPuWl | ||
| + | 7vJ8630yXsuSEe89RuH/ZsuOGbeJnumQ/XmD6ftWL9yM | ||
| + | MPUF1ZYxCtExaBcIxhxDIFJv4E4RZAOkbb9ZdYKTglIL | ||
| + | zDleOOms0iVgCAnnWJSnmDpzhfvr8xoTGlh7myE= ) | ||
| + | |||
| + | ;; AUTHORITY SECTION: | ||
| + | iis.se. 3590 IN NS ns.nic.se. | ||
| + | iis.se. 3590 IN NS ns3.nic.se. | ||
| + | iis.se. 3590 IN NS ns2.nic.se. | ||
| + | iis.se. 3590 IN RRSIG NS 5 2 3600 20100209131501 ( | ||
| + | 20100130131501 56315 iis.se. | ||
| + | B3SheLIv8ouVPpFGjvM8q5fl9ZMnnPWR8x9QDD0uSxoH | ||
| + | iV2fYHjiKC5a2+8Znsi4zSdO2AmH+reUCP74qvYpkl1K | ||
| + | +NbEzndzzrJQ0XlT1icy3MC6vdvgdE7Opqjab/7iIiYV | ||
| + | X9UjZpHKR284EljSrKJ0z53/T+12P3K0VU/dRFE= ) | ||
| + | |||
| + | ;; Query time: 1 msec | ||
| + | ;; SERVER: 10.53.67.69#53(10.53.67.69) | ||
| + | ;; WHEN: Sun Jan 31 00:25:39 2010 | ||
| + | ;; MSG SIZE rcvd: 648 | ||
| + | |||
| + | kus ad lipp annab tunnistust, et vastus on valideeritud | ||
| + | |||
| + | flags: qr rd ra ad; QUERY: 1, ANSWER: 4, AUTHORITY: 4, ADDITIONAL: 1 | ||
| + | |||
| + | ===Lokaalsed nimekirjeldused=== | ||
| + | |||
| + | Lisaks sellele, et Unboundi kasutab nimede lahendamisel võrgus töötavaid autoriteetseid nimeservereid, saab kirjeldada seadistusfailis päri- ja pöördteisendusi | ||
| + | |||
| + | local-data: "loomaaed.tartu.ee A 192.168.10.100" | ||
| + | local-data-ptr: "192.168.10.100 loomaaed.tartu.ee" | ||
| + | |||
| + | kus | ||
| + | |||
| + | * local-data - päriteisendus | ||
| + | * local-data-prt - pöördteisendus | ||
| + | |||
| + | Unbound lahendab vaikimisi mõlemas suunas localhost - 127.0.0.1 teisendust. | ||
| + | |||
| + | ===Stub tsoon=== | ||
| + | |||
| + | Stub tsooni abil saab öelda, millist autoriteetset nimeserverit kasutada mõne domeeni nimelahenduseks. Praktiliselt võiks seda vaja minna kui asutuses on nt kasutusel mitte-avalik autoriteetne nimeserver ja domeeni 'auul.' nimede lahendamiseks tuleks kasutada seda; vastasel korral püüaks Unbound neid nimesid lahendada pöördudes interneti juurnimeserverite poole. | ||
| + | |||
| + | Seadistusfailis kirjeldatakse stub tsoon selliselt | ||
| + | |||
| + | stub-zone: | ||
| + | name: "auul" | ||
| + | stub-addr: 192.168.1.251 | ||
| + | |||
| + | kus | ||
| + | |||
| + | * name - domeeni nimi | ||
| + | * stub-addr - domeeni autoriteetne nimeserver | ||
| + | |||
| + | ===Forward tsoon=== | ||
| + | |||
| + | Forward tsooni abil saab öelda, millist rekursiivset nimeserverit kasutada mõne domeeni nimelahenduseks. Seadistusfailis kirjeldatakse forward tsoon selliselt | ||
| + | |||
| + | forward-zone: | ||
| + | name: "loomla.tartu.ee" | ||
| + | forward-addr: 10.172.20.10 | ||
| + | |||
| + | kus | ||
| + | |||
| + | * name - domeeninimi | ||
| + | * forward-addr - rekursiivse nimeserveri aadress | ||
| + | |||
| + | Selleks, et suunata kõik päringud lahendamiseks edasi sobib kasutada | ||
| + | |||
| + | forward-zone: | ||
| + | name: "." | ||
| + | forward-addr: 10.172.20.10 | ||
| + | |||
| + | ===AS112 tsoonid=== | ||
| + | |||
| + | Selleks, et asutuse lokaalses autoriteetses nimeserveris kirjeldatud privaatsete aadresside pöördteisendused töötaksid tuleb kasutada | ||
| + | |||
| + | server: | ||
| + | ... | ||
| + | local-zone: "168.192.in-addr.arpa." nodefault | ||
| + | |||
| + | ning nt 192.168.1 võrgu puhul | ||
| + | |||
| + | stub-zone: | ||
| + | name: "1.168.192.in-addr.arpa." | ||
| + | stub-addr: 192.168.1.251 | ||
| + | |||
| + | ===Jõudlus=== | ||
| + | |||
| + | * Unbound oskab kasutada mitut protsessorit ja nö keskpärasel riistvaral suudab teenidada kümneid tuhandeid päringuid sekundis. | ||
| + | * Unbound on 2-3 korda kiirem kui Bind. | ||
| + | |||
| + | ===Klientprogrammi unbound-host kasutamine=== | ||
| + | |||
| + | Klientprogramm unbound-host võimaldab nt kontrollida, kas nimelahenduse valideerimine töötab | ||
| + | |||
| + | # unbound-host -C unbound.conf -t A -v www.kaminskybug.se | ||
| + | [1264938168] libunbound[2566:0] notice: init module 0: validator | ||
| + | [1264938168] libunbound[2566:0] notice: init module 1: iterator | ||
| + | www.kaminskybug.se is an alias for fou.iis.se. (secure) | ||
| + | fou.iis.se has address 212.247.204.242 (secure) | ||
| + | |||
| + | ===Haldusprogramm unbound-control=== | ||
| + | |||
| + | Haldusprogrammiga unbound-control saab juhtida Unbound resolveri tööd ja küsida statistikat. Kuna unbound-control võimaldab resolveri töötamist oluliselt mõjutada, nt laadida cache sisu tekstifailist või resolveri seisata, siis peab hoolega jälgima, et unbound-control kasutamisele oleks seatud vajalikud piirangud. | ||
| + | |||
| + | ====Unbound resolveri ettevalmistamine==== | ||
| + | |||
| + | unbound-control suhtleb Unbound serveriga vaikimisi üle 953/tcp pordi. Osaliste autentimiseks kasutatakse avaliku-võtme tehnikat, vajalike võtmete genereerimiseks sobib kasutada unbound-control-setup utiliiti | ||
| + | |||
| + | # unbound-control-setup | ||
| + | |||
| + | Tulemusena tekivad /var/unbound/etc kataloogi neli võtit, kask serveri ja kaks kliendi jaoks | ||
| + | |||
| + | unbound_control.key | ||
| + | unbound_control.pem | ||
| + | unbound_server.key | ||
| + | unbound_server.pem | ||
| + | |||
| + | unbound-control kasutamiseks tuleb vastav funktsionaalsus Unbound serveris sisse lülitada nt sektsiooniga | ||
| + | |||
| + | remote-control: | ||
| + | control-enable: yes | ||
| + | control-interface: 127.0.0.1 | ||
| + | |||
| + | ====unbound-control kasutamine==== | ||
| + | |||
| + | Vaikimisi kasutab unbound-control Unbound serveri seadistusfaili, nt sobib alustuseks kasutada unbound serverit ja unbound-control utiliiti samas arvutis. | ||
| + | |||
| + | * Unbound resolveri oleku küsimine | ||
| + | |||
| + | # unbound-control status | ||
| + | version: 1.3.0 | ||
| + | verbosity: 1 | ||
| + | threads: 1 | ||
| + | modules: 2 [ validator iterator ] | ||
| + | uptime: 1184 seconds | ||
| + | unbound (pid 23298) is running... | ||
| + | |||
| + | * Resolveri cacheist tsooni loomaaed.tartu.ee andmete kustutamine | ||
| + | |||
| + | # unbound-control flush_zone loomaaed.tartu.ee | ||
| + | ok removed 3 rrsets, 2 messages and 0 key entries | ||
| + | |||
| + | * Cache sisu esitamine | ||
| + | |||
| + | # unbound-control dump_cache | ||
| + | |||
| + | ====Resolveri kastutusstatistika==== | ||
| + | |||
| + | Üks unbound-control kasutusjuht on koguda resolveri kasutusstatistikat | ||
| + | |||
| + | # unbound-control stats_noreset | ||
| + | |||
| + | Praktiliselt on seda sobiv automatiseerida Munin või Cacti tarkvaraga, mida on kirjeldatud aadressil http://www.unbound.net/documentation/howto_statistics.html. | ||
===Kasulikud lisamaterjalid=== | ===Kasulikud lisamaterjalid=== | ||
* http://unbound.net/ | * http://unbound.net/ | ||
| + | * http://unbound.nlnetlabs.nl/pipermail/unbound-users/ | ||
* http://www.howtoforge.com/installing-using-unbound-nameserver-on-debian-etch | * http://www.howtoforge.com/installing-using-unbound-nameserver-on-debian-etch | ||
| + | * http://www.nlnetlabs.nl/publications/dnssec_howto/index.html | ||
| + | * http://secspider.cs.ucla.edu/islands.html | ||
| + | * https://itar.iana.org/ | ||
| + | * https://ns.iana.org/dnssec/status.html | ||
| + | * https://dlv.isc.org/ | ||
| + | * http://en.wikipedia.org/wiki/AS112 | ||
| + | * [[:Autoriteetse nimeserveri NSD kasutamine]] | ||
Viimane redaktsioon: 27. oktoober 2010, kell 11:06
Sisukord
- 1 Sissejuhatus
- 2 Unbound paigaldamine
- 3 Unbound seadistamine
- 4 Unbound käivitamine
- 5 Unbound kasutamine
- 6 Nimepäringu vastuste valideerimine
- 7 Lokaalsed nimekirjeldused
- 8 Stub tsoon
- 9 Forward tsoon
- 10 AS112 tsoonid
- 11 Jõudlus
- 12 Klientprogrammi unbound-host kasutamine
- 13 Haldusprogramm unbound-control
- 14 Kasulikud lisamaterjalid
Sissejuhatus
Üks võimalus liigitada nimeservereid või nimeserverite tarkvara on selle järgi, millised päringuid teenindatakse
- autoriteetne (ingl. k. authoritative) - vastab päringutele ainult nimeserveri tsoonifailis kirjeldatud andmete alusel; autoriteetsed nimeserverid teenindavad reeglina resolverite päringuid
- rekursiivne (ingl. k. recursive) - rekursiivne nimeserver ei sisalda nö oma tsoonifaili, st ta ei ole mingite vastuste osas autoriteetne; rekursiivne nimeserver teenindab mingi piiratud hulga klientide päringuid lahendades neid autoriteetsete nimeserverite abil ja seetõttu nimetatakse rekursiivset nimeserverit tihti resolveriks (ingl. k. to resolve - lahendama)
Unbound http://www.unbound.net/ resolveril on selliseid omadused
- rekursiivne - lahendab nö lõppkasutaja esitatud päringuid, nt sobib seadistada töökohaarvuti nimeserveriks
- vaheladustav (ingl. k. caching) - Unbound peab kord lahendatud vastust mõnda aega meeles, mis tähendab, et järgmisele samale päringule vastab ta kliendile kohe ja ei pea omakorda pöörduma vastuse saamiseks autoriteetsete nimeserverite poole
- valideeriv - toetab DNSSEC kasutamist
- IPv6 tugi
Rekursiivse resolveri vastutus on parimal võimalikul moel anda kliendi esitatud päringule vastus, seejuures
- anda õige vastus - nt mitte ennast lasta eksitada cache poisoning tehnikatest, võimalusel kasutada DNSSEC vahendeid
- vastata kiiresti
Unbound paigaldamine
2010 aastal leidub paljude operatsioonisüsteemide paketihalduses Unbound tarkvara.
Debian
Debian Lenny sisaldab versiooni 1.0.2 ja paigaldamiseks sobib öelda
# apt-get install unbound
OpenBSD
OpenBSD 4.7 sisaldab binaarse paketina versiooni 1.4.1 ja paigaldamiseks sobib öelda
--- +unbound-1.4.1 -------------------
You should add:
syslogd_flags="${syslogd_flags} -a /var/unbound/dev/log"
to /etc/rc.conf.local to create a syslog socket in the unbound chroot.
You may also want to add the following to /etc/rc.local to start unbound
at boot:
if [ -x /usr/local/sbin/unbound ]; then
echo -n ' unbound'; /usr/local/sbin/unbound
fi
Unbound seadistamine
Resolveri seadistusfailis tuleb näidata muu hulgas
- juurnimeserverite aadressid
- millisel aadressil resolver päringuid teenindab
- millised kliendid saavad resolverit kasutada, tavaliselt kliendi src ip aadressi täpsusega
Unbound tööd juhib seadistusfail unbound.conf
- /etc/unbound/unbound.conf - Debian
- /var/unbound/etc/unbound.conf - OpenBSD
Lihtsamal juhul võib kasutada nt sellise sisuga seadistusfaili
server:
interface: 192.168.10.190
outgoing-interface: 192.168.10.190
access-control: 192.168.10.0/24 allow
root-hints: "/var/unbound/etc/named.cache"
kus
- interface - millisel aadressil arvuti Unbound resolveri kliente teenindab
- outgoing-interface - milliselt aadressilt resolveri päringud autoriteetsetele nimeserveritele väljuvad
- access-control - millistelt ip aadressidelt saab Unbound resolverit kasutada
- root-hints - resolver peab alati teadma interneti juurnimeserverite aadresse
Juurnimeserverite aadresse saab küsida mõnes juba seadistatud resolveriga arvutis
$ dig . ns
või kopeerida aadressilt
$ ftp ftp://FTP.INTERNIC.NET/domain/named.cache
Unbound käivitamine
Unbound resolver teenindab päringuid portidel 53/udp ja 53/tcp.
Debian
Käivitamiseks tuleb öelda
# /etc/init.d/unbound start | stop
OpenBSD
Vaikimisi töötab Unbound OpenBSD all chroot keskkonnas kataloogis /var/unbound kasutajana _unbound. Selleks, et chroot keskkonnas töötav Unbound saaks logida syslog'i tuleb syslog käivitamisel lisaks kasutada '-a /var/unbound/dev/log'
# syslogd -a /var/www/dev/log -a /var/empty/dev/log -a /var/unbound/dev/log
/etc/rc.conf.local failis sobib kasutada rida
syslogd_flags="${syslogd_flags} -a /var/unbound/dev/log"
Unbound töö lõpetamiseks sobib öelda
# pkill unbound
Unbound kasutamine
Unbound resolveri kasutajateks on tavaliselt arvutid, mis vajavad nimelahendust, nt kohtvõrgu arvutid, eposti serverid jt. Linux keskkonnas sobib näidata nimeserveri aadress staatiliselt arvuti /etc/resolv.conf failis nt reaga
nameserver 192.168.10.190
Unbound resolveri tööd saab kontrollida nt öeldes mõnes arvutis, kus peab kõnealust resolverit saama kasutada
$ dig @192.168.10.190 kuutorvaja.eenet.ee a
ja vastus peaks sisaldama sarnaseid ridu rida
... ;; QUESTION SECTION: ;kuutorvaja.eenet.ee. IN A ;; ANSWER SECTION: kuutorvaja.eenet.ee. 83840 IN A 193.40.0.7 ..
Nimepäringu vastuste valideerimine
Nimepäringute vastuste valideerimiseks kasutatakse üldiselt DNSSEC tehnikat. 2010 aastal on selleks mitmeid võimalusi, üks populaarne viis on DLV (DNSSEC Look-aside Validation). DLV seadistamiseks tuleb
- kopeerida trust anchor fail kataloogi /var/unbound/etc
# cd /var/unbound/etc # ftp http://ftp.isc.org/www/dlv/dlv.isc.org.key
- Unbound seadistusfailis kasutada rida
dlv-anchor-file: "dlv.isc.org.key
Valideeritud nimepäringu vastus näeb välja nt selline
$ dig www.kaminskybug.se a +dnssec +multiline
; <<>> DiG 9.5.1-P3 <<>> www.kaminskybug.se a +dnssec +multiline
;; global options: printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 56069
;; flags: qr rd ra ad; QUERY: 1, ANSWER: 4, AUTHORITY: 4, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags: do; udp: 4096
;; QUESTION SECTION:
;www.kaminskybug.se. IN A
;; ANSWER SECTION:
www.kaminskybug.se. 3590 IN CNAME fou.iis.se.
www.kaminskybug.se. 3590 IN RRSIG CNAME 5 3 3600 20100205210001 (
20100126210001 13358 kaminskybug.se.
goEav1vWK49WEvGY/G1EBKOgekQk11JvjsQxE7chH6Kg
OwZNpOXwomE1z9zvLcwkD60CQAZWC9psA1z01iIwtOrt
Yq6L+2A0PLVAAuRYeY3CQnbHoHRYClCUz0dIkxhtz9f/
Um1AuC3FtqV6t9q8lLb4ooav0Ex64KuwoPPxqqs= )
fou.iis.se. 3590 IN A 212.247.204.242
fou.iis.se. 3590 IN RRSIG A 5 3 3600 20100209131501 (
20100130131501 56315 iis.se.
BOPpSETDBKu6CjOcz2ULnOnfRVoXfOXj9OjW4zwjPuWl
7vJ8630yXsuSEe89RuH/ZsuOGbeJnumQ/XmD6ftWL9yM
MPUF1ZYxCtExaBcIxhxDIFJv4E4RZAOkbb9ZdYKTglIL
zDleOOms0iVgCAnnWJSnmDpzhfvr8xoTGlh7myE= )
;; AUTHORITY SECTION:
iis.se. 3590 IN NS ns.nic.se.
iis.se. 3590 IN NS ns3.nic.se.
iis.se. 3590 IN NS ns2.nic.se.
iis.se. 3590 IN RRSIG NS 5 2 3600 20100209131501 (
20100130131501 56315 iis.se.
B3SheLIv8ouVPpFGjvM8q5fl9ZMnnPWR8x9QDD0uSxoH
iV2fYHjiKC5a2+8Znsi4zSdO2AmH+reUCP74qvYpkl1K
+NbEzndzzrJQ0XlT1icy3MC6vdvgdE7Opqjab/7iIiYV
X9UjZpHKR284EljSrKJ0z53/T+12P3K0VU/dRFE= )
;; Query time: 1 msec
;; SERVER: 10.53.67.69#53(10.53.67.69)
;; WHEN: Sun Jan 31 00:25:39 2010
;; MSG SIZE rcvd: 648
kus ad lipp annab tunnistust, et vastus on valideeritud
flags: qr rd ra ad; QUERY: 1, ANSWER: 4, AUTHORITY: 4, ADDITIONAL: 1
Lokaalsed nimekirjeldused
Lisaks sellele, et Unboundi kasutab nimede lahendamisel võrgus töötavaid autoriteetseid nimeservereid, saab kirjeldada seadistusfailis päri- ja pöördteisendusi
local-data: "loomaaed.tartu.ee A 192.168.10.100" local-data-ptr: "192.168.10.100 loomaaed.tartu.ee"
kus
- local-data - päriteisendus
- local-data-prt - pöördteisendus
Unbound lahendab vaikimisi mõlemas suunas localhost - 127.0.0.1 teisendust.
Stub tsoon
Stub tsooni abil saab öelda, millist autoriteetset nimeserverit kasutada mõne domeeni nimelahenduseks. Praktiliselt võiks seda vaja minna kui asutuses on nt kasutusel mitte-avalik autoriteetne nimeserver ja domeeni 'auul.' nimede lahendamiseks tuleks kasutada seda; vastasel korral püüaks Unbound neid nimesid lahendada pöördudes interneti juurnimeserverite poole.
Seadistusfailis kirjeldatakse stub tsoon selliselt
stub-zone:
name: "auul"
stub-addr: 192.168.1.251
kus
- name - domeeni nimi
- stub-addr - domeeni autoriteetne nimeserver
Forward tsoon
Forward tsooni abil saab öelda, millist rekursiivset nimeserverit kasutada mõne domeeni nimelahenduseks. Seadistusfailis kirjeldatakse forward tsoon selliselt
forward-zone: name: "loomla.tartu.ee" forward-addr: 10.172.20.10
kus
- name - domeeninimi
- forward-addr - rekursiivse nimeserveri aadress
Selleks, et suunata kõik päringud lahendamiseks edasi sobib kasutada
forward-zone: name: "." forward-addr: 10.172.20.10
AS112 tsoonid
Selleks, et asutuse lokaalses autoriteetses nimeserveris kirjeldatud privaatsete aadresside pöördteisendused töötaksid tuleb kasutada
server: ... local-zone: "168.192.in-addr.arpa." nodefault
ning nt 192.168.1 võrgu puhul
stub-zone:
name: "1.168.192.in-addr.arpa."
stub-addr: 192.168.1.251
Jõudlus
- Unbound oskab kasutada mitut protsessorit ja nö keskpärasel riistvaral suudab teenidada kümneid tuhandeid päringuid sekundis.
- Unbound on 2-3 korda kiirem kui Bind.
Klientprogrammi unbound-host kasutamine
Klientprogramm unbound-host võimaldab nt kontrollida, kas nimelahenduse valideerimine töötab
# unbound-host -C unbound.conf -t A -v www.kaminskybug.se [1264938168] libunbound[2566:0] notice: init module 0: validator [1264938168] libunbound[2566:0] notice: init module 1: iterator www.kaminskybug.se is an alias for fou.iis.se. (secure) fou.iis.se has address 212.247.204.242 (secure)
Haldusprogramm unbound-control
Haldusprogrammiga unbound-control saab juhtida Unbound resolveri tööd ja küsida statistikat. Kuna unbound-control võimaldab resolveri töötamist oluliselt mõjutada, nt laadida cache sisu tekstifailist või resolveri seisata, siis peab hoolega jälgima, et unbound-control kasutamisele oleks seatud vajalikud piirangud.
Unbound resolveri ettevalmistamine
unbound-control suhtleb Unbound serveriga vaikimisi üle 953/tcp pordi. Osaliste autentimiseks kasutatakse avaliku-võtme tehnikat, vajalike võtmete genereerimiseks sobib kasutada unbound-control-setup utiliiti
# unbound-control-setup
Tulemusena tekivad /var/unbound/etc kataloogi neli võtit, kask serveri ja kaks kliendi jaoks
unbound_control.key unbound_control.pem unbound_server.key unbound_server.pem
unbound-control kasutamiseks tuleb vastav funktsionaalsus Unbound serveris sisse lülitada nt sektsiooniga
remote-control:
control-enable: yes
control-interface: 127.0.0.1
unbound-control kasutamine
Vaikimisi kasutab unbound-control Unbound serveri seadistusfaili, nt sobib alustuseks kasutada unbound serverit ja unbound-control utiliiti samas arvutis.
- Unbound resolveri oleku küsimine
# unbound-control status version: 1.3.0 verbosity: 1 threads: 1 modules: 2 [ validator iterator ] uptime: 1184 seconds unbound (pid 23298) is running...
- Resolveri cacheist tsooni loomaaed.tartu.ee andmete kustutamine
# unbound-control flush_zone loomaaed.tartu.ee ok removed 3 rrsets, 2 messages and 0 key entries
- Cache sisu esitamine
# unbound-control dump_cache
Resolveri kastutusstatistika
Üks unbound-control kasutusjuht on koguda resolveri kasutusstatistikat
# unbound-control stats_noreset
Praktiliselt on seda sobiv automatiseerida Munin või Cacti tarkvaraga, mida on kirjeldatud aadressil http://www.unbound.net/documentation/howto_statistics.html.
Kasulikud lisamaterjalid
- http://unbound.net/
- http://unbound.nlnetlabs.nl/pipermail/unbound-users/
- http://www.howtoforge.com/installing-using-unbound-nameserver-on-debian-etch
- http://www.nlnetlabs.nl/publications/dnssec_howto/index.html
- http://secspider.cs.ucla.edu/islands.html
- https://itar.iana.org/
- https://ns.iana.org/dnssec/status.html
- https://dlv.isc.org/
- http://en.wikipedia.org/wiki/AS112
- Autoriteetse nimeserveri NSD kasutamine