<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="et">
	<id>https://kuutorvaja.eenet.ee/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Juhani</id>
	<title>Kuutõrvaja - Kasutaja kaastöö [et]</title>
	<link rel="self" type="application/atom+xml" href="https://kuutorvaja.eenet.ee/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Juhani"/>
	<link rel="alternate" type="text/html" href="https://kuutorvaja.eenet.ee/w/index.php/Eri:Kaast%C3%B6%C3%B6/Juhani"/>
	<updated>2026-04-18T00:48:20Z</updated>
	<subtitle>Kasutaja kaastöö</subtitle>
	<generator>MediaWiki 1.43.6</generator>
	<entry>
		<id>https://kuutorvaja.eenet.ee/w/index.php?title=DNS_ja_BIND&amp;diff=14573</id>
		<title>DNS ja BIND</title>
		<link rel="alternate" type="text/html" href="https://kuutorvaja.eenet.ee/w/index.php?title=DNS_ja_BIND&amp;diff=14573"/>
		<updated>2009-09-01T13:50:41Z</updated>

		<summary type="html">&lt;p&gt;Juhani: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Traditsiooniline sissejuhatus =&lt;br /&gt;
&lt;br /&gt;
Kindlasti kohe ei ole selle teksti lugejate hulgas inimesi, kes ei tea mis on DNS ja mil moel teda tarbitakse. Aeg ajalt on siiski kasulik ka teadmiste elementaarosakesed üle korrata, ent ajanappuses teadjamad kodanikud võiksid siis närvirakkude säästmiseks järgnevad pisikesed sissejuhatavad ajaloo ja baasteadmiste lõigud vahele jätta ja koheselt BINDi hingeelu lahkavate osade kallale asuda.&lt;br /&gt;
&lt;br /&gt;
Minnes tagasi iidsete aegade juurde, siis kui veel IT dinosaurused ringi müttasid – umbes 1970ndad – oli kogu arvutimaailm võrreldes tänase päevaga vägagi teistmoodi. Korralik server täitis vähemalt ühe korruse, kui mitte suisa terve maja, ja kaalu oli mitme tanki jagu. &lt;br /&gt;
&lt;br /&gt;
Algselt, kui omavahel ühendatud arvutivõrke oli piisavalt vähe, sai serveri poole pöördumisel ka IP aadressi kasutamisega askeetlikult hakkma. Inimaju imeliku ehituse tõttu ei püsinud Võrgu kasvades sõbralikud IP aadressid enam kasutajatel meeles ja hakati harrastama nimede andmist IP aadressidele, nii sündisid &#039;&#039;&#039;domeeninimed&#039;&#039;&#039;. Paare nimi=&amp;lt;IP aadress&amp;gt; hoiti igas tähtsamas purgis tekstifailis millel nimeks hosts.txt ja mida iga serveri haldaja oma nägemust mööda täiendas. Mingi hetk sai aga kasutajatel selgelt villanud sellest pudrust-kapsast mida selline haldus (või siis haldamatus) endaga kaasa tõi ja &#039;73ndal tehti ettepanek tsentraalse süsteemi loomiseks, mis kiirelt ka implementeeriti ja oli elujõuline kuni &#039;80ndate alguseni. &lt;br /&gt;
&lt;br /&gt;
Võrkuühendatud arvutite hulga kasvades paisus aga ka hosts fail. Hosts faili sobimatus antud situatsioonis kasutamiseks ning e-kirjade marsruutimise keerukus olid peamised initsiaatorid, mis tõid kaasa praeguse nimesüsteemi üheks alustalaks oleva RFC nr. 830 sünni. Järgnev on, nagu armastatakse öelda, juba ajalugu. &lt;br /&gt;
&lt;br /&gt;
Päris julgelt võib väita, et tänasel päeval on DNS Interneti toimimise vaatenurgast üks kriitilisemaid teenuseid. Justnimelt seda silmas pidades otsustati, et tarkvara, mida hakatakse kasutama selle teenuse osutamiseks, peab olema: &lt;br /&gt;
* võimalikult veavaba&lt;br /&gt;
* vajadusel kiirelt paigatav, ning &lt;br /&gt;
* täielikult usaldatud Interneti kogukonna poolt. &lt;br /&gt;
&lt;br /&gt;
Teiste sõnadega – nimeserver peab olema avatud lähtekoodiga. Nii sündis &#039;&#039;&#039;BIND&#039;&#039;&#039; - enimkasutatud nimeserveri tarkvara. &lt;br /&gt;
&lt;br /&gt;
Kuigi võib tunduda, et mis selles nimede serveerimises siis keerulist saab olla, on DNS pidevas muutumises standardite kogum ja BIND pidevas arengus tarkvara. Kurikaeltel on imeline võime üles leida nõrkused suvalises süsteemis ning see on aidanud läbi valu ja pisarate muuta nii DNS protokolli ennast kui ka seda protokolli implementeerivat tarkvara paremaks ja turvalisemaks. &lt;br /&gt;
&lt;br /&gt;
Lähtudes tänapäevases Internetis tekkinud Metsiku Lääne keskkonnast on ka selles dokustaadis lisaks tavapärastele põhielementidele nagu tsoonid, delegeerimine jms kaetud ka nn &#039;&#039;advanced topicud&#039;&#039; &#039;&#039;&#039;DNSSEC&#039;&#039;&#039;, &#039;&#039;&#039;SPF&#039;&#039;&#039;, IPv6 ning haldamise-turvalisuse aspektist olulised &#039;&#039;lõhestunud isiksusega DNS&#039;&#039; (vaated), &#039;&#039;&#039;TTL&#039;&#039;&#039;. Lisaks on lahti seletatud kuidas toimivad mõned enimlevinud DNSi protokolli- või implementeeriva tarkvara nõrkusi kasutavad ründed, et süsteemihaldurid teaks ette valmistada ennast ja hallatavaid süsteeeme võimalike ebameeldivuste varalt.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Nimepuu ==&lt;br /&gt;
&lt;br /&gt;
DNSi ülesehitus on puu laadne. Kõige aluseks on juured elik &amp;quot;.&amp;quot; (&amp;quot;punkt&amp;quot;) serverid, kes teavad järgmise taseme domeenide servereid. Järgnevad ülema astme domeenid (TLD) nagu näiteks .org, .net, .com ning riikide TLDd nagu näiteks .ee, .fi, .ru. Nood omakorda teavad kõike enda taseme haru (pädevusala) kohta ja, mitte eriti üllatuslikult, teavad järgmise taseme serverid kõike oma pädevusala kohta ... &lt;br /&gt;
&lt;br /&gt;
Nõudeks on, et haru samal tasmel nimed ei kordu. Pisike ASCII kunst seda juttu ilmestama:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;&lt;br /&gt;
              .&lt;br /&gt;
             / \  &lt;br /&gt;
          ee    com&lt;br /&gt;
          /       \ &lt;br /&gt;
       neti      google  &lt;br /&gt;
       /  \       /   \ &lt;br /&gt;
      x   www  mail    www &lt;br /&gt;
     / \ &lt;br /&gt;
    y   z&lt;br /&gt;
&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Domeeni nimi kujuneb liikudes alguspunktist edasi ja kirjutatakse lahti meile harjumatus suunas paremalt vasakule, ignoreerides kirjapildis tavaliselt punkti (aga näiteks brauserid tunnistavad punkti nime lõpus, proovi kui ei usu!), seega läbides tee:&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039; . -&amp;gt; ee -&amp;gt; neti&#039;&#039;&#039; kirjutub täisnimi kujule &#039;&#039;&#039;neti.ee&#039;&#039;&#039; ja läbides tee:&lt;br /&gt;
* &#039;&#039;&#039; . -&amp;gt; com -&amp;gt; google &#039;&#039;&#039; saame &#039;&#039;&#039;google.com&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
Harul sama taseme mittekorduvuse nõude ilmestuseks - legaalsed on teed (samad tasemed aga erinevad harud):&lt;br /&gt;
* &#039;&#039;&#039; . -&amp;gt; ee -&amp;gt; google&#039;&#039;&#039; (google.ee) või&lt;br /&gt;
* &#039;&#039;&#039; . -&amp;gt; com -&amp;gt; neti &#039;&#039;&#039; (neti.com) &lt;br /&gt;
&lt;br /&gt;
ja ilmselgelt ei saa puus esineda selle reegli järgi kaks korda&lt;br /&gt;
* &#039;&#039;&#039; . -&amp;gt; com -&amp;gt; google &#039;&#039;&#039; (google.com)&lt;br /&gt;
* &#039;&#039;&#039; . -&amp;gt; com -&amp;gt; google &#039;&#039;&#039; (google.com)&lt;br /&gt;
&lt;br /&gt;
Domeeninimede osas on hetkel kehtimas veel üks nõue: kasutada tohib sümboleid a-z, numbreid 0-9 ning miinus märki ning nime ei tohi alustada miinusega. Miks hetkel? Me kõik oleme tähele pannud, et tavapäraselt ei kasutata näiteks Eesti veebiserveri aadressides täpitähti - &#039;&#039;&#039;Järvamaa&#039;&#039;&#039; veebilehest saab Internetis &#039;&#039;&#039;jarvamaa.ee&#039;&#039;&#039;. Kui eesti tähestikus on kõigest mõned ameerika omast erinevad tähed siis tasub mõelda vene, hiina, jaapani keele peale. &lt;br /&gt;
&lt;br /&gt;
Internet on muutunud rahvusvaheliseks ja erinevad rahvad nõuavad võimalust kasutada Interneti nimedes oma tähestikku. Selle tarvis on laiendus DNSi standardile, kutsutakse seda &#039;&#039;&#039;IDN&#039;ks (International Domain Names)&#039;&#039;&#039; ja on selge, et see tühistab senised nimede sümbolireeglid ent muudab seni suhteliselt lihtsa süsteemi oluliselt keerukamaks ja haavatavamaks. Sügavuti seda teemat siin ei käsitle, huvilised võiksid pilgu peale heita ühele IDNi alusdokumendile - [http://www.ietf.org/rfc/rfc3490.txt RFC 3490].&lt;br /&gt;
&lt;br /&gt;
Domeeninime mõiste sellega paraku ei ammendu, nutikad inimesed on domeeninimedele teinud kasulikke täiendavaid jaotusi.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Domeen, domeeninimi, tsoon ==&lt;br /&gt;
&lt;br /&gt;
Lihtsaim on neil vahet teha lihtsa reegli järgi - kui nimi enam ei &amp;quot;hargne&amp;quot;, siis on tegemist domeeninimega. Tuginedes eeltoodud näitele:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;&lt;br /&gt;
          .&lt;br /&gt;
         /&lt;br /&gt;
        ee  &lt;br /&gt;
       /&lt;br /&gt;
     neti  &lt;br /&gt;
     / \ &lt;br /&gt;
   www  ns&lt;br /&gt;
         \ &lt;br /&gt;
         h01&lt;br /&gt;
&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
on www.neti.ee &#039;&#039;&#039;domeeninimi&#039;&#039;&#039; aga ns.neti.ee &#039;&#039;&#039;domeen&#039;&#039;&#039;, sest ta &amp;quot;hargneb&amp;quot; edasi. Toome juurde veel &#039;&#039;&#039;alamdomeeni&#039;&#039;&#039; mõiste: antud näites on domeen &#039;&#039;&#039;neti.ee&#039;&#039;&#039; TLD &#039;&#039;&#039;ee&#039;&#039;&#039; alamdomeen ja domeen &#039;&#039;&#039;ns&#039;&#039;&#039; omakorda &#039;&#039;&#039;neti.ee&#039;&#039;&#039; alamdomeen.&lt;br /&gt;
&lt;br /&gt;
Kui domeenininimedega selgus majas, on õige aeg tutvust teha &#039;&#039;&#039;tsooniga&#039;&#039;&#039;. Enne kui tekib kellelgi assotsatsioone: ei - tsoon ei ole koht kuhu paha domeenid saadetakse karistust kandma. Tsoon on definitsiooni järgi Interneti nimepuu delegeerimise punkt. Lahtiseletatult - tsoon saab katta katkematu tüki domeenipuul s.t. teada kõiki nimesid oma tasemel. Seega teel domeenipuuud mööda &#039;&#039;&#039; . -&amp;gt; ee &#039;&#039;&#039; tähendab see seda, et kusagil on tsoon mis omab teavet oma tasemel kogu &#039;&#039;&#039;ee&#039;&#039;&#039; domeeni kohta. Tsoonis on kõik &#039;&#039;&#039;domeeninimed&#039;&#039;&#039; ja &#039;&#039;&#039;delegeerimised&#039;&#039;&#039; teistele domeenidele.&lt;br /&gt;
&lt;br /&gt;
Jätkates eeltoodud &#039;&#039;&#039;neti.ee&#039;&#039;&#039; näitel:&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;ee&#039;&#039; &#039;&#039;&#039;tsoonis&#039;&#039;&#039; on kirjeldatud kõik domeeninimed ja delegeerimised, muuhulgas &#039;&#039;neti&#039;&#039;i &lt;br /&gt;
* &#039;&#039;neti.ee&#039;&#039; domeeni &#039;&#039;&#039;tsoonis&#039;&#039;&#039; on kindlasti kirjeldatud &#039;&#039;&#039;domeeninimi&#039;&#039;&#039; &#039;&#039; www.neti.ee &#039;&#039; aga ei sisalda midagi &#039;&#039;&#039;domeeninime&#039;&#039;&#039; &#039;&#039;h01.ns.neti.ee&#039;&#039; kohta sest ...&lt;br /&gt;
* ... &#039;&#039;ns.neti.ee&#039;&#039; on antud juhul &#039;&#039;&#039;delegeeritud tsoon&#039;&#039;&#039; ja domeeni &#039;&#039;ns.neti.ee&#039;&#039; &#039;&#039;&#039;domeeninimesid&#039;&#039;&#039; teab server millele selle tsooni serveerimine on delegeeritud.&lt;br /&gt;
&lt;br /&gt;
Kuigi esmapilgul võib pilt pisut segane olla, loksub kõik tavaliselt siis paika kui vaadata kuidas me saaksime kehtestada reegleid, mille alusel luua tarkvara. &amp;quot;Tsooniteooriast&amp;quot; lähtuda - tsoon sisaldab terviklikku pilti oma taseme domeeninimedest ja domeenide delegatsioonidest - tundub olevat mõistlik tarkvara loomisel. Miks? Kui me lähtuksime tarkvara luues domeenist, siis tekiks palju segadust mis on seotud alamdomeenide ja domeenide delegatsioonidega, eeskätt muutuks väga keeruliseks sellekohase info nimeserverite vahel sünkrooniseermise probleemi lahendamine. Ilmselt ei ole eriti üllatav see, et populaarne nimeserveri tarkvara BIND tegeleb tegelikult tsoonide, mitte domeenidega.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Pädevad nimeserverid ja puhverdavad nimeserverid ==&lt;br /&gt;
&lt;br /&gt;
Igal &#039;&#039;&#039;tsoonil&#039;&#039;&#039; on on vähemalt üks &#039;&#039;&#039;pädev nimeserver&#039;&#039;&#039;. Pädev on nimeserver siis, kui ta oskab öelda tsooni kohta kõiki:&lt;br /&gt;
* domeeninimesid&lt;br /&gt;
* (alam)domeenide delegeerimisi&lt;br /&gt;
&lt;br /&gt;
Pädevaid nimeservereid saab olla kolme liiki:&lt;br /&gt;
* &#039;&#039;&#039;primaarsed&#039;&#039;&#039; pädevad nimeserverid&lt;br /&gt;
* &#039;&#039;&#039;sekundaarsed&#039;&#039;&#039; nimeserverid&lt;br /&gt;
* &#039;&#039;&#039;varjatud&#039;&#039;&#039; nimeserverid&lt;br /&gt;
&lt;br /&gt;
=== Primaarne pädev nimeserver ===&lt;br /&gt;
&lt;br /&gt;
Kõige lihtsam on mõista primaarset pädevat nimeserverit kui serverit, milles on tsoonifaili &amp;quot;originaal&amp;quot;. Tsoon on tavaliselt faili kujul ja seda võidakse redigeerida käsitsi või siis abivahendite abil, dünaamilise tsooni puhul ei osale inimene tsooni kujunemise protsessis. Kordame üle, et tsoonis on kirjeldatud kõik domeeni domeeninimed ja delegeerimised.&lt;br /&gt;
&lt;br /&gt;
=== Sekundaarne nimeserver ===&lt;br /&gt;
&lt;br /&gt;
Sekundaarne nimeserver hoiab primaarse nimeserveri tsooni koopiat ja millele on viidatud tsooni NS kirjes. Ta teeb seda täpselt nii kaua, kui suur on tsooni kohta kirjeldatud Expire (aegu) parameeter, olgu selleks näiteks väärtus 432000. Siit 432000 -&amp;gt; 432000 / 60(sek) / 60(min) / 24(tundi) = 5(päeva) mis reaalses elus tähendab seda, et kui primaarne nimeserver kaob eetrist siis on administraatoril aega taastada primaarne server täpselt 5 päeva, enne kui sekundaarses nimeserveris tsoon aegub ja ta enam ei vasta päringutele selle tsooni kohta adekvatselt.&lt;br /&gt;
&lt;br /&gt;
=== Varjatud nimeserver ===&lt;br /&gt;
&lt;br /&gt;
Varjatud nimeserver on selline nimeserver, mis hoiab primaarse nimeserveri tsooni koopiat, aga millele ei ole viidatud tsooni NS kirjes. Ka varjatud nimeserver hoiab sarnaselt sekundaarse nimeserveriga koopiat Expire parameetri poolt fikseeritud arv sekundeid.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== DNS: domeeninimest IPks ja IPst domeeninimeks tagasi ==&lt;br /&gt;
&lt;br /&gt;
Seni oleme vaatanud seda, kuidas toimub nime lahendamine IP aadressiks. Ometigi on olemas ka vastupidine protsess kus IP lahendadakse nimeks, nimetatakse seda pöördteisenduseks. Kuigi mõlemad hõlmavad endas nimeserveri teenust ja sisuliselt on tegemist lihtsalt erinevusega tsooni kirjeldamise süntaksis, on erinevus domeeninime teadvas TLDs. Erinevus süntaksis seisneb sellest, et kasutatakse spetsiaalset in-addr.arpa. domeeni IP aadresside nime kirjeldamisel. 195.50.209.245 on seega kujul 245.209.50.195.in-addr.arpa. Teeme selle kohta ka pisikese pildi, kuidas mahutada kolm IP aadressi (195.50.209.245, 212.107.52.17, 62.65.192.24) meile tuttavasse domeenipuusse:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;&lt;br /&gt;
         in-addr.arpa&lt;br /&gt;
         /    |    \  &lt;br /&gt;
       195   212   62&lt;br /&gt;
       /      |      \&lt;br /&gt;
      50     107      65       &lt;br /&gt;
     /        |        \     &lt;br /&gt;
   209       52        192  &lt;br /&gt;
   /          |          \&lt;br /&gt;
 245         17          24  &lt;br /&gt;
&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Puust täisnime tuletamise reeglit järgides saame:&lt;br /&gt;
* 245.209.50.195.in-addr.arpa.&lt;br /&gt;
* 17.52.107.212.in-addr.arpa.&lt;br /&gt;
* 24.192.65.62.in-addr.arpa.&lt;br /&gt;
&lt;br /&gt;
Domeeninimi-&amp;gt;IP teisenduste puhul tegelevad TLD tsooni haldamisega organisatsioonid/ettevõtted kes osutavad nimeserveri teenust. Domeeninime lahendamine IPks toimub seega näiteks www.google.com puhul selliselt: &lt;br /&gt;
:leia juurnimeserver &lt;br /&gt;
::päri juurelt .com TLD nimeserverit&lt;br /&gt;
:::päri .com TLDlt google domeeni nimeserverit&lt;br /&gt;
&lt;br /&gt;
IP-&amp;gt;domeenimini teisendusel jõutakse TLDni IP omaniku andmete järgi ja IP teisenduse domeeninimeks teeb interneti teeenusepakkuja (ISP) nimeserver. IP 195.50.209.245 puhul näiteks toimub see selliselt: &lt;br /&gt;
:leia juurnimeserver &lt;br /&gt;
::päri juurelt 195.in-addr.arpa TLDd, selleks on regionaalse RIRi (regionaalne interneti registraator) nimeserver&lt;br /&gt;
:::päri RIRilt võrgubloki omaniku nimeserverit, selleks on ISP nimeserver&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Siin on kaks olulist infokillukest, mida süsteemiadministraator peaks meeles pidama:&lt;br /&gt;
* &#039;&#039;&#039;domeeninimega või domeeniga&#039;&#039;&#039; seotud soovid ja mured tuleb esitada &#039;&#039;&#039;TLD haldajale&#039;&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;pöördteisendusega&#039;&#039;&#039; seotud soovide ja muredega tuleb pöörduda &#039;&#039;&#039;ISPi&#039;&#039;&#039; poole&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Puhverdav nimeserver ==&lt;br /&gt;
&lt;br /&gt;
Puhverdav nimeserver, ka rekursiivse nimeserver, &#039;&#039;&#039;ei ole pädev&#039;&#039;&#039; ühegi domeeni suhtes. Kindlasti on puhverdavas serveris kirjeldatud tsoon &#039;&#039;&#039; &amp;quot;.&amp;quot; (punkt) &#039;&#039;&#039; s.t. nimeserverid kes teavad vastuseid punktist järgmise taseme (.com, .net, .ee jne) nimeserverite kohta. Puhverdav nimeserver &amp;quot;teab&amp;quot; paljude domeenide domeeninimesid - neid, mida kliendid on temalt küsinud ja millele ta on leidnud vastuse - aga ei oma terviklikku pilti neist domeenidest. &lt;br /&gt;
&lt;br /&gt;
Puhvris hoitakse domeeninimesid TTLiga määratud aeg. Aeg-ajalt võib osutuda vajalikuks puhvri tühjendamine enne TTLi aegumise kättejõudmist - põhjusel või teisel võib juhtude nii, et pädevas nimeserveris on muutunud andmed aga puhverdavad nimeserverid kasutavad vanu andmeid. Tänasel päeval on süsteemiadministraatoril vajalik ka täiendavalt kaitsta puhverdavat nimeserverit. Miks ja kuidas, sellest tuleb juttu allpool.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= BINDi seadistamine =&lt;br /&gt;
&lt;br /&gt;
Kõige paremini saab kõik selgeks tavaliselt läbi praktilise tegevuse. Seepärast selgitame siis BINDi kasutamist reaalelulise näite varal, seadistades BINDi serveerima domeeni &#039;&#039;domeen.ee&#039;&#039; kõikvõimalikel viisidel ja kõikvõimalikes seadistustes. See kirjutis põhineb Debian 5.0s pakendatud bindil versiooninumbriga 9.5.1. &lt;br /&gt;
&lt;br /&gt;
Enne praktilise osa juurde asumist on meil vaja selgeks teha mõned terminid, ilma milleta kohe kindlasti läbi ei saa.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== DNSi terminite kiirkursus ==&lt;br /&gt;
&lt;br /&gt;
Järgnevad terminid ja mõisted on kasutuses nimeserveri tsoonifailides, peamine allikas eestikeelsete terminite osas on Imre Oolbergi sellekohane [http://kuutorvaja.eenet.ee/wiki/DNS töö].&lt;br /&gt;
&lt;br /&gt;
;Canonical name&lt;br /&gt;
:Kanooniline nimi. Hosti tegelik nimi. Seda kasutatakse CNAME kirjetes, PTR- kirjetes, NS kirjetes ja MX kirjetes. Kanooniline nimi on mõnes mõttes pettekujutelm, sest paljudel serveritel on rohkem kui üks võrdväärset nime. Praktiliselt on kanooniline nimi iga domeeninimi millel on A-kirje.&lt;br /&gt;
;RR&lt;br /&gt;
:Resource Record. Ressursikirje on domeeninimega kaasaskäiv infokogum mis kirjeldatakse tsoonifailis. Alljärgnevad terminid on ressursikirjed.&lt;br /&gt;
;SOA&lt;br /&gt;
:Start of Authority Record. SOA kirje on esimene kirje tsoonifailis. SOA kirje esimene väli määrab tsooni pädeva nimeserveri. &lt;br /&gt;
;NS&lt;br /&gt;
:Name Server Record. NS-kirje määrab, milline nimeserver teenindab antud tsooni, NS kirjeid võib olla mitu. Iga NS kirje on kas delegeerimiskirje või pädevuskirje (authority record). Kui NS kirje asub samanimelises tsoonis, siis ta on pädevuskirje. Kui NS kirje nimi on alamdomeeni nimi, siis ta on delegeerimiskirje.&lt;br /&gt;
;A&lt;br /&gt;
:Address Record ehk aadresskirje seob domeeninime IPv4 ehk neljabaidise IP-aadressiga. Kui DNS välja töötati, siis soovitati, et kaks A-kirjet ei viitaks ühele ja samale IP-aadressile. Tänapäeval ei peeta nimetatud piirangut oluliseks - mitu erinevat domeeninime võivad viidata samale IP-aadressile (laialt kasutatav virtuaalsete teenuste puhul) ja üks domeeninimi võib viidata mitmele erinevale IP-aadressile (koormuse jagamine). &lt;br /&gt;
;AAAA&lt;br /&gt;
:see aadresskirje seob domeeninime IPv6 ehk siis 128bitise IP-aadressiga.&lt;br /&gt;
;CNAME&lt;br /&gt;
:Canonical Name Record. CNAME-kirje tekitab aadresskirje nimele aliase (hüüdnime).&lt;br /&gt;
;PTR &lt;br /&gt;
:Pointer Record (pointer - osuti). Nimetatakse ka &amp;quot;Reverse Record&amp;quot;. PTR-kirje viitab hosti kanoonilisele nimele. See nimi peab olema IP-aadressiks tagasi lahenduv, ehk siis peab toimima teisendusahel A -&amp;gt; PTR -&amp;gt; A.&lt;br /&gt;
;MX&lt;br /&gt;
:Mail Exchange Record. MX-kirjega määratakse e-posti serverid, mida kasutatakse e-mailide hoidmiseks seni kuni adressaadi server saab posti vastu võtta või lihtsamates lahendustes võtavadki domeeni e-posti vastu ja toimetavad otse aadresaadile. MX-kirjetel määratakse ära ka postiserverite prioriteet, kõige väiksema prioriteediväärtusega MX kirje määrab domeeni posti eest vastutava postiserveri.&lt;br /&gt;
;TXT&lt;br /&gt;
:DNS protokolli mittetähenduslik kirje. Võib sisaldada vabas vormingus max 255 baiti pikka teksti. Leidnud kasutust näiteks spämmivastases võitluses SPF info kandjana.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== BINDi haldamise kiirkursus ==&lt;br /&gt;
&lt;br /&gt;
;Seadistusfailid&lt;br /&gt;
:tavaliselt &#039;&#039;/etc/bind&#039;&#039; kataloogis, distributsiooniti võib see erineda. Peamine seadistuste fail on named.conf. &lt;br /&gt;
&lt;br /&gt;
;Käivitusfailid&lt;br /&gt;
:&#039;&#039;&#039;/etc/init.d/bind9&#039;&#039;&#039; on nimeserveerimise deemoni ohjamiseks, nagu ikka, parameeter &#039;&#039;start&#039;&#039; käivitab ja &#039;&#039;stop&#039;&#039; peatab. Kasutamiseks pead olema juurkasutaja. &#039;&#039;&#039;rndc&#039;&#039;&#039; on nimeserveerimise deemoniga suhtlemiseks vajalik käsk. Selle kasutamiseks ei pea olema juurkasutaja aga edukat toimimist peab tavakasutaja puhul natuke serveris korraldama. &#039;&#039;&#039;dig&#039;&#039;&#039; on nimeserveri klient kelle kaasabil saab nimeserveritele esitada küsimusi. DNSSEC osast leiad veel paar käsku, tavalise halduse osas neid ei ole vaja.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Tagasi &amp;quot;juurte&amp;quot; juurde ==&lt;br /&gt;
&lt;br /&gt;
Esitame lihtsa küsimuse: kuidas me saame teada, mis nimeserverid teavad kõike Eesti TLD .ee kohta?&lt;br /&gt;
&lt;br /&gt;
Vastuse leidmiseks kasutame nimepärimise vahendit &#039;&#039;dig&#039;&#039;, mis on tarkavrapaketi BIND osana kliendi tööriist:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;&lt;br /&gt;
 zyx@tux$ dig ee NS&lt;br /&gt;
 &lt;br /&gt;
 ; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.5.1-P2 &amp;lt;&amp;lt;&amp;gt;&amp;gt; ee NS&lt;br /&gt;
 ;; global options:  printcmd&lt;br /&gt;
 ;; Got answer:&lt;br /&gt;
 ;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 55277&lt;br /&gt;
 ;; flags: qr rd ra; QUERY: 1, ANSWER: 7, AUTHORITY: 0, ADDITIONAL: 0&lt;br /&gt;
 &lt;br /&gt;
 ;; QUESTION SECTION:&lt;br /&gt;
 ;ee.				IN	NS&lt;br /&gt;
 &lt;br /&gt;
 ;; ANSWER SECTION:&lt;br /&gt;
 ee.			86400	IN	NS	sunic.sunet.se.&lt;br /&gt;
 ee.			86400	IN	NS	ns.kbfi.ee.&lt;br /&gt;
 ee.			86400	IN	NS	ns.eenet.ee.&lt;br /&gt;
 ee.			86400	IN	NS	ns.ut.ee.&lt;br /&gt;
 ee.			86400	IN	NS	ns2.elion.ee.&lt;br /&gt;
 ee.			86400	IN	NS	ns.uninet.ee.&lt;br /&gt;
 ee.			86400	IN	NS	ns.uu.net.&lt;br /&gt;
&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Et leida tuge hierarhilise ülesehituse teooriale, üritaks järgmisena vastata küsimusele: kuidas on võimalik selle vastuseni jõuda? (alljärgnevas on eemaldatud kõik ballastinfo mis eelnevas päringu vastuses oli alles)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;&lt;br /&gt;
 zyx@tux$ dig ee NS +trace&lt;br /&gt;
 .			57764	IN	NS	g.root-servers.net.&lt;br /&gt;
 .			57764	IN	NS	l.root-servers.net.&lt;br /&gt;
 .			57764	IN	NS	i.root-servers.net.&lt;br /&gt;
 .			57764	IN	NS	b.root-servers.net.&lt;br /&gt;
 .			57764	IN	NS	f.root-servers.net.&lt;br /&gt;
 .			57764	IN	NS	a.root-servers.net.&lt;br /&gt;
 .			57764	IN	NS	c.root-servers.net.&lt;br /&gt;
 .			57764	IN	NS	k.root-servers.net.&lt;br /&gt;
 .			57764	IN	NS	d.root-servers.net.&lt;br /&gt;
 .			57764	IN	NS	m.root-servers.net.&lt;br /&gt;
 .			57764	IN	NS	e.root-servers.net.&lt;br /&gt;
 .			57764	IN	NS	h.root-servers.net.&lt;br /&gt;
 .			57764	IN	NS	j.root-servers.net.&lt;br /&gt;
 ;; Received 336 bytes from 127.0.0.1#53(127.0.0.1) in 0 ms&lt;br /&gt;
 &lt;br /&gt;
 ee.			172800	IN	NS	NS.UNINET.ee.&lt;br /&gt;
 ee.			172800	IN	NS	SUNIC.SUNET.SE.&lt;br /&gt;
 ee.			172800	IN	NS	NS.KBFI.ee.&lt;br /&gt;
 ee.			172800	IN	NS	NS.EENET.ee.&lt;br /&gt;
 ee.			172800	IN	NS	NS.UT.ee.&lt;br /&gt;
 ee.			172800	IN	NS	NS.UU.NET.&lt;br /&gt;
 ;; Received 284 bytes from 2001:dc3::35#53(m.root-servers.net) in 43 ms&lt;br /&gt;
 &lt;br /&gt;
 ee.			86400	IN	NS	sunic.sunet.se.&lt;br /&gt;
 ee.			86400	IN	NS	ns2.elion.ee.&lt;br /&gt;
 ee.			86400	IN	NS	ns.eenet.ee.&lt;br /&gt;
 ee.			86400	IN	NS	ns.uninet.ee.&lt;br /&gt;
 ee.			86400	IN	NS	ns.ut.ee.&lt;br /&gt;
 ee.			86400	IN	NS	ns.uu.net.&lt;br /&gt;
 ee.			86400	IN	NS	ns.kbfi.ee.&lt;br /&gt;
 ;; Received 184 bytes from 193.40.133.222#53(NS.KBFI.ee) in 1 ms&lt;br /&gt;
&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Siit on näha päringu vastuse leidmise tee, mis näitlikult selgitab puukujulist ülesehitust. Tegevused, mida nimeserveri klient tegi, on siis alljärgnevad:&lt;br /&gt;
* leiame &#039;&#039;&#039;juurnimeserverid&#039;&#039;&#039;, sellele teadis vastust arvutis paiknev lokaalne nimeserver (vt rida millel 127.0.0.1)&lt;br /&gt;
* leiame &#039;&#039;&#039;ee TLD nimeserverid&#039;&#039;&#039;, sellele teadis vastust m.root-servers.net (tollelt serverilt saime vastuse IPv6 protokolli kasutades, serveri aadress 2001:dc3::35)&lt;br /&gt;
* pärime punktis kaks leitud nimeserveri käest &#039;&#039;&#039;domeeni ee suhtes pädevaid nimeservereid&#039;&#039;&#039;, sellele annab meile vastuse NS.KBFI.ee (193.40.133.222)&lt;br /&gt;
* vastuseks on seitse serveri domeeninime&lt;br /&gt;
&lt;br /&gt;
Siitkaudu jõuame kahe mõisteni: &#039;&#039;&#039;pädev vastus ja mittepädev vastus&#039;&#039;&#039;. Elu teeb lihtsamaks see, et termineis endis on avatud kogu termini sisu.&lt;br /&gt;
&lt;br /&gt;
:&#039;&#039;&#039;Pädev vastus&#039;&#039;&#039; on seega nimepäringu vastus, mille saame domeeni suhtes pädevalt nimeserverilt. Pädevaks nimeserveriks saab olla domeeni primaarne või sekundaarne nimeserver - see server mis domeeni tsoonis kirjeldatud NS kirjega.&lt;br /&gt;
&lt;br /&gt;
:&#039;&#039;&#039;Mittepädevaid vastuseid&#039;&#039;&#039; annavad puhverdavad nimeserverid - nemad uurivad meie küsimuse vastuse pädevalt nimeserverilt, edastavad selle meile ja salvestavad selle ka vahemällu järgmiste päringute kiire vastamise jaoks.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Primaarse nimeserveri seadistamine ==&lt;br /&gt;
&lt;br /&gt;
BINDi puhul toimub primaarses pädevas nimeserveris tsooni seadistamine tavaliselt sellisel moel:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;1. primaarses seadistusfailis &#039;&#039;named.conf&#039;&#039; viidatakse tsoonifailile:&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;tt&amp;gt;&lt;br /&gt;
 zone &amp;quot;test-domeen.ee&amp;quot; {&lt;br /&gt;
        type master;&lt;br /&gt;
        also-notify { 192.168.2.1; };&lt;br /&gt;
        allow-transfer { koik_sekundaarsed; };&lt;br /&gt;
        file &amp;quot;/etc/bind/pri/test-domeen.ee&amp;quot;;&lt;br /&gt;
 };&lt;br /&gt;
&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;test-domeen.ee&#039;&#039; on domeen, mille suhtes ollakse &#039;&#039;&#039;pädev&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;type master&#039;&#039; viitab sellele, et tegemist on &#039;&#039;&#039;primaarse&#039;&#039;&#039; nimeserveriga&lt;br /&gt;
*&#039;&#039;also-notify&#039;&#039;s on kirjeldatud IP(d) millele saata teateid tsooni muutumisest &#039;&#039;&#039;lisaks tsoonis kirjeldatud nimeserveritele&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;allow-transfer&#039;&#039; sisaldab kes siis lubanimekirja (sellest allpool) või IP aadresse millel lubatakse üle kanda terve tsoon&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;2. fail &#039;&#039; /etc/bind/pri/test-domeen.ee &#039;&#039; sisaldab tsooni andmeid:&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;tt&amp;gt;&lt;br /&gt;
 $TTL	432000&lt;br /&gt;
 @	IN	SOA	ns1.test-domeen.ee. hostmaster.test-domeen.ee. (&lt;br /&gt;
         		      2		; Serial&lt;br /&gt;
 			 432000		; Refresh&lt;br /&gt;
 			  86400		; Retry&lt;br /&gt;
 			2419200		; Expire&lt;br /&gt;
 			 432000 )	; Negative Cache TTL&lt;br /&gt;
 ;&lt;br /&gt;
 @	IN	NS	ns1&lt;br /&gt;
 @	IN	NS	ns2&lt;br /&gt;
 @	IN	A	192.168.4.5&lt;br /&gt;
 @	IN	AAAA	2a01:158:3:1:21c:c0ff:fe8a:4e79&lt;br /&gt;
 ns1   IN      A       192.168.4.5&lt;br /&gt;
 ns2   IN      A       192.168.4.1&lt;br /&gt;
 @     IN      MX  10  mx&lt;br /&gt;
 mx    IN      A       192.168.4.10&lt;br /&gt;
 www   IN      CNAME   @&lt;br /&gt;
 @     IN      TXT     &amp;quot;v=spf1 ip4:192.168.4.0/24 -all&amp;quot;&lt;br /&gt;
&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;TTL, Refresh, Retry, Expire, Negative Cache TTL&#039;&#039;&#039; on aeg mis on &#039;&#039;&#039;sekundites&#039;&#039;&#039;. &#039;&#039;&#039;TTL&#039;&#039;&#039; on tsooni &amp;quot;eluaeg&amp;quot; elik aeg, kui kaua hoiavad puhverdavad nimeserverid tsooni andmeid. Tsoonifailis oluliste domeeni andmete muutmise eel on kasulik &amp;quot;keerata&amp;quot; TTL võimalikult väikeseks, et muutus leviks kiirelt. Tavaolukorras on kasulik hoida see numbrit võimalikult suurena, et võimalikud äpardused nimeserveritega ei mõjutaks olulisel määral domeeninimede lahendamist (s.t. puhverdavad nimeserverid hoiavad tsooni andmeid puhvris kaua).&lt;br /&gt;
* &#039;&#039;&#039;Serial&#039;&#039;&#039; on unikaalne tsooni andmete versiooni number ja tuleb suurendada iga kord, kui muudetakse tsoonifaili. Kui serial jääb muutmata siis primaarse nimeserveri arvates ei ole tsoonifail muutunud ja sekundaarsetele nimeserveritele ei saadeta teadet tsooni muutumisest, kui see teade ka saadetakse mingil põhjusel, siis ei uuenda sekundaarsed nimeserverid tsooni andmeid &#039;&#039;&#039;sest Serial on sama&#039;&#039;&#039;. Mõnedes kohtades kasutatakse Seriali puhul kuju AAAAKKPPII kus AAAA on aasta, KK kuu, PP päev ja II iteratsioon elik päevase muutumise loendur, näiteks: 2009050905.&lt;br /&gt;
* &#039;&#039;&#039;@&#039;&#039;&#039; tähistab domeeni sellisel kujul, nagu see &#039;&#039;named.conf&#039;&#039;is &#039;&#039;zone&#039;&#039; direktiivi juures kirjas, antud juhul siis &#039;&#039;&#039;@ = domeen.ee&#039;&#039;&#039;&lt;br /&gt;
* NS, CNAME kirje puhul tähistab &#039;&#039;&#039;. (punkt)&#039;&#039;&#039; domeeninime lõppu. Kui seda seal pole, siis võib palju segadust tekkida reeglist, et nime lõppu &#039;&#039;&#039;lisatakse automaatselt&#039;&#039;&#039; domeen mis  &#039;&#039;named.conf&#039;&#039;is kirjas &#039;&#039;zone&#039;&#039; direktiivi juures.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Samaväärsed&#039;&#039;&#039; on seega antud juhul kirjapildid:&lt;br /&gt;
:* @	IN	NS	ns1.test-domeen.ee.&lt;br /&gt;
:* @	IN	NS	ns1&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;SOA&#039;&#039;&#039; kirje on tsoonifailis kohustuslik esimene kirje. Lisaks erinevatele aegumisnumbritele sisaldab pädeva nimeserveri domeeninime (ns1.test-domeen.ee) ja halduri kontakti&lt;br /&gt;
*&#039;&#039;&#039;NS&#039;&#039;&#039; kirjed on antud juhul kleepkirjed (&#039;&#039;glue record&#039;&#039;). Kleepekirje on delegeerimise osana kasutatav A-kirje mis on vajalik siis kui delegeeritava tsooni pädev nimeserver asub delegeeritavas tsoonis endas&lt;br /&gt;
*&#039;&#039;&#039;A&#039;&#039;&#039; kirjed on siis tavalised aadresskirjed mis seovad domeeninime IP aadressiga&lt;br /&gt;
*&#039;&#039;&#039;AAAA&#039;&#039;&#039; kirje seob domeeninime IPv6 aadressiga&lt;br /&gt;
*&#039;&#039;&#039;MX&#039;&#039;&#039; kirje sisaldab domeeni e-posti vastuvõtva serveri prioriteeti (servereid võib olla mitu, väiksem number on kõrgem prioriteet) ja e-postiserveri domeeninime&lt;br /&gt;
*&#039;&#039;&#039;TXT&#039;&#039;&#039; kirje on informatiivse iseloomuga, antud juhul olen seda SPFi jaoks tarvitanud (SPFist juttu pisut allpool)&lt;br /&gt;
&lt;br /&gt;
Kui meil proovidomeen on õnnelikult üles seatud lisame harjutamise mõttes ka &#039;&#039;&#039;pöördteisenduse seadistuse&#039;&#039;&#039;. Testvõrgus oleme kasutusele võtnud 192.168.4.0/24 võrgubloki, sellele loomegi pöördteisenduse:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;1. primaarses seadistusfailis &#039;&#039;named.conf&#039;&#039; viidatakse tsoonifailile:&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;tt&amp;gt;&lt;br /&gt;
 zone &amp;quot;4.168.192.in-addr.arpa&amp;quot; {&lt;br /&gt;
        type master;&lt;br /&gt;
        file &amp;quot;/etc/bind/pri/4.168.192.in-addr.arpa&amp;quot;;&lt;br /&gt;
 };&lt;br /&gt;
&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;2. kirjeldame pöördteisenduse tsooni&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;&lt;br /&gt;
 $TTL 432000&lt;br /&gt;
 @       IN      SOA     ns1.test-domeen.ee. hostmaster.test-domeen.ee.  (&lt;br /&gt;
         		      2		; Serial&lt;br /&gt;
 			 432000		; Refresh&lt;br /&gt;
 			  86400		; Retry&lt;br /&gt;
 			2419200		; Expire&lt;br /&gt;
 			 432000 )	; Negative Cache TTL&lt;br /&gt;
 4.168.192.in-addr.arpa.     IN  NS   ns1.test-domeen.ee.&lt;br /&gt;
 1.4.168.192.in-addr.arpa.   IN  PTR  ns1.test-domeen.ee.&lt;br /&gt;
 5.4.168.192.in-addr.arpa.   IN  PTR  ns2.test-domeen.ee.&lt;br /&gt;
 10.4.168.192.in-addr.arpa.  IN  PTR  mx.test-domeen.ee.&lt;br /&gt;
 &lt;br /&gt;
 $ORIGIN 4.168.192.in-addr.arpa.&lt;br /&gt;
 $GENERATE 32-128 $ PTR host-$.test-domeen.ee.&lt;br /&gt;
&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Algus on pöörteisenduse tsoonil samasugune nagu tavapärasel tsoonifailil&lt;br /&gt;
*&#039;&#039;&#039;PTR&#039;&#039;&#039; kirjed on siis need, mida peamiselt kohtab pöördteisenduse failis. &#039;&#039;1.4.168.192.in-addr.arpa.   IN  PTR  ns1.test-domeen.ee.&#039;&#039; tähendab: &#039;&#039;IP aadressi 192.168.4.1 domeeninimi on ns1.test-domeen.ee&#039;&#039;.&lt;br /&gt;
*$GENERATE direktiiv on bindi spetsiifiline, võimaldab algoritmiliselt kirjeldatavaid aadresse genereerida, antud juhul siis luuakse selle ühe $GENERATE reaga nimed host-32.test-domeen.ee .. host-128.test-domeen.ee IP aadressidele 192.168.4.32 .. 192.168.4.128&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Sekundaarse nimeserveri seadistamine ==&lt;br /&gt;
&lt;br /&gt;
Nagu ka primaarse tsooni seadistamisel, BINDi puhul toimib ka sekundaarse tsooni seadistamine primaarses seadistusfailis &#039;&#039;named.conf&#039;&#039; sellisel moel:&lt;br /&gt;
&amp;lt;tt&amp;gt;&lt;br /&gt;
 zone &amp;quot;test-domeen.ee&amp;quot; {&lt;br /&gt;
        type slave;&lt;br /&gt;
        masters { 192.168.4.1; };&lt;br /&gt;
        file &amp;quot;/etc/bind/sec/test-domeen.ee&amp;quot;;&lt;br /&gt;
 };&lt;br /&gt;
&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*&#039;&#039;&#039;type slave&#039;&#039;&#039; ütleb, et tegemist on sekundaarse nimeserveriga sellele tsoonile&lt;br /&gt;
*&#039;&#039;&#039;masters { .. }&#039;&#039;&#039; sektsioon sisaldab primaarsete pädevate nimeserverite IP aadresse kellelt pärida aru tsooni staatuse ja saatuse kohta&lt;br /&gt;
*&#039;&#039;&#039;file  &amp;quot;/etc/...&#039;&#039;&#039; kirjeldab mis failis andmeid hoidma hakatakse. Seda faili meie ei loo, küll aga peab vaatama, et viidatud kataloog oleks kirjutatav bindi protsessile.&lt;br /&gt;
&lt;br /&gt;
Aktiivseks saame seadistuse teha käsuga &#039;&#039;&#039;rndc reload&#039;&#039;&#039;, enne seda tasub kontrollida kas primaarse nimeserveri seadistusfailis on allow-transfer sektsioonis mainitud sekundaarse nimesereveri IPd.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Puhverdava nimeserveri seadistamine ==&lt;br /&gt;
&lt;br /&gt;
Eelnevast jutust jä meile meelde, et puhverdava nimeserveri ülesandeks on DNS päringute teenindamine, esitades päringu pädevale nimeserverile ja salvestades vastuse vahemälus. Miks on puhverdava serveri kasutamine kasulik?&lt;br /&gt;
* võit võrguliikluse vähenemise arvelt&lt;br /&gt;
* lihtsam klientidel tööjaamu seadistada&lt;br /&gt;
* lihtsam hallata tulemüüre&lt;br /&gt;
* võimalus ennetada halva liikluse tekkimist&lt;br /&gt;
&lt;br /&gt;
Puhverdava nimeserveri seadistamiseks on meil vaja luuav vastav sektsioon nimeserveri peamises seadistusfailis ning nn vihjefaili.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;1. named.conf seadistamine &#039;&#039;&#039;&lt;br /&gt;
&amp;lt;tt&amp;gt;&lt;br /&gt;
 zone &amp;quot;.&amp;quot; {&lt;br /&gt;
     type master;&lt;br /&gt;
     file &amp;quot;/etc/bind/db.root&amp;quot;;&lt;br /&gt;
 };&lt;br /&gt;
&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;2. Värske versioon vihjefailist&#039;&#039;&#039; on alati saadaval [http://www.internic.net/zones/named.root siit] ja sisaldab ta infot, kuidas leida juurnimeservereid, kellelt nimeinfot edasi pärida.&lt;br /&gt;
&lt;br /&gt;
===  Puhverdava nimeserveri turvamine ===&lt;br /&gt;
&lt;br /&gt;
NB! Puhverdav nimeserver peab olema päringuteks kättesaadav &#039;&#039;&#039;ainult sinu teenindatavatale&#039;&#039;&#039; klientidele. Miks, seda loe allpoolt DNS nõrkuste jutupunktist. Seda ei saa kahjuks korraldada ainult ühe direktiiviga &#039;&#039;named.conf&#039;&#039; &#039;is. Nimelt lubab BIND ikkagi punkti küsimist ja vastab puhvris olevate nimedega ka siis, kui &#039;&#039;options&#039;&#039; sektsiooni sees on rekursioon lubatud ainult &amp;quot;omadele&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Lahendada saab selle ülesande vaadete abil, kuna vaadetest pisut juttu ka allpool siis toon ära näidis seadistuse (alates BIND v9.3.x) ilma pikemate kommentaarideta:&lt;br /&gt;
&lt;br /&gt;
 view &amp;quot;seest&amp;quot; {&lt;br /&gt;
  match-clients { 192.168.4.0/24; };&lt;br /&gt;
  allow-query { 192.168.4.0/24; };&lt;br /&gt;
  additional-from-cache yes;&lt;br /&gt;
  recursion yes;&lt;br /&gt;
 };&lt;br /&gt;
 view &amp;quot;maailmast&amp;quot; {&lt;br /&gt;
  match-clients { any; };&lt;br /&gt;
  allow-query { none; };&lt;br /&gt;
  additional-from-cache no;&lt;br /&gt;
  recursion no;&lt;br /&gt;
 };&lt;br /&gt;
&lt;br /&gt;
Mugavuse mõttes võib &#039;&#039;match-clients&#039;&#039; juures kasutada pääsuloendeid, neist saab lugeda täpsemalt ka &amp;quot;DNS vaated&amp;quot; jutupunktis. Näidis seadistuses on lubatud rekursiivsus sisevõrgu klientidele 192.168.4.0/24 võrgust, kõigile teistele aga keelatud. Blokk &#039;&#039;view &amp;quot;nimi&amp;quot; { };&#039;&#039; on piltlikult öeldes seadistus mis käib nonde klientide kohta, kes &#039;&#039;match-clients&#039;&#039; osaga kokku langevad, sinna lähevad direktiivid mis tavaliselt ikka seadistusfailis käivad (tsoonid jms).&lt;br /&gt;
&lt;br /&gt;
===  Puhverdava ja autoriteetse BIND nimeserveri turvamine ===&lt;br /&gt;
&lt;br /&gt;
Tihti on otstarbekas kasutada oma nimeserverite paari mõne tsooni puhul pädeva ehk autoriteetsena ning lubada samal ajal oma sisemistel serveritel lahendada nendes avalikke nimesi. Muidu peaks kasutama vähemalt nelja nimeserverit. &lt;br /&gt;
Kuna liigsetele päringutele vastamist saab kuritarvitada, siis tuleb kasutada view ehk virtuaalseid nimeservereid. Kõige parem on need teha rekursiivne/autoriteetne tüübi järgi. &amp;quot;.&amp;quot;-tsoon peab olema kirjeldatud &amp;quot;seest&amp;quot; osas, muidu on võimalik kasutada teie nimeserverit mahu rünnakus. &lt;br /&gt;
Järgnev testitud ja ühes suuremas nimeserveris kasutuses olev kergelt lühendatud näide on tulnud kaasa OpenBSD 4.2 nimeserveriga. &lt;br /&gt;
&lt;br /&gt;
 view &amp;quot;seest&amp;quot; {&lt;br /&gt;
        match-clients { 192.168.4.0/24; };&lt;br /&gt;
        match-recursive-only yes;&lt;br /&gt;
        // Standard zones&lt;br /&gt;
        //&lt;br /&gt;
        zone &amp;quot;.&amp;quot; {&lt;br /&gt;
                type hint;&lt;br /&gt;
                file &amp;quot;standard/root.hint&amp;quot;;&lt;br /&gt;
        };&lt;br /&gt;
        zone &amp;quot;localhost&amp;quot; {&lt;br /&gt;
                type master;&lt;br /&gt;
                file &amp;quot;standard/localhost&amp;quot;;&lt;br /&gt;
                allow-transfer { localhost; };&lt;br /&gt;
        };&lt;br /&gt;
        zone &amp;quot;127.in-addr.arpa&amp;quot; {&lt;br /&gt;
                type master;&lt;br /&gt;
                file &amp;quot;standard/loopback&amp;quot;;&lt;br /&gt;
                allow-transfer { localhost; };&lt;br /&gt;
        };&lt;br /&gt;
        zone &amp;quot;0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.ip6.arpa&amp;quot; {&lt;br /&gt;
                type master;&lt;br /&gt;
                file &amp;quot;standard/loopback6.arpa&amp;quot;;&lt;br /&gt;
                allow-transfer { localhost; };&lt;br /&gt;
        };&lt;br /&gt;
        zone &amp;quot;com&amp;quot; {&lt;br /&gt;
                type delegation-only;&lt;br /&gt;
        };&lt;br /&gt;
        zone &amp;quot;net&amp;quot; {&lt;br /&gt;
                type delegation-only;&lt;br /&gt;
        };&lt;br /&gt;
 };&lt;br /&gt;
 view &amp;quot;autoriteetne&amp;quot; {&lt;br /&gt;
        recursion no;&lt;br /&gt;
        additional-from-auth no;&lt;br /&gt;
        additional-from-cache no;&lt;br /&gt;
        //zone &amp;quot;myzone.net&amp;quot; {&lt;br /&gt;
        //      type master;&lt;br /&gt;
        //      file &amp;quot;master/myzone.net&amp;quot;;&lt;br /&gt;
        //};&lt;br /&gt;
 };&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Microsofti DNS serverist ====&lt;br /&gt;
&lt;br /&gt;
Pisipehme nimeserveri turvamine on pisut keerulisem, põhimõtteliselt on siin kaks olukorda:&lt;br /&gt;
*kui Interneti nimeteenus &#039;&#039;&#039;peab&#039;&#039;&#039; olema välistele klientidele kättesaadav (su nimeserver on pädev mõne domeeni suhtes), siis tuleb paigaldada kaks nimeserverit - üks rekusrsiivne ja teine pädev, ning piirata ligipääs rekursiivsele kas siis võrgu topoloogiaga või tulemüüri pääsulistiga&lt;br /&gt;
*kui Interneti nimeteenus &#039;&#039;&#039;ei pea&#039;&#039;&#039; olema välistele klientidele kättesaadav siis on lihtne piirata ligipääs rekursiivsele kas siis võrgu topoloogiaga või tulemüüri pääsulistiga&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Olulistest asjadest ==&lt;br /&gt;
&lt;br /&gt;
=== TTLi olulisusest ===&lt;br /&gt;
&lt;br /&gt;
Meenutame, et TTL näitas sekundites seda aega kaua andmeid hoitakse puhvris peale seda kui neid ükskord on päritud. Kordan üle, et tsoonifailis oluliste domeeni andmete muutmise eel on väga kasulik  &amp;quot;keerata&amp;quot; TTL võimalikult väikeseks (5 minutit), et muutus leviks kiirelt ja teha tuleks siis TTL suuruse jagu sekundeid &#039;&#039;&#039;enne&#039;&#039;&#039; kui muudatust planeeritake teha! &lt;br /&gt;
Tavaolukorras on kasulik hoida see numbrit võimalikult suurena, et võimalikud äpardused nimeserveritega ei mõjutaks olulisel määral domeeninimede lahendamist. &lt;br /&gt;
&lt;br /&gt;
=== Nimeserveri turvamise olulisusest ===&lt;br /&gt;
&lt;br /&gt;
Sissejuhatavas osas sai rõhutatud DNSi olulisust tänasel päeval kogu Interneti toimimise seisukohalt. Kui laskuda globaalselt tasemelt niiöelda indiviidi tasemele, siis ei kaota DNS seda tähtsust. Kuna DNSi kirjeid muutes on võimalik tekitada palju halba (infovargus, teenusetõkestus jne) siis peaks tavalisest hoolikamalt jälgima, mis toimub nimeserveris. Soovituslik on ka seadistuste hoidmine näiteks CVS või SVN versioonihaldustarkvara abil keskses repositooriumis. Sellisel juhul on suurema õnnetuse juhtumisel võimalik seadistustes &amp;quot;ajas tagasi rännata&amp;quot; ja ka kiirelt taastada puhtale installatsioonile endises seadistuses toimivat nimeserverit.&lt;br /&gt;
&lt;br /&gt;
=== Eraldatuse olulisusest ===&lt;br /&gt;
&lt;br /&gt;
Kui tegemist vähegi suurema infosüsteemiga tasub end säästa peavalust ja hoida rekursiivsed nimeserverid füüsiliselt eraldi pädevatest nimeserveritest. Eeskätt on see oluline turvalisuse aspektidest, näiteks kui keegi otsustab rünnata nimeserverit ja see tal õnnestub, kaob lisaks domeeninimedele ka võimalus Interneti kasutamiseks.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== IPv6 ==&lt;br /&gt;
&lt;br /&gt;
Ei saa me enam läbi ilma IPv6-ta, seega peaks süsteemihaldur olema valmis selleks puhuks astub uksest sisse ülemus, kes kuulnud et selline tore asi nagu IPv6 on olemas, ja käsib homseks ära korraldada firma veebilehe kättesaadavuse IPv6 aadressilt. Lisaks võrguosale tuleb siis teha ka muudatus DNSi seadistusesse.&lt;br /&gt;
&lt;br /&gt;
Domeeninimele IPv6 aadressi lisamine oli meie eelpooltoodud näite varal piisavalt lihtne:&lt;br /&gt;
 @	IN	AAAA	2a01:158:3:1:21c:c0ff:fe8a:4e79&lt;br /&gt;
&lt;br /&gt;
Pöördteisenduse registreerimine on ka analoogne IPv4&#039;le, mõnevõrra ebamugav võib olla meeletu koguse numbrite rittaseadmine ilma vigu tegemata sest kui IPv6 aadressi kirjutamisel võib järjestikused &amp;quot;0&amp;quot; (nullid) ära jätta siis DNSi kirje puhul seda rõõmu ei ole, lisaks tuleb in-addr.arpa. asemel kasutada ip6.arpa.-t.&lt;br /&gt;
&lt;br /&gt;
 $ORIGIN 1.0.0.0.3.0.0.0.0.8.5.1.1.0.a.2.ip6.arpa.&lt;br /&gt;
 9.7.e.4.a.8.e.f.f.f.0.c.0.c.1.2   14400 IN PTR ns1.test-domeen.ee.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== DNSiga seotud e-posti teenuse probleemidest ==&lt;br /&gt;
&lt;br /&gt;
Siintoodud info on oluline meelese pidada nii DNSi kui postiserverite haldajatel.&lt;br /&gt;
* IPl peab olema pöördteisendus&lt;br /&gt;
* IP pöördteisendus domeeninimeks ja domeeninime teisendus IPks peavad klappima&lt;br /&gt;
* kui MX kirjega on viidatud mitmele serverile siis need serverid peavad ka vastama. Ei toimu automaagilist fail-overit teisele serverile kui üks MXiga viidatud servereist peaks mingil põhjusel rivist väljas olema. See omakorda tähendab seda, et hakkab juhtuma müstilist kirjade &amp;quot;venimist&amp;quot;.&lt;br /&gt;
* Kui registreerid domeeni, siis loo ka abuse, postmaster ja hostmaster postkastid et sinuga saaksid erinevad organisatsioonid operatiivselt suhelda kui mingi ikaldus peaks juhtuma.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= DNS edasijõudnutele =&lt;br /&gt;
&lt;br /&gt;
== DNS vaated ==&lt;br /&gt;
&lt;br /&gt;
DNS vaadete puhul seadistatakse nimeserver selliselt, et erinevate klientide sama DNS päring saab erineva vastuse. Näiteks on firma veebileht paigutatud privaataadressil sisevõrku ja soovitakse internetilüüsi mitte koormata &amp;quot;ringiga&amp;quot; veebilehel käimisega. Sellisel juhul seadistatakse DNS server vastama sisevõrgust pärijatale sisevõrgu IP aadressi ja välisvõrgust pärijatele välist IP aadressi. Samuti võib kasutada seda täiendava turvameetmena näiteks välismaalt lähtuva rünnaku efektiivsemaks tõrjumiseks - kui meil on pääsuloend milles loetletud kõik kohalikud (s.o. Eesti) võrgublokid siis saame suunata kas kohalikud kasutajad teise serverisse (mis ei ole ründe all) või siis saata hoopis ründajad kuhugi teise serverisse ...&lt;br /&gt;
Kindlasti peab DNS vaadete implementeerimise planeerimisel arvestama täiendava ressursikuluga haldamisel.&lt;br /&gt;
&lt;br /&gt;
Seadistamine koosneb kahest põhietapist&lt;br /&gt;
#ACLide ehk pääsuloendite loomine&lt;br /&gt;
#tsoonide &amp;quot;vaadete&amp;quot; loomine&lt;br /&gt;
&lt;br /&gt;
=== Pääsuloendite loomine ===&lt;br /&gt;
&lt;br /&gt;
Pääsuloendid on sarnase iseloomuga IP aadresside ja võrgublokkide hulgad, millele on antud nimi. Pääsuloendi loome peamises seadistusfailis &#039;&#039;named.conf&#039;&#039; direktiivi &#039;&#039;&#039;acl&#039;&#039;&#039; abil:&lt;br /&gt;
&lt;br /&gt;
 acl sisemised { 192.168.4.0/24; };&lt;br /&gt;
 acl v2limised { 172.16.16.0/24; };&lt;br /&gt;
 acl koik_sekundaarsed { 192.168.4.2; 192.168.2.1; };&lt;br /&gt;
&lt;br /&gt;
Kui läheb nimeserveri ehitamiseks natukenegi suurema süsteemi tarvis, tasub kindlasti seadistusfaili loomisel planeerida pääsuloendite kasutamist.&lt;br /&gt;
&lt;br /&gt;
=== Tsooni vaadete loomine ===&lt;br /&gt;
&lt;br /&gt;
Tsoonide puhul siis määratakse lisaparameetriga ära, kes seda tsooni &amp;quot;näevad&amp;quot;. Kui tahame samu domeeninimesid erinevate IPdega näidata sõltuvalt pärija IP aadressist, siis tuleb luua niimitu tsoonifaili kuimitu erinevat vaadet domeeninimedest soovitakse anda. &lt;br /&gt;
&lt;br /&gt;
Seadistusfailis &#039;&#039;named.conf&#039;&#039; kirjeldame&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;1. sisemise vaate&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
 view &amp;quot;sisene&amp;quot; {&lt;br /&gt;
    match clients { sisemised; };&lt;br /&gt;
 &lt;br /&gt;
  zone &amp;quot;test-domeen.ee&amp;quot; {&lt;br /&gt;
       type master;&lt;br /&gt;
       also-notify { 192.168.2.1; };&lt;br /&gt;
       allow-transfer { koik_sekundaarsed; };&lt;br /&gt;
       file &amp;quot;/etc/bind/pri/int-test-domeen.ee&amp;quot;;&lt;br /&gt;
  };&lt;br /&gt;
 };&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;match clients&#039;&#039;&#039; parameetriga öeldakse, kellele see vaade kehtib. &#039;&#039;sisemised&#039;&#039; on pääsuloendi, mille defineerisime eelmises punktis, nimi.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;2. välimise vaate&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
 view &amp;quot;v2line&amp;quot; {&lt;br /&gt;
    match clients { v2limised; };&lt;br /&gt;
 &lt;br /&gt;
  zone &amp;quot;test-domeen.ee&amp;quot; {&lt;br /&gt;
       type master;&lt;br /&gt;
       file &amp;quot;/etc/bind/pri/ext-test-domeen.ee&amp;quot;;&lt;br /&gt;
  };&lt;br /&gt;
 };&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;ext-test-domeen.ee&#039;&#039; ja &#039;&#039;int-test-domeen.ee&#039;&#039; on tsoonifailid, mis sisaldavad siis sellist IP infot nagu meil pärivale kliendile sõltuvalt sellest, kus võrgus ta asub, on vaja näidata.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Sender Policy Framework (SPF) ==&lt;br /&gt;
&lt;br /&gt;
SPF on pikas spämmi vastu võitlemise meetodite reas üks tehnoloogia, mille kasutamiseks vajalike muudatuste tegemine on DNSi haldurile suhtliselt lihtne. Täpsemalt võib süntaksi kohta lugeda [http://www.openspf.org/SPF_Record_Syntax siit], kokkuvõtlikult võib öelda, et SPFi puhul kontrollitakse, kas saatja aadressis olev domeen võib sellelt IPlt kirju saata, millelt ta seda üritab teha.&lt;br /&gt;
&lt;br /&gt;
Selgitame näite varal kuivõrd lihtne on seda üles seada, meie testidomeeni tsoonifailis:&lt;br /&gt;
&lt;br /&gt;
  @     IN      TXT     &amp;quot;v=spf1 ip4:192.168.4.0/24 -all&amp;quot;&lt;br /&gt;
&lt;br /&gt;
tõlgendus oleks siis selline: minu domeeni kirju võivad saata ainult need, kelle IP on võrgublokist 192.168.4.0/24&lt;br /&gt;
&lt;br /&gt;
Teisi mehhanisme, mida SPF poliitika kirjeldamisel kasutada, võiks lugeda juba eelnevalt viidatud süntaksi käsiraamatust. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Sinkhole elik Kuidas Ennetada Halba Liiklust ==&lt;br /&gt;
&lt;br /&gt;
DNS on heaks instrumendiks turvateadlikule süsteemiadministraatorile, sest õigesti kasutades DNSi omadusi, on võimalik ära hoida turvaintsidente. Turvaintsidenti tekkimiseks pole tänasel päeval teatavasti palju vaja: pruugib vaid veebilehitsejaga sattuda pahalaste poolt spetsiaalselt &amp;quot;ettevalmistatud&amp;quot; veebilehele ja ongi nakkus pahavaraga majas. Viimane võib kaasa tuua arvutikasutaja pääsutunnuste varguse, konfidentsiaalse siseinfo varguse, osalemise DoS ründes jne. &lt;br /&gt;
&lt;br /&gt;
Sinkholega halva liikluse eduka ennetamise eeldusteks on:&lt;br /&gt;
* puhverdava nimeserveri kasutamine DNS nimede lahendamisel&lt;br /&gt;
* me teama pahasid domeeninimesid.&lt;br /&gt;
&lt;br /&gt;
Toimemehhanism on lihtne: enne kui kasutaja jõuab brauseriga pahavaraga nakatavale lehele, peab lehitseja tegema DNS päringu domeeninime lahendamiseks IP aadressiks - sest TCP ühenduse saab teatavasti teha kahe IP vahel. Justnimelt sellel hetkel astume me otsustavalt mängu ja ennetame suurema õnnetuse tekkimise - me seadistame puhverdava nimeserveri pädevateks meile teadaolevalt pahavaraga nakatavate domeenide suhtes ja suuname liikluse nende domeeninimede suunas kas &#039;&#039;/dev/null&#039;&#039;i, või siis spetsiaalselt ettevalmistatud serverisse.&lt;br /&gt;
&lt;br /&gt;
Pahade domeenide nimistu saab tavaliselt teemaga tegelevatelt organisatsioonidelt, malwaredomainlist.com on üks võimalikest valikutest. Kohalik CERT oskab kindlasti aidata nimistu tekitamisel.&lt;br /&gt;
&lt;br /&gt;
Nimeserveri saab seadistada suht lihtsalt, &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;1. loome tsoonifaili &#039;&#039;sink.zone&#039;&#039; mis on ühine kõigil pahadel domeenidel&#039;&#039;&#039;&lt;br /&gt;
 @         IN     SOA paha paha (&lt;br /&gt;
                          1&lt;br /&gt;
                          3600&lt;br /&gt;
                          1800&lt;br /&gt;
                          1W&lt;br /&gt;
                          600 )&lt;br /&gt;
 @	IN	NS	127.0.0.1&lt;br /&gt;
 	IN	A	127.0.0.1&lt;br /&gt;
 *		A	127.0.0.1&lt;br /&gt;
&lt;br /&gt;
tsoonifailist nähtub, et suuname kogu paha liikluse nimepärija kohalikku arvutisse.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;2. registreerime domeeni named.conf-is&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
 zone &amp;quot;paha.domeen&amp;quot; IN { type master; file &amp;quot;pri/sink.zone&amp;quot;; };&lt;br /&gt;
&lt;br /&gt;
... ja teeme &#039;&#039;rndc reload&#039;&#039;. Valmis!&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= DNSi nõrkused =&lt;br /&gt;
&lt;br /&gt;
Aegade jooksul on DNSi haldajaid tabanud nii mõnigi halb üllatus. Katan lühidalt kaks teemat mis siiani aktiivses kasutuses kurikaelade poolt.&lt;br /&gt;
&lt;br /&gt;
== &amp;quot;Punkti&amp;quot; küsimise rünne, DNS võimendus ==&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Punkti&amp;quot; küsimise rünne on teenusetõkestus rünne, kus ebaõigesti seadistatud DNS serverit kasutatakse ära kellegi teise ründamiseks. Peamiseks toimemehhanismiks on siin kahe protokolli kombinatsioonis tekkiv nõrkus: &lt;br /&gt;
*UDP protokolli puhul on võimalik paketi saatja võltsimine ja &lt;br /&gt;
*DNS protokoll ei kehtesta mehhanisme millega saaks tuvastada võltsitud saatja aadressiga päringut&lt;br /&gt;
&lt;br /&gt;
Toimib rünne siis selliselt:&lt;br /&gt;
*paljudele rekursiivsetele nimeserveritele esitatakse korraga &amp;quot;.&amp;quot; pärimine (punkti kohta loe rekursiivse nimeserveri sektsioonidest) võltsitud saatja aadressiga. Saatja aadressiks pannakse rünnatav IP.&lt;br /&gt;
*nimeserverid vastavad võltsitud aadressile, viimane saab korraga palju UDP liiklust mis lähtub erinevatest geograafilistest lokatsioonidest üle kogu maailma, mis ummistab rünnatava sidekanali(d).&lt;br /&gt;
&lt;br /&gt;
Rünne on efektiivne tänu võimendusefektile, mis tuleneb küsimuse ja vastuse bitisuuruste erinevusest. Võimendusefekti lisab DNS protokolli laienduse kasutamine, mis võimaldab pärida/saata mahult suuri vastuseid. Sellisel puhul loob ründe teostaja tavaliselt eelnevalt domeeninimime mahuka TXT kirje ja suure TTLiga mida &amp;quot;küsida&amp;quot; rekursiivsetelt võltsitud UDP paketi aadressiga.&lt;br /&gt;
&lt;br /&gt;
Ründe saab hetkel ära hoida vaid seadistades rekursiivsed nimeserverid teenindama ainult &amp;quot;omi&amp;quot; kliente. Vastutus on kõigil süsteemiadministratoritel, kes haldavad nimeservereid, sest ebakorrektne seadistus võib viia selleni, et osaled enda teadamata rünnakus &amp;quot;pahade&amp;quot; poolel.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Puhvrimürgitamise rünne ==&lt;br /&gt;
&lt;br /&gt;
Puhvri mürgitamise eesmärgiks on suunata ohvrite liiklus ümber nende endi teadmata. Saavutatakse see selliselt, et &amp;quot;sokutatakse&amp;quot; rekursiivse nimeserveri puhvrisse valed andmed nimelahenduse kohta. Näiteks: kui klient soovib külastada panka domeeninimega &#039;&#039;minupank.ee&#039;&#039; mille IP aadress on 1.2.3.4 ja pahalastel õnnestub sooritada puhvri mürgitamise rünne mille tagajärjel  arvab rekursiivne nimeserver, et &#039;&#039;minupank.ee&#039;&#039; IP aadress on hoopis 6.6.6.6 ning sellel aadressil serveeritakse veebilehti mis äravahetamiseni sarnased panga minupank.ee omadega, siis on võimalikuks tagajärjeks rahast ilmajäämine.&lt;br /&gt;
&lt;br /&gt;
Kergeim ellu viia selliste rekursiivsete nimeserveritega mille päringute nummerdamine ja vastuse pordi number on ennustatav. Riski võimalik vähendada tarkvarauuendusega mis implementeerib korralikumalt päringute nummerdamise. 100% kindlust ei anna aga seegi, sest päringu identifitseerimiseks kasutatava elemendi väärtuste arv ei ole tänastes tingimustes väga suur (16bitti). Testida saab oma nimesererveid abivahendite abil mis asuvad [https://www.dns-oarc.net/ sellel lehel]. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Kasutatud materjalid =&lt;br /&gt;
&lt;br /&gt;
* [http://kuutorvaja.eenet.ee/wiki/Interneti_domeeninimede_s%C3%BCsteem Domeeninimede süsteem by Imre Oolberg]&lt;br /&gt;
* [https://www.isc.org/software/bind BINDi kodu Internetisüsteemide konsortsiumi lehel]&lt;br /&gt;
* [http://www.ietf.org/rfc/rfc1034.txt RFC 1034]&lt;br /&gt;
* [http://www.ietf.org/rfc/rfc1035.txt RFC 1035]&lt;br /&gt;
* [https://www.isc.org/files/Bv9.6ARM.pdf BINDi administraatori käsiraamat]&lt;br /&gt;
* [https://www.dns-oarc.net/ DNS Operations, Analysis and Research Centeri veebileht]&lt;/div&gt;</summary>
		<author><name>Juhani</name></author>
	</entry>
	<entry>
		<id>https://kuutorvaja.eenet.ee/w/index.php?title=LVM&amp;diff=11598</id>
		<title>LVM</title>
		<link rel="alternate" type="text/html" href="https://kuutorvaja.eenet.ee/w/index.php?title=LVM&amp;diff=11598"/>
		<updated>2009-05-18T15:36:12Z</updated>

		<summary type="html">&lt;p&gt;Juhani: /* LVM kolimine ühelt füüsiliselt kettalt teisele */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;===LVM===&lt;br /&gt;
&lt;br /&gt;
LVM moodustab kihi failisüsteemi ja füüsilise kõvaketta vahele. Kui kasutusel on ka RAID, siis võiks kujutleda kihte selliselt&lt;br /&gt;
&lt;br /&gt;
* Failisüsteemid&lt;br /&gt;
* LVM&lt;br /&gt;
* RAID&lt;br /&gt;
* Füüsilised plokkseadmed&lt;br /&gt;
&lt;br /&gt;
LVM võimaldab teha failisüsteemidest snapshotte ning kui failisüsteem seda toetab, siis ka olemasoleva failisüsteemi suurust muuta.&lt;br /&gt;
&lt;br /&gt;
===Tuuma seadistamine===&lt;br /&gt;
&lt;br /&gt;
Linuxi 2.6 tuuma puhul on oluline lisaks füüsiliste ketaste draiveritele valida eriti device-mapper, ühe olulise mooduli nimi on dm_mod, fail dm-mod.ko&lt;br /&gt;
&lt;br /&gt;
 Device Drivers -&amp;gt; Multi-device support (RAID and LVM) -&amp;gt; valida kõik&lt;br /&gt;
&lt;br /&gt;
2009 aastal aga on vaevalt tarvis tavakasutajal reeglina omale ise tuuma kompileerima hakata, sobib ja on soovitav kasutada distributsiooni tuuma.&lt;br /&gt;
&lt;br /&gt;
===LVM seadistamine===&lt;br /&gt;
&lt;br /&gt;
LVM lahenduse seadistamiseks sobib kasutada tarkvara lvm2 http://sourceware.org/lvm2/, reeglina on see distributsiooni jaoks pakendatud.&lt;br /&gt;
&lt;br /&gt;
LVMi tuleks käsitleda kolmekihilisena&lt;br /&gt;
&lt;br /&gt;
# Plokkseadmed tuleb LVM juures kasutamiseks spetsiaalselt märgistada.&lt;br /&gt;
# Plokkseadmed on organiseeritud voluum gruppidesse, mis on konteinerid loogilistele voluumidele.&lt;br /&gt;
# Loogilised voluumid on kõige otsekohesemalt kasutatavad, sinna peale moodustatakse tavaliselt failisüsteemid.&lt;br /&gt;
&lt;br /&gt;
Iga kihi tegevusteks kasutatakse oma utiliite, vastavalt nimedega pv*, vg* ja lv*.&lt;br /&gt;
&lt;br /&gt;
Esmalt tuleb olemasolevad blokkseadmed (füüsilised kõvakettad või RAID seadmed) märkida füüsilisteks voluumideks&lt;br /&gt;
&lt;br /&gt;
 aix:~# pvcreate /dev/md0&lt;br /&gt;
&lt;br /&gt;
Tulemust näeb sedasi&lt;br /&gt;
&lt;br /&gt;
 aix:~# pvdisplay&lt;br /&gt;
  --- Physical volume ---&lt;br /&gt;
  PV Name               /dev/md0&lt;br /&gt;
  VG Name               voluum&lt;br /&gt;
  PV Size               465.77 GB / not usable 0   &lt;br /&gt;
  Allocatable           yes &lt;br /&gt;
  PE Size (KByte)       4096&lt;br /&gt;
  Total PE              119237&lt;br /&gt;
  Free PE               106949&lt;br /&gt;
  Allocated PE          12288&lt;br /&gt;
  PV UUID               dC1zcu-3caT-Uirt-sbB9-r7j0-Yf06-FUGVmP&lt;br /&gt;
&lt;br /&gt;
Seejärel tuleb moodustada loogiline grupp&lt;br /&gt;
&lt;br /&gt;
 aix:~# vgcreate voluum /dev/md0&lt;br /&gt;
&lt;br /&gt;
Tulemust näeb selliselt&lt;br /&gt;
&lt;br /&gt;
 aix:~# vgdisplay voluum&lt;br /&gt;
  --- Volume group ---&lt;br /&gt;
  VG Name               voluum&lt;br /&gt;
  System ID             &lt;br /&gt;
  Format                lvm2&lt;br /&gt;
  Metadata Areas        1&lt;br /&gt;
  Metadata Sequence No  16&lt;br /&gt;
  VG Access             read/write&lt;br /&gt;
  VG Status             resizable&lt;br /&gt;
  MAX LV                0&lt;br /&gt;
  Cur LV                3&lt;br /&gt;
  Open LV               0&lt;br /&gt;
  Max PV                0&lt;br /&gt;
  Cur PV                1&lt;br /&gt;
  Act PV                1&lt;br /&gt;
  VG Size               465.77 GB&lt;br /&gt;
  PE Size               4.00 MB&lt;br /&gt;
  Total PE              119237&lt;br /&gt;
  Alloc PE / Size       12288 / 48.00 GB&lt;br /&gt;
  Free  PE / Size       106949 / 417.77 GB&lt;br /&gt;
  VG UUID               j8OONB-HABJ-HH1g-7Ywx-RLVG-1OzZ-IA68j9&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Lõpuks moodustada loogilised voluumid&lt;br /&gt;
&lt;br /&gt;
 aix:~# lvcreate -L 16G -n vm01 voluum     &lt;br /&gt;
  Logical volume &amp;quot;vm01&amp;quot; created&lt;br /&gt;
 aix:~# lvcreate -L 16G -n vm02 voluum&lt;br /&gt;
  Logical volume &amp;quot;vm02&amp;quot; created&lt;br /&gt;
 aix:~# lvcreate -L 16G -n vm03 voluum&lt;br /&gt;
  Logical volume &amp;quot;vm03&amp;quot; created&lt;br /&gt;
&lt;br /&gt;
Tulemust näeb selliselt&lt;br /&gt;
&lt;br /&gt;
 aix:~# lvdisplay /dev/voluum/vm01&lt;br /&gt;
  --- Logical volume ---&lt;br /&gt;
  LV Name                /dev/voluum/vm01&lt;br /&gt;
  VG Name                voluum&lt;br /&gt;
  LV UUID                dXfxk5-0jmz-TfQY-hTwz-XxKw-XtgS-H1IOvz&lt;br /&gt;
  LV Write Access        read/write&lt;br /&gt;
  LV Status              available&lt;br /&gt;
  # open                 0&lt;br /&gt;
  LV Size                16.00 GB&lt;br /&gt;
  Current LE             4096&lt;br /&gt;
  Segments               1&lt;br /&gt;
  Allocation             inherit&lt;br /&gt;
  Read ahead sectors     0&lt;br /&gt;
  Block device           253:0&lt;br /&gt;
&lt;br /&gt;
Voluum saab olla available või NOT available olekus. Kasutada saab available voluume, kusjuures lvcreate järgselt viiakse voluum automaatselt available olekusse. &lt;br /&gt;
&lt;br /&gt;
Voluumi eemaldamiseks tuleb esmalt ta viia NOT available olekusse&lt;br /&gt;
&lt;br /&gt;
 aix:~# lvchange -a n /dev/voluum/vm01&lt;br /&gt;
&lt;br /&gt;
ning seejärel&lt;br /&gt;
&lt;br /&gt;
 aix:~# lvremove /dev/voluum/vm01&lt;br /&gt;
&lt;br /&gt;
Voluumigruppide eemaldamiseks tuleks öelda&lt;br /&gt;
&lt;br /&gt;
 aix:~# vgremove /dev/voluum&lt;br /&gt;
&lt;br /&gt;
Peale arvuti käivitamist tuleb näiteks Debian GNU/Linuxi puhul öelda&lt;br /&gt;
&lt;br /&gt;
 aix:~# /etc/init.d/lvm start&lt;br /&gt;
&lt;br /&gt;
/dev kataloogi seadmete moodustamiseks ning ennem arvuti seiskamist&lt;br /&gt;
&lt;br /&gt;
 aix:~# /etc/init.d/lvm stop&lt;br /&gt;
&lt;br /&gt;
===Snapshot===&lt;br /&gt;
&lt;br /&gt;
Snapshot tekitab koopia tema moodustamise ajahetkele vastavast loogilise seadme olekust, mida saab seejärel kasutada nagu tavalist failisüsteemi. Snapshoti tegemise eelduseks on, et samas voluumi grupis on piisavalt vaba kasutamata ruumi, st mida pole omistatud ühelegi loogilisele voluumile.&lt;br /&gt;
&lt;br /&gt;
 aix:~# lvcreate -L2G -s -n vm01_snapshot /dev/voluum/vm01&lt;br /&gt;
&lt;br /&gt;
Tavaliselt on snapshoti moodustamise põhjuseks soov olemasoleva failisüsteemi seisuga mingi muudatus järgi proovida, näiteks tarkvara uuendamine ilma, et see töötavat süsteemi segaks. Sel juhul tuleb peale snapshoti moodustamist ta külge ühendada&lt;br /&gt;
&lt;br /&gt;
 aix:~# mount /dev/voluum/vm01_snapshot /mnt/vm01_snapshot&lt;br /&gt;
&lt;br /&gt;
Snapshoti vabastamiseks tuleb esmalt ta lahti ühendada ja siis öelda&lt;br /&gt;
&lt;br /&gt;
 aix:~# lvremove /dev/voluum/vm01_snapshot&lt;br /&gt;
&lt;br /&gt;
Snapshoti moodustamine kasutab mõni MB arvuti mälu, mis snapshoti eemaldamisel vabastatakse. Lisaks tuleb arvestada, et kui labelit kasutavast juurifailisüsteemist teha snapshot, siis on sama label kahel failisüsteemil ning operatsioonisüsteemi alglaadimine ei õnnestu sellises olukorras. Lahenduseks võiks olla snapshotile muu labeli omistamine öeldes&lt;br /&gt;
&lt;br /&gt;
  bash# e2label /dev/voluum/juurikas uuslabel&lt;br /&gt;
&lt;br /&gt;
===LVM kolimine ühelt füüsiliselt kettalt teisele===&lt;br /&gt;
&lt;br /&gt;
Kui soovida kolida juurpartitsiooni sisaldav LVM voluum teisele füüsilisele kettale või mdadm abil tehtud mirrorile, siis kõigepealt installeerime mdadm&lt;br /&gt;
  &lt;br /&gt;
  apt-get install mdadm&lt;br /&gt;
&lt;br /&gt;
Siin tuleks valida küsimusele vastuseks &amp;quot;all&amp;quot; devices&lt;br /&gt;
&lt;br /&gt;
Järgnevalt teeme mirrori&lt;br /&gt;
&lt;br /&gt;
  debian:~# mdadm --create /dev/md0 --level=mirror --raid-devices=2 /dev/sdc2 missing&lt;br /&gt;
&lt;br /&gt;
Ning kolime juurfailisüsteemi sisaldava voluumgrupi ümber /dev/md0&lt;br /&gt;
&lt;br /&gt;
  debian:~# lvm&lt;br /&gt;
  lvm&amp;gt; pvcreate /dev/md0&lt;br /&gt;
    Physical volume &amp;quot;/dev/md0&amp;quot; successfully created&lt;br /&gt;
  lvm&amp;gt; vgextend juur /dev/md0&lt;br /&gt;
    Volume group &amp;quot;juur&amp;quot; successfully extended&lt;br /&gt;
  lvm&amp;gt; pvmove /dev/sda2 /dev/md0&lt;br /&gt;
&lt;br /&gt;
Ootame, kuni move käsk lõpetab töö ja edasi:&lt;br /&gt;
&lt;br /&gt;
  lvm&amp;gt; vgreduce juur /dev/sda2&lt;br /&gt;
  lvm&amp;gt; quit&lt;br /&gt;
&lt;br /&gt;
Kui /dev/sda2 on täpselt sama suur, kui /dev/sdc2, siis soovitavalt peale rebooti saame panna sda2 lisaks md0 mirrorisse. &lt;br /&gt;
&lt;br /&gt;
Antud kolimise näide peaks kehtima juhul, kui partitsioon, kuhu kolitakse on piisavalt suur, et mahutada kõik sellel kettal olevad Logical Volumed (lvm -&amp;gt; käsk pvs), samuti peaks see võimaldama kopeerida ka ainult üht ketast mitmest kettast koosnevate LVMide puhul. Mõistlik on sellist operatsiooni teha siiski eelnevalt kontrollides varukoopiate olemasolu ja cd-lt buutides.&lt;br /&gt;
&lt;br /&gt;
===Veel toredaid programme===&lt;br /&gt;
&lt;br /&gt;
Programm lvm töötab interaktiivses režiimis&lt;br /&gt;
&lt;br /&gt;
 aix:~# lvm&lt;br /&gt;
 lvm&amp;gt; pvs&lt;br /&gt;
  PV         VG     Fmt  Attr PSize   PFree  &lt;br /&gt;
  /dev/md0   voluum lvm2 a-   465.77G 167.77G&lt;br /&gt;
&lt;br /&gt;
 lvm&amp;gt; lvs&lt;br /&gt;
  LV       VG     Attr   LSize   Origin Snap%  Move Log Copy% &lt;br /&gt;
  kraam250 voluum -wi-ao 250.00G                              &lt;br /&gt;
  vm01     voluum -wi-ao  16.00G                              &lt;br /&gt;
  vm02     voluum -wi-ao  16.00G                              &lt;br /&gt;
  vm03     voluum -wi-ao  16.00G                              &lt;br /&gt;
&lt;br /&gt;
 lvm&amp;gt; vgs&lt;br /&gt;
  VG     #PV #LV #SN Attr   VSize   VFree  &lt;br /&gt;
  voluum   1   4   0 wz--n- 465.77G 167.77G&lt;br /&gt;
&lt;br /&gt;
 lvm&amp;gt; lvscan&lt;br /&gt;
  ACTIVE            &#039;/dev/voluum/vm01&#039; [16.00 GB] inherit&lt;br /&gt;
  ACTIVE            &#039;/dev/voluum/vm02&#039; [16.00 GB] inherit&lt;br /&gt;
  ACTIVE            &#039;/dev/voluum/vm03&#039; [16.00 GB] inherit&lt;br /&gt;
  ACTIVE            &#039;/dev/voluum/kraam250&#039; [250.00 GB] inherit&lt;br /&gt;
&lt;br /&gt;
 lvm&amp;gt; vgscan&lt;br /&gt;
  Reading all physical volumes.  This may take a while...&lt;br /&gt;
  Found volume group &amp;quot;voluum&amp;quot; using metadata type lvm2&lt;br /&gt;
&lt;br /&gt;
 lvm&amp;gt; pvscan&lt;br /&gt;
  PV /dev/md0   VG voluum   lvm2 [465.77 GB / 167.77 GB free]&lt;br /&gt;
  Total: 1 [465.77 GB] / in use: 1 [465.77 GB] / in no VG: 0 [0   ]&lt;br /&gt;
&lt;br /&gt;
===Voluumi ümbernimetamine===&lt;br /&gt;
&lt;br /&gt;
Voluumi nime muutmiseks tuleb esmalt voluumi kasutamine lõpetada, nt vastav failisüsteem lahti ühendada ning märkida voluum mitte-aktiivseks ning seejärel näidata vana ja uus nimi&lt;br /&gt;
&lt;br /&gt;
  bash# lvchange -a n /dev/voluum/voluuminimi&lt;br /&gt;
  bash# lvrename /dev/voluum/voluuminimi /dev/voluum/voluumi_uus_nimi&lt;br /&gt;
&lt;br /&gt;
Seejärel märkida voluum uuesti aktiivseks ning kasutada tavapäraselt moel&lt;br /&gt;
&lt;br /&gt;
  bash# lvchange -a y /dev/voluum/voluumi_uus_nimi&lt;br /&gt;
&lt;br /&gt;
===Märkused===&lt;br /&gt;
&lt;br /&gt;
* loogilise voluumi moodustamisel saab määrata suurust LVMi jaoks kõige nö loomulikumates mõõtühikutes, extent&#039;ides, nt kogu volume groupi suuruse logical volume tekitamiseks tuleb öelda&lt;br /&gt;
&lt;br /&gt;
  # lvcreate -l 100%VG -n voluuminimi grupinimi&lt;br /&gt;
&lt;br /&gt;
* Tihtipeale ei ole LVM seadistusfailis /etc/lvm/lvm.conf tarvis muudatusi teha, aga seal saab juhtida filter direktiiviga, milliseid seadmeid LVM käsitleb võimaliku ressursina LVM moodustamiseks või nt kuivõrd LVM utiliitidega sooritatud tegevusi logitakse sh kuhu. Kusjuures, kui filter parameetrit muuta tuleb seejärel öelda &#039;vgscan&#039;, et LVM cache failis /etc/lvm/.cache uuendataks.&lt;br /&gt;
* Kõigi LVM volume grupi voluumide aktiivseks (või mitteaktiivseks) muutmiseks sobib öelda vastavalt&lt;br /&gt;
&lt;br /&gt;
  # vgchange -a y volumegrupinimi&lt;br /&gt;
  # vgchange -a n volumegrupinimi&lt;br /&gt;
&lt;br /&gt;
* Kui pvdislay ei näita seadmete nimekirjas oodatavat seadet, maksab küsida otse&lt;br /&gt;
&lt;br /&gt;
  # pvdisplay /dev/md0&lt;br /&gt;
&lt;br /&gt;
* Voluumi grupi eemaldamisel kututatakse kõik grupis olevad voluumid&lt;br /&gt;
&lt;br /&gt;
  # vgremove data&lt;br /&gt;
  Do you really want to remove volume group &amp;quot;data&amp;quot; containing 32 logical volumes? [y/n]: y&lt;br /&gt;
   Logical volume &amp;quot;fs&amp;quot; successfully removed&lt;br /&gt;
   Logical volume &amp;quot;moraal&amp;quot; successfully removed&lt;br /&gt;
   Logical volume &amp;quot;cyrus_data&amp;quot; successfully removed&lt;br /&gt;
   ... &lt;br /&gt;
   Volume group &amp;quot;data&amp;quot; successfully removed&lt;/div&gt;</summary>
		<author><name>Juhani</name></author>
	</entry>
	<entry>
		<id>https://kuutorvaja.eenet.ee/w/index.php?title=LVM&amp;diff=11597</id>
		<title>LVM</title>
		<link rel="alternate" type="text/html" href="https://kuutorvaja.eenet.ee/w/index.php?title=LVM&amp;diff=11597"/>
		<updated>2009-05-18T15:29:27Z</updated>

		<summary type="html">&lt;p&gt;Juhani: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;===LVM===&lt;br /&gt;
&lt;br /&gt;
LVM moodustab kihi failisüsteemi ja füüsilise kõvaketta vahele. Kui kasutusel on ka RAID, siis võiks kujutleda kihte selliselt&lt;br /&gt;
&lt;br /&gt;
* Failisüsteemid&lt;br /&gt;
* LVM&lt;br /&gt;
* RAID&lt;br /&gt;
* Füüsilised plokkseadmed&lt;br /&gt;
&lt;br /&gt;
LVM võimaldab teha failisüsteemidest snapshotte ning kui failisüsteem seda toetab, siis ka olemasoleva failisüsteemi suurust muuta.&lt;br /&gt;
&lt;br /&gt;
===Tuuma seadistamine===&lt;br /&gt;
&lt;br /&gt;
Linuxi 2.6 tuuma puhul on oluline lisaks füüsiliste ketaste draiveritele valida eriti device-mapper, ühe olulise mooduli nimi on dm_mod, fail dm-mod.ko&lt;br /&gt;
&lt;br /&gt;
 Device Drivers -&amp;gt; Multi-device support (RAID and LVM) -&amp;gt; valida kõik&lt;br /&gt;
&lt;br /&gt;
2009 aastal aga on vaevalt tarvis tavakasutajal reeglina omale ise tuuma kompileerima hakata, sobib ja on soovitav kasutada distributsiooni tuuma.&lt;br /&gt;
&lt;br /&gt;
===LVM seadistamine===&lt;br /&gt;
&lt;br /&gt;
LVM lahenduse seadistamiseks sobib kasutada tarkvara lvm2 http://sourceware.org/lvm2/, reeglina on see distributsiooni jaoks pakendatud.&lt;br /&gt;
&lt;br /&gt;
LVMi tuleks käsitleda kolmekihilisena&lt;br /&gt;
&lt;br /&gt;
# Plokkseadmed tuleb LVM juures kasutamiseks spetsiaalselt märgistada.&lt;br /&gt;
# Plokkseadmed on organiseeritud voluum gruppidesse, mis on konteinerid loogilistele voluumidele.&lt;br /&gt;
# Loogilised voluumid on kõige otsekohesemalt kasutatavad, sinna peale moodustatakse tavaliselt failisüsteemid.&lt;br /&gt;
&lt;br /&gt;
Iga kihi tegevusteks kasutatakse oma utiliite, vastavalt nimedega pv*, vg* ja lv*.&lt;br /&gt;
&lt;br /&gt;
Esmalt tuleb olemasolevad blokkseadmed (füüsilised kõvakettad või RAID seadmed) märkida füüsilisteks voluumideks&lt;br /&gt;
&lt;br /&gt;
 aix:~# pvcreate /dev/md0&lt;br /&gt;
&lt;br /&gt;
Tulemust näeb sedasi&lt;br /&gt;
&lt;br /&gt;
 aix:~# pvdisplay&lt;br /&gt;
  --- Physical volume ---&lt;br /&gt;
  PV Name               /dev/md0&lt;br /&gt;
  VG Name               voluum&lt;br /&gt;
  PV Size               465.77 GB / not usable 0   &lt;br /&gt;
  Allocatable           yes &lt;br /&gt;
  PE Size (KByte)       4096&lt;br /&gt;
  Total PE              119237&lt;br /&gt;
  Free PE               106949&lt;br /&gt;
  Allocated PE          12288&lt;br /&gt;
  PV UUID               dC1zcu-3caT-Uirt-sbB9-r7j0-Yf06-FUGVmP&lt;br /&gt;
&lt;br /&gt;
Seejärel tuleb moodustada loogiline grupp&lt;br /&gt;
&lt;br /&gt;
 aix:~# vgcreate voluum /dev/md0&lt;br /&gt;
&lt;br /&gt;
Tulemust näeb selliselt&lt;br /&gt;
&lt;br /&gt;
 aix:~# vgdisplay voluum&lt;br /&gt;
  --- Volume group ---&lt;br /&gt;
  VG Name               voluum&lt;br /&gt;
  System ID             &lt;br /&gt;
  Format                lvm2&lt;br /&gt;
  Metadata Areas        1&lt;br /&gt;
  Metadata Sequence No  16&lt;br /&gt;
  VG Access             read/write&lt;br /&gt;
  VG Status             resizable&lt;br /&gt;
  MAX LV                0&lt;br /&gt;
  Cur LV                3&lt;br /&gt;
  Open LV               0&lt;br /&gt;
  Max PV                0&lt;br /&gt;
  Cur PV                1&lt;br /&gt;
  Act PV                1&lt;br /&gt;
  VG Size               465.77 GB&lt;br /&gt;
  PE Size               4.00 MB&lt;br /&gt;
  Total PE              119237&lt;br /&gt;
  Alloc PE / Size       12288 / 48.00 GB&lt;br /&gt;
  Free  PE / Size       106949 / 417.77 GB&lt;br /&gt;
  VG UUID               j8OONB-HABJ-HH1g-7Ywx-RLVG-1OzZ-IA68j9&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Lõpuks moodustada loogilised voluumid&lt;br /&gt;
&lt;br /&gt;
 aix:~# lvcreate -L 16G -n vm01 voluum     &lt;br /&gt;
  Logical volume &amp;quot;vm01&amp;quot; created&lt;br /&gt;
 aix:~# lvcreate -L 16G -n vm02 voluum&lt;br /&gt;
  Logical volume &amp;quot;vm02&amp;quot; created&lt;br /&gt;
 aix:~# lvcreate -L 16G -n vm03 voluum&lt;br /&gt;
  Logical volume &amp;quot;vm03&amp;quot; created&lt;br /&gt;
&lt;br /&gt;
Tulemust näeb selliselt&lt;br /&gt;
&lt;br /&gt;
 aix:~# lvdisplay /dev/voluum/vm01&lt;br /&gt;
  --- Logical volume ---&lt;br /&gt;
  LV Name                /dev/voluum/vm01&lt;br /&gt;
  VG Name                voluum&lt;br /&gt;
  LV UUID                dXfxk5-0jmz-TfQY-hTwz-XxKw-XtgS-H1IOvz&lt;br /&gt;
  LV Write Access        read/write&lt;br /&gt;
  LV Status              available&lt;br /&gt;
  # open                 0&lt;br /&gt;
  LV Size                16.00 GB&lt;br /&gt;
  Current LE             4096&lt;br /&gt;
  Segments               1&lt;br /&gt;
  Allocation             inherit&lt;br /&gt;
  Read ahead sectors     0&lt;br /&gt;
  Block device           253:0&lt;br /&gt;
&lt;br /&gt;
Voluum saab olla available või NOT available olekus. Kasutada saab available voluume, kusjuures lvcreate järgselt viiakse voluum automaatselt available olekusse. &lt;br /&gt;
&lt;br /&gt;
Voluumi eemaldamiseks tuleb esmalt ta viia NOT available olekusse&lt;br /&gt;
&lt;br /&gt;
 aix:~# lvchange -a n /dev/voluum/vm01&lt;br /&gt;
&lt;br /&gt;
ning seejärel&lt;br /&gt;
&lt;br /&gt;
 aix:~# lvremove /dev/voluum/vm01&lt;br /&gt;
&lt;br /&gt;
Voluumigruppide eemaldamiseks tuleks öelda&lt;br /&gt;
&lt;br /&gt;
 aix:~# vgremove /dev/voluum&lt;br /&gt;
&lt;br /&gt;
Peale arvuti käivitamist tuleb näiteks Debian GNU/Linuxi puhul öelda&lt;br /&gt;
&lt;br /&gt;
 aix:~# /etc/init.d/lvm start&lt;br /&gt;
&lt;br /&gt;
/dev kataloogi seadmete moodustamiseks ning ennem arvuti seiskamist&lt;br /&gt;
&lt;br /&gt;
 aix:~# /etc/init.d/lvm stop&lt;br /&gt;
&lt;br /&gt;
===Snapshot===&lt;br /&gt;
&lt;br /&gt;
Snapshot tekitab koopia tema moodustamise ajahetkele vastavast loogilise seadme olekust, mida saab seejärel kasutada nagu tavalist failisüsteemi. Snapshoti tegemise eelduseks on, et samas voluumi grupis on piisavalt vaba kasutamata ruumi, st mida pole omistatud ühelegi loogilisele voluumile.&lt;br /&gt;
&lt;br /&gt;
 aix:~# lvcreate -L2G -s -n vm01_snapshot /dev/voluum/vm01&lt;br /&gt;
&lt;br /&gt;
Tavaliselt on snapshoti moodustamise põhjuseks soov olemasoleva failisüsteemi seisuga mingi muudatus järgi proovida, näiteks tarkvara uuendamine ilma, et see töötavat süsteemi segaks. Sel juhul tuleb peale snapshoti moodustamist ta külge ühendada&lt;br /&gt;
&lt;br /&gt;
 aix:~# mount /dev/voluum/vm01_snapshot /mnt/vm01_snapshot&lt;br /&gt;
&lt;br /&gt;
Snapshoti vabastamiseks tuleb esmalt ta lahti ühendada ja siis öelda&lt;br /&gt;
&lt;br /&gt;
 aix:~# lvremove /dev/voluum/vm01_snapshot&lt;br /&gt;
&lt;br /&gt;
Snapshoti moodustamine kasutab mõni MB arvuti mälu, mis snapshoti eemaldamisel vabastatakse. Lisaks tuleb arvestada, et kui labelit kasutavast juurifailisüsteemist teha snapshot, siis on sama label kahel failisüsteemil ning operatsioonisüsteemi alglaadimine ei õnnestu sellises olukorras. Lahenduseks võiks olla snapshotile muu labeli omistamine öeldes&lt;br /&gt;
&lt;br /&gt;
  bash# e2label /dev/voluum/juurikas uuslabel&lt;br /&gt;
&lt;br /&gt;
===LVM kolimine ühelt füüsiliselt kettalt teisele===&lt;br /&gt;
&lt;br /&gt;
Kui soovida kolida juurpartitsiooni sisaldav LVM voluum teisele füüsilisele kettale või mdadm abil tehtud mirrorile, siis kõigepealt installeerime mdadm&lt;br /&gt;
  &lt;br /&gt;
  apt-get install mdadm&lt;br /&gt;
&lt;br /&gt;
Siin tuleks valida küsimusele vastuseks &amp;quot;all&amp;quot; devices&lt;br /&gt;
&lt;br /&gt;
Järgnevalt teeme mirrori&lt;br /&gt;
&lt;br /&gt;
  debian:~# mdadm --create /dev/md0 --level=mirror --raid-devices=2 /dev/sdc2 missing&lt;br /&gt;
&lt;br /&gt;
Ning kolime juurfailisüsteemi sisaldava voluumgrupi ümber /dev/md0&lt;br /&gt;
&lt;br /&gt;
  debian:~# lvm&lt;br /&gt;
  lvm&amp;gt; vgextend juur /dev/md0&lt;br /&gt;
    Volume group &amp;quot;juur&amp;quot; successfully extended&lt;br /&gt;
  lvm&amp;gt; pvmove /dev/sda2 /dev/md0&lt;br /&gt;
&lt;br /&gt;
Ootame, kuni move käsk lõpetab töö ja edasi:&lt;br /&gt;
&lt;br /&gt;
  lvm&amp;gt; vgreduce juur /dev/sda2&lt;br /&gt;
  lvm&amp;gt; quit&lt;br /&gt;
&lt;br /&gt;
Kui /dev/sda2 on täpselt sama suur, kui /dev/sdc2, siis soovitavalt peale rebooti saame panna sda2 lisaks md0 mirrorisse. &lt;br /&gt;
&lt;br /&gt;
Antud kolimise näide peaks kehtima juhul, kui partitsioon, kuhu kolitakse on piisavalt suur, et mahutada kõik sellel kettal olevad Logical Volumed (lvm -&amp;gt; käsk pvs), samuti peaks see võimaldama kopeerida ka ainult üht ketast mitmest kettast koosnevate LVMide puhul. Mõistlik on sellist operatsiooni teha siiski eelnevalt kontrollides varukoopiate olemasolu ja cd-lt buutides.&lt;br /&gt;
&lt;br /&gt;
===Veel toredaid programme===&lt;br /&gt;
&lt;br /&gt;
Programm lvm töötab interaktiivses režiimis&lt;br /&gt;
&lt;br /&gt;
 aix:~# lvm&lt;br /&gt;
 lvm&amp;gt; pvs&lt;br /&gt;
  PV         VG     Fmt  Attr PSize   PFree  &lt;br /&gt;
  /dev/md0   voluum lvm2 a-   465.77G 167.77G&lt;br /&gt;
&lt;br /&gt;
 lvm&amp;gt; lvs&lt;br /&gt;
  LV       VG     Attr   LSize   Origin Snap%  Move Log Copy% &lt;br /&gt;
  kraam250 voluum -wi-ao 250.00G                              &lt;br /&gt;
  vm01     voluum -wi-ao  16.00G                              &lt;br /&gt;
  vm02     voluum -wi-ao  16.00G                              &lt;br /&gt;
  vm03     voluum -wi-ao  16.00G                              &lt;br /&gt;
&lt;br /&gt;
 lvm&amp;gt; vgs&lt;br /&gt;
  VG     #PV #LV #SN Attr   VSize   VFree  &lt;br /&gt;
  voluum   1   4   0 wz--n- 465.77G 167.77G&lt;br /&gt;
&lt;br /&gt;
 lvm&amp;gt; lvscan&lt;br /&gt;
  ACTIVE            &#039;/dev/voluum/vm01&#039; [16.00 GB] inherit&lt;br /&gt;
  ACTIVE            &#039;/dev/voluum/vm02&#039; [16.00 GB] inherit&lt;br /&gt;
  ACTIVE            &#039;/dev/voluum/vm03&#039; [16.00 GB] inherit&lt;br /&gt;
  ACTIVE            &#039;/dev/voluum/kraam250&#039; [250.00 GB] inherit&lt;br /&gt;
&lt;br /&gt;
 lvm&amp;gt; vgscan&lt;br /&gt;
  Reading all physical volumes.  This may take a while...&lt;br /&gt;
  Found volume group &amp;quot;voluum&amp;quot; using metadata type lvm2&lt;br /&gt;
&lt;br /&gt;
 lvm&amp;gt; pvscan&lt;br /&gt;
  PV /dev/md0   VG voluum   lvm2 [465.77 GB / 167.77 GB free]&lt;br /&gt;
  Total: 1 [465.77 GB] / in use: 1 [465.77 GB] / in no VG: 0 [0   ]&lt;br /&gt;
&lt;br /&gt;
===Voluumi ümbernimetamine===&lt;br /&gt;
&lt;br /&gt;
Voluumi nime muutmiseks tuleb esmalt voluumi kasutamine lõpetada, nt vastav failisüsteem lahti ühendada ning märkida voluum mitte-aktiivseks ning seejärel näidata vana ja uus nimi&lt;br /&gt;
&lt;br /&gt;
  bash# lvchange -a n /dev/voluum/voluuminimi&lt;br /&gt;
  bash# lvrename /dev/voluum/voluuminimi /dev/voluum/voluumi_uus_nimi&lt;br /&gt;
&lt;br /&gt;
Seejärel märkida voluum uuesti aktiivseks ning kasutada tavapäraselt moel&lt;br /&gt;
&lt;br /&gt;
  bash# lvchange -a y /dev/voluum/voluumi_uus_nimi&lt;br /&gt;
&lt;br /&gt;
===Märkused===&lt;br /&gt;
&lt;br /&gt;
* loogilise voluumi moodustamisel saab määrata suurust LVMi jaoks kõige nö loomulikumates mõõtühikutes, extent&#039;ides, nt kogu volume groupi suuruse logical volume tekitamiseks tuleb öelda&lt;br /&gt;
&lt;br /&gt;
  # lvcreate -l 100%VG -n voluuminimi grupinimi&lt;br /&gt;
&lt;br /&gt;
* Tihtipeale ei ole LVM seadistusfailis /etc/lvm/lvm.conf tarvis muudatusi teha, aga seal saab juhtida filter direktiiviga, milliseid seadmeid LVM käsitleb võimaliku ressursina LVM moodustamiseks või nt kuivõrd LVM utiliitidega sooritatud tegevusi logitakse sh kuhu. Kusjuures, kui filter parameetrit muuta tuleb seejärel öelda &#039;vgscan&#039;, et LVM cache failis /etc/lvm/.cache uuendataks.&lt;br /&gt;
* Kõigi LVM volume grupi voluumide aktiivseks (või mitteaktiivseks) muutmiseks sobib öelda vastavalt&lt;br /&gt;
&lt;br /&gt;
  # vgchange -a y volumegrupinimi&lt;br /&gt;
  # vgchange -a n volumegrupinimi&lt;br /&gt;
&lt;br /&gt;
* Kui pvdislay ei näita seadmete nimekirjas oodatavat seadet, maksab küsida otse&lt;br /&gt;
&lt;br /&gt;
  # pvdisplay /dev/md0&lt;br /&gt;
&lt;br /&gt;
* Voluumi grupi eemaldamisel kututatakse kõik grupis olevad voluumid&lt;br /&gt;
&lt;br /&gt;
  # vgremove data&lt;br /&gt;
  Do you really want to remove volume group &amp;quot;data&amp;quot; containing 32 logical volumes? [y/n]: y&lt;br /&gt;
   Logical volume &amp;quot;fs&amp;quot; successfully removed&lt;br /&gt;
   Logical volume &amp;quot;moraal&amp;quot; successfully removed&lt;br /&gt;
   Logical volume &amp;quot;cyrus_data&amp;quot; successfully removed&lt;br /&gt;
   ... &lt;br /&gt;
   Volume group &amp;quot;data&amp;quot; successfully removed&lt;/div&gt;</summary>
		<author><name>Juhani</name></author>
	</entry>
</feed>