Nimeserveri labor
Viimase muutmise aeg
08. Detsember 2011 10:47
Sissejuhatus
See wiki artikkel on koostatud IT infrastruktuuri teenused aine raames ning selle eesmärk on õpetada DNS serverite rakendamist.
Antud artikkel on suunatud eelkõige algajatele süsteemiadministraatoritele, kuid nõuab mõningasi teadmisi serverite konfigureerimisest.
Stsenaarium
Selles laboris mängitakse läbi stsenaarium:
Me oleme ISP ja meie ülesandeks on talletada ja jagada erinevate asutuste infrastruktuuride aadresse. Selleks on vaja teha master ja slave nimeserverid. Master server on selle jaoks, et hoida meie (ISP) enda domeeni tsoonifaile ja slave server on selleks, et hoida klientide tsoonifaile ja lubada tsoonifailide vahetust.
Lisaks meile on samas võrgus ühe kooli ja kahe firma infrastruktuurid (vaata joonist).
Nõuded
Enne stsenaariumi täielikku rakendamist peavad olema seadistatud asutuste erinevad teenused (nimeserver,veebiserver, failiserver jne).
NB! See artikkel ei sobi tavalise (üheserverilise) nimeserveri seadistamiseks, kuna konfiguratsioon on stsnenaariumi-spetsiifiline.
Lisainformatsioon DNS'i kohta
Täpsemalt saab lugeda DNS serveri ja DNS teenuse kohta siit: http://kuutorvaja.eenet.ee/wiki/DNS
Joonis
192.168.6.123 ns1.vork.ee www.vork.ee 192.168.6.124 Master ns2.vork.ee Slave nimeserver 2 ___ nimeserver 1 | | ___ |___| | | |___| Master Master Master klient 1 klient 2 klient 3 ___ ___ ___ | | | | | | |___| |___| |___| itkool.ee puder.ee kartulid.ee 192.168.6.101 192.168.6.116 192.168.6.120
Master nimeserveri installeerimine ja seadistamine
Master nimeserver on ISP tsooni hoidmiseks. See sektsioon õpetab kuidas konfigureerida ISP primaarset nimeserverit.
Installeerime bind9 teenuse.
sudo apt-get install bind9
Avame tekstiredaktoriga /etc/hosts faili
sudo nano /etc/hosts
Failis muudame 127.0.1.1 aadressiga algavat rida, pärast muutmist on rida järgmine:
127.0.1.1 ns1.vork.ee ns1
Muudame ka /etc/hostname faili. Avame selleks faili tekstiredaktoriga.
sudo nano /etc/hostname
Faili sisu peab olema järgnev:
ns1
Seejärel tuleks teenusele teha käivitus:
service hostname start
Järgmiseks muudame faili /etc/bind/named.conf.options. Selleks avame faili tekstiredaktoris:
sudo nano /etc/bind/named.conf.options
Kommenteerige sisse (eemaldage märk ; rea eest) forwarders sektsioon ja sinna kirjutage ISP DNS serveri IP aadress. Muudetud fail peab välja nägema järgmine:
acl me {192.168.6.124;}; options { directory "/var/cache/bind"; forwarders { 192.168.6.124; }; allow-recursion { me; }; allow-query { me; }; allow-transfer { me; }; auth-nxdomain no; # conform to RFC1035 listen-on-v6 { any; }; };
Miks näeb antud fail välja selline? Loe.
Järgmisena muudame faili /etc/bind/named.conf.default-zones. Avame faili tekstiredaktoris:
sudo nano /etc/bind/named.conf.default-zones
Siia faili peab lisama järgmised tsoonid (lisa järgnevad read faili):
zone "vork.ee" { type master; file "/var/lib/bind/vork.ee.zone"; allow-transfer { 192.168.6.124; }; allow-update { 192.168.6.124; }; also-notify { 192.168.6.124; }; };
Eelnevalt loodud tsoonid viitavad failidele, mis neid tsoone kirjeldavad. Selleks et neid faile luua, võtame aluseks olemasoleva localhost tsooni faili ja kopeerime seda.
sudo cp /etc/bind/db.127 /etc/bind/db.6.168.192.in-addr.arpa sudo cp /etc/bind/db.local /var/lib/bind/vork.ee.zone
Nüüd muudame vork.ee.zone faili, avame selle tekstiredaktoris:
sudo nano /var/lib/bind/vork.ee.zone
Muudetud fail peab olema selline:
; ; Zone file for vork.ee ; ; The full zone file ; $TTL 900 @ IN SOA vork.ee. hostmaster.vork.ee. ( 2011102603 ; serial, todays date + todays serial # 28800 ; refresh, seconds 7200 ; retry, seconds 864000 ; expire, seconds 900 ) ; minimum, seconds $ORIGIN vork.ee. IN NS ns.vork.ee. IN A 192.168.6.123 ns IN A 192.168.6.123
Peale muudatuse tegemist tsoonifailis tuleb tõsta Seriali numbrit ühe võrra, et muudatused hakkaksid kehtima.
Failis olevate kirjete kohta võib selgitusi saada siit
Kui tsoonifailid on olemas, siis tuleb muuta resolv.conf faili, selleks avame selle tekstiredaktoriga:
sudo nano /etc/resolv.conf
Nimeserveri aadress tuleb seal muuta enda serveri aadressiks(-deks). Fail näeb peale muutmist välja järgmine:
nameserver 192.168.6.124 nameserver 192.168.6.123
Nüüd tuleb BIND9 teenus taaskäivitada järgmise käsuga:
sudo /etc/init.d/bind9 restart
Sama töö teeb ära käsk:
sudo service bind9 restart
Kui teenuse restart õnnestub, siis kontrolli, kas nimeserver töötab. Selleks kasuta tööriistu nslookup, dig, ping.
Slave nimeserveri installeerimine ja seadistamine
Slave nimeserver on kõikide võrgus olevate tsoonide hoidmiseks. See sektsioon õpetab kuidas konfigureerida ISP slave nimeserverit.
Installeerime bind9 teenuse.
sudo apt-get install bind9
Avame tekstiredaktoriga /etc/hosts faili
sudo nano /etc/hosts
Failis muudame 127.0.1.1 aadressiga algavat rida, muudatus peab välja nägema järgmine:
127.0.1.1 ns2.vork.ee ns2
Muudame ka /etc/hostname faili. Avame selleks faili tekstiredaktoriga.
sudo nano /etc/hostname
Faili sisu peab olema järgnev:
ns2
Seejärel tuleks teenusele teha käivitus:
service hostname start
Järgmiseks muudame faili /etc/bind/named.conf.options. Selleks avame faili tekstiredaktoris:
sudo nano /etc/bind/named.conf.options
Muudetud fail peaks välja nägema järgmine:
acl me {192.168.6.0/24;}; options { directory "/var/cache/bind"; forwarders { 192.168.6.124; }; allow-recursion { me; }; allow-query { me; }; allow-transfer { me; }; auth-nxdomain no; # conform to RFC1035 listen-on-v6 { any; }; };
Miks näeb antud fail välja selline? Loe.
Järgmisena muudame faili /etc/bind/named.conf.default-zones. Avame faili tekstiredaktoris:
sudo nano /etc/bind/named.conf.default-zones
Siia faili peab lisama järgmised tsoonid (lisa järgnevad read faili):
zone "vork.ee" { type slave; file "/var/lib/bind/vork.zone"; allow-notify { 192.168.6.123; }; masters { 192.168.6.123; }; };
Kui tsoonifailid on olemas, siis tuleb muuta resolv.conf faili, selleks avame selle tekstiredaktoriga:
sudo nano /etc/resolv.conf
Nimeserveri aadress tuleb seal muuta enda serveri aadressiks(-deks). Fail näeb peale muutmist välja järgmine:
nameserver 192.168.6.124 nameserver 192.168.6.123
Nüüd tuleb BIND9 teenus taaskäivitada järgmise käsuga:
sudo /etc/init.d/bind9 restart
Sama töö teeb ära käsk:
sudo service bind9 restart
Vajalikud käsud nimeserveri administaatorile
Siin on kirjutatud mõned teadmised, mida DNS'i administraator teadma peab.
Kui tsoonifaile muudate, siis on vajalik tsooni uuesti laadida.
Tuleb anda nimeserverile järgmine käsk:
sudo rndc reload <tsoon>
Näiteks:
sudo rndc reload vork.ee
Kui on vaja nimeserveri vahemälust kustutada ära üks nimi
(näiteks on see kasulik mürgitatud serveri vahemälu puhul, Viide: DNS Spoofing )
Tuleb anda nimeserverile järgmine käsk:
sudo rndc flushname <nimi>
Näiteks:
sudo rndc flushname vork.ee
Kui on vaja nimeserveri vahemälu täielikult ära kustutada
Tuleb anda nimeserverile järgmine käsk:
sudo rndc flush
Dynaamilise tsooni reload
- Ei ole vajalik antud labori ülessande täitmiseks.
Süntaks:
rndc freeze <tsoon> sudo rndc reload <tsoon> rndc thaw <tsoon>
Näiteks:
rndc freeze vork.ee sudo rndc reload vork.ee rndc thaw vork.ee
Kui on vaja vaadata nimeserveri cache'i sisu
Selleks on vaja anda nimeserverile käsk
sudo rndc dumpdb -cache
seejärel avada loodud dump'i fail.
sudo less /var/cache/bind/named_dump.db
Kui on vaja vaadata nimeserveri cache statistikat
Selleks on vaja anda nimeserverile käsk
sudo rndc stats
seejärel avada named.stats fail.
sudo less /var/cache/bind/named.stats
Kui vaja näha statistikas ka tsoonifailide informatsiooni
Selleks on vaja lisada nano /etc/bind/named.conf.options faili rida
zone-statistics yes;
seejärel avada named.stats fail.
sudo less /var/cache/bind/named.stats
DNS Spoofing
Kuidas toimib avaliku võrgu DNS Spoofing – üheks näiteks oleks „DNS cache poisoning“ tehnoloogia, millega solgitakse avaliku DNS serveri (mis töötab Open Resolver põhimõttel) DNS cache ja vahetatakse mingi üldiselt enam levinud saidi (või saitide) IP aadress(id) välja ründe objektiks oleva IP’ga.
Viide: DNS Spoofing
Open resolver
Open resolveriks nimetatakse nimeserverit, mis pakub nimelahendusteenust ka väljapoole oma administratiivset domeeni. Enamasti on open resolveriks puudulikult konfigureeritud DNS server. Ilma otsese vajaduseta tasuks kindlasti vältida open resolveri püstipanekut oma võrku. Pole mingit vajadust pakkuda avalikku teenust kõigile. See tähendab enamasti, et nimelahendust saab kasutada kogu internet. Teiseks saab kogu maailmale avatud DNS serverit kasutada DDOS rünnakute läbiviimiseks. Lisaks on avatud serverit rünnata vahemälu manipuleerimise teel. Nii satuksid ohtu konkreetse serveri teenuseid kasutavad kliendid.
Viide: Open Resolver
Teenuse varundamine
Teenuse varundamiseks tuleb teha koopia /etc/bind ja /var/lib/bind kataloogist ja seal asuvatest failidest.
Käsk selleks on :
sudo tar czvf /backup/bind.tar.gz /etc/bind sudo tar czvf /backup/bindtsoonid.tar.gz /var/lib/bind
Teenuse taastamine
Teenuse taastamiseks tuleb kopeerida varundatud kataloogid /etc/bind ja /var/lib/bind kataloogide asemele.
sudo tar xzvf /backup/bind.tar.gz --directory / sudo tar xzvf /backup/bindtsoonid.tar.gz -directory /
Mis läks valesti
Urmo kustutas ära /etc/bind kausta. Kuidas tagasi sai? Loe siit: http://ubuntuforums.org/showthread.php?t=1375580
Tulemüür
Tulemüüris peavad olema avatud järgmised pordid:
- 53 tcp/udp
(vajalik DNS teenuse jaoks)
- 953 tcp/udp
(vajalik RNDC teenuse jaoks)
Meeskonnaliikmed
Urmo Laaneots, Karet Rikko, Ott Pärnoja, Markus Kont, Siim Kängsepp, Taavi Salumets, Juhan Liiva