Active Directory - DNS Bind alapokon

 ( hrgy84 | 2008. december 9., kedd - 11:00 )

Ez megint egy erdekes allatfajta lesz, elore szolok.

A pelda rendszer ketto gepet fog tartalmazni, dc es dns, a tartomany pedig a szeretett mittudomain.com lesz.

Nos, most lassuk a hozzavalokat, ket szerverre:

  1. DC

    1. Windows 2000 vagy 2003 Server
    2. Support Tools
  2. DNS
    1. Bind 9
    2. Valamilyen szovegszerkeszto

Eloszor is, lassuk a DNS szervert, mert ez az egyszerubb a bonyolultabb:

Telepitsuk fel a bind-et, ha szukseges, tegyuk elerhetove a DNS portjait a belso halo szamara.
Nagyon fontos, hogy ezt a DNS szervert semmikeppen se probaljuk meg valamilyen grafikus/webes eszkozzel menedzselni, mert eleg kenyes dolgok vannak benne, amiket nem jo, ha egy magat okosnak erzo eszkoz szemetnek erzekelve kihajit.

A konfigfajlban keressuk meg eloszor az options reszt, majd pakoljunk ilyeneket bele:

auth-nxdomain no;

Ezutan az options mezon kivul hozzunk letre ketto zonat, egyet a fo zonanak, egyet pedig a _msdcs zonanak. Ez utobbit mindenkeppen letre kell hozni, mert az Active Directory fokepp erre tamaszkodik. Lassuk a kodokat elobb, majd utana duma:

Zona...

zone "mittudomain.com" IN {
        type master;
        file "zones/mittudomain.com.db";
        allow-update {
                10.0.20.0/24;
        };
};

zone "_msdcs.mittudomain.com" {
        type master;
        file "zones/_msdcs.mittudomain.com.db";
        allow-update {
                10.0.20.5;
        };
        check-names ignore;
};

mittudomain.com zonafajl...

@       IN      SOA     mittudomain.com.    hostmaster.mittudomain.com. (
                        2008120901  ; serial
                        28800       ; refresh
                        7200        ; retry
                        3600000     ; expires
                        86400 )     ; minimum

        IN      NS      dns

@       IN      A       10.0.20.3
dns             A       10.0.20.3
dc              A       10.0.20.5

_msdcs.mittudomain.com zonafajl...

_msdcs.mittudomain.com      IN SOA  mittudomain.com. hostmaster.mittudomain.com. (
                                2008120901 ; serial
                                28800      ; refresh (8 hours)
                                7200       ; retry (2 hours)
                                3600000    ; expire (5 weeks 6 days 16 hours)
                                86400      ; minimum (1 day)
                                )
_msdcs.mittudomain.com.     IN      NS      dns.mittudomain.com.

Es akkor most duma:

Amint lathato a mittudomain.com zonafajl a leheto legegyszerubb lett, harom A rekord, egy NS, egy SOA, es roviditett formatum. Amit lenyeges megjegyezni belole, hogy a @ rekordnak mindig, kivetel nelkul a DNS szerverre onmagara kell mutatni, meghozza A rekordkent. Ez azert nagyon-nagyon fontos, mert az AD csak igy ertekeli a DNS szervert authoritativnak, es csak igy lesz hajlando beleirni magat.
Lassuk a nagyobbik remet, a _msdcs-t. Itt mar a konfig is modosult, latszik, hogy a bekerulo nevek ellenorzeset kikapcsoltam. Ez is nagyon fontos dolog, ugyanis a szabvany szerint a DNS nevekben nem lehetne alahuzas (underscore) karakter, marpedig itt maga a domain kezdodik igy. Ez sajnos MS sajatossag, nincs mit ellene tenni.
A zonafajlban precizen ki kell irni mindent, ugyanis a bind tud eleg sokat anyazni dolgokon, illetve neha nem kepes a @ feloldasara. Ilyenkor sajnos nincs mas hatra, mint potyogni. Ettol eltekintve ez meg egyszerubb: csak egy NS bejegyzes kerult ide, ami a DNS szerverunkre mutat.

Ezzel a bind kesz is, inditsuk el. Ha a syslog-ba valamire panaszkodna, akkor eloszor is ellenorizzuk a check-names megletet a zona konfigjaban, majd nezzuk at tuzetesen a zonafajlt.

Lassuk a DC-t.

Jelentkezzunk be, es ha eddig nem tettuk volna meg, akkor adjunk egy jo eros jelszot az Administrator/Rendszergazda felhasznalonak, mert a kovetkezo lepes ezt a jelszot importalja.

Allitsuk be a dns gepet a Windows elsodleges DNS szerverekent, ne legyen masodlagos DNS. Halozati helyek -> jobb klikk, Tulajdonsagok. Valasszuk ki a halozati kapcsolatunkat, majd a TCP/IP protokoll tulajdonsagainal irjuk be a dns gep IP cimet.

A Support Tools a Windows telepitolemez SUPPORT mappajaban talalhato, van itt egy SUPTOOLS.MSI, na azon kell duplakatt, es Next,Next,Finish. Nyissunk parancssort:

> cd "C:\Program Files\Support Tools"
> netdiag /test:dns 

 ... snip ...

DNS test . . . . . . . . . . . . . : Passed
    PASS - All the DNS entries for DC are registered on DNS server '10.0.20.3' a
nd other DCs also have some of the names registered.

The command completed successfully

Ennek igy kell kineznie. Ha valami RCODE hibara panaszkodik, vagy arra, hogy a DNS szerver szerinte nem authoritativ, akkor ellenorizzuk nslookup -pal, hogy a domain nevere megkapjuk-e A rekordkent a dns.mittudomain.com ip cimet. Ha nem, akkor ellenorizzuk a DNS szervert, hogy a kukacos A rekord bekerult-e a zonafajlba. Esetleg inditsuk ujra a bind-et.
Barmi egyeb hiba tovabbi keresest kell hogy maga utan vonjon, barmilyen szosz keresztbe fog akadni a kovetkezo lepes torkan.

Most adjuk ki a dcpromo parancsot. Ezt nem reszleteznem kulon, hogyan kell kitolteni, egyvalamire hivom csak fel a figyelmet: a tartomany DNS neve feltetlen egyezzen azzal a nevvel, amire a bind authoritativ, kulonben nem fogunk tudni tovabblepni.

A dcpromo lefutasa soran meg nem tortenik semmi a DNS szerverunkkel, viszont amikor a Windows szerver ujraindul, kezdjuk argus szemekkel figyelni a dns.mittudomain.com syslog-jat, mert a domain bejegyzesek ekkor tortennek meg. Ha lefutott, akkor csinaljunk egy teljes restartot a bind-en. Barmily hihetetlen ugyanis, a bind kepes a teljesen hibas bejegyzesek eltarolasara is, es ilyenkor ujraninditaskor akadnak a torkan dolgok. Hogy ez ne tudjon varatlanul elofordulni, celszeru tehat szandekosan kezdemenyezni. Ilyenkor altalaban a check-names szokott kiabalni. Ha nagyon kiabal, az options reszben tegyunk egy ilyen bejegyzest:

check-names master warn;

Es a zonafajlbol vegyuk ki a check-names bejegyzest. Ezzel ugyan globalisan kikapcsoltuk a nevek ellenorzeset, de hat ez egy ilyen vilag.

Ha szerencsenk volt, akkor jelenleg van egy teljesen mukodokepes Active Directory rendszerunk Bind DNS szerverrel.

Hozzászólás megjelenítési lehetőségek

A választott hozzászólás megjelenítési mód a „Beállítás” gombbal rögzíthető.

Ez jó, de amúgy mire való?

Peldaul a Microsoft DNS server kivaltasara. Ahol lehet, sokszor hasznos kivaltani, ugyanis egyfelol tud bonyolult lenni a lelkivilaga, masfelol pedig a bind-et van, aki jobban ismeri. Marpedig azt jobb uzemeltetni, amit az ember jobban ismer, ha a valasztas lehetosege adott.
Illetve ahova eleve tervezve van Bind DNS server, ott eleg lehet a Microsoft-ost mint slave beallitani, es a fo szolgaltatasok maradhatnak linuxos alapokon.

Masik felhasznalasi mod az, amikor egy alapvetoen linuxos szerverekbol allo haloba az ember kenytelen integralni egy AD szervert. Ugye nem akar az ember rogton MS DNS-re migralni, mert az annyival nem jobb.
--

()=() Ki oda vagyik,
('Y') hol szall a galamb
C . C elszalasztja a
()_() kincset itt alant.