Gyorsítótárazó DNS-kiszolgáló (BIND) beállítása a helyi hálózathoz. Saját helyi DNS (PDNSD) készítése blackjack-kel és gyorsabb, mint a Google Public DNS Néhány pont a konfigurációban

  • Dátum: 14.05.2021

A DNS célja, hogy az emberek által könnyen megjegyezhető tartományneveket olyan IP-címekké alakítsa, amelyeket a számítógépek megértenek. Ezt a folyamatot névfeloldásnak nevezik. Mit ad nekünk a saját gyorsítótár telepítése? DNS szerverek? Ez egy kicsit felgyorsítja a webhelyek reagálását + a Linux nem veszi túl jól a NetBios neveket, és néha számítógépeket vagy nyomtatókat kell találnia benne helyi hálózat, de név szerint szeretném megtenni.

Az IP-címek megjegyezése nem kényelmes, de a DHCP-kiszolgáló naplójába való folyamatos mászás szintén nem a mi módszerünk. Ilyen esetekben DNS-re van szükség a helyi hálózatban. Maga a bind9 csomag telepítése nem nehéz, a dugások általában a konfiguráció szakaszában merülnek fel, mert a rendszer könnyen olvasható konfigurációs fájljai után egy érthetetlen szintaxis esik az emberre, egyébként nagyon hasonló a C programozási nyelvhez. a szerver a helyi hálózaton belül fog működni, akkor nincs értelme chroot környezetbe vinni, és az egész beállítás nagyon kevés időt vesz igénybe. Ezen a lírai rész befejezhető, folytatjuk a telepítést és a konfigurációt.

Telepítse a Bind9 DNS-kiszolgálót:

# apt - telepítse a bind9-et

Miután elkészült, letöltöttük és telepítettük, módosítanunk kell a konfigurációs fájlt:

# vim / etc / bind / named . konf. opciók

Megtaláljuk a részt, a konfigurációs fájl legelején található, rajta kívül nincs más ...

options ( "/var/cache/bind" könyvtár; // Ha van tűzfal közted és a kívánt névszerverek között// Ha beszélni akarsz vele, előfordulhat, hogy meg kell javítanod a tűzfalat, hogy több lehetőség is legyen// portok beszélni. Lásd: http://www.kb.cert.org/vuls/id/800113// Ha az internetszolgáltató egy vagy több IP-címet adott meg a stabilhoz// névszerverek, valószínűleg továbbítóként szeretné használni őket.// Törölje a következő blokk megjegyzését, és illessze be a címeket helyettesítve// az all-0"s helyőrző. // továbbítók ( // 0.0.0.0; // ); auth - nxdomain no ; # megfelel az RFC1035-nek listen - on - v6 ( any ; ); );

A továbbítók részleg felelős azért, hogy hova kerüljön a névfeloldásra vonatkozó DNS-kérés, ha az nincs a saját adatbázisában. Az utóbbi időben egyáltalán nem vagyok elégedett, ezeknek a szervereknek a munkája a szolgáltatónál csatlakoztatható harmadik féltől származó szerverekhez, például Google-hoz, nagyon könnyű megjegyezni az IP 8.8-at.

Szerkesztjük a részt, először el kell távolítania a megjegyzéseket, és hozzá kell adnia harmadik fél DNS-ét, ha több szervert kell hozzáadni, például arra az esetre, ha a google szerver nem bírja a kéréseit és megszakad :), akkor a Más szerverek IP-címe oszlopba írható, akkor nagyobb rugalmasságot érhet el.

szállítmányozók ( 8.8.8.8 ; 193.58.251.251 ; //Orosz DNS szolgáltatás -SkyDNS};

Ebben a részben jobb, ha megadja a fájlban megadott szerver IP-címét /etc/resolv.conf vagy írja be oda a rovatba névszerver ezt az IP-t. Mentjük a változtatásokat és kilépünk. Indítsa újra a szervert és ellenőrizze. Toborzás be parancs sor nslookup mail.ru
Ki kell adnia:

Nem hiteles válasz: Név: mail. hu Címek : 94.100.191.202

Ez arra utal, hogy nem a mi szerverünk a fő a zóna kiszolgálásában (mail.ru), de a kérések a gyorsítótárba kerültek!
Most létre kell hoznunk egy DNS-zónát a hálózatunkhoz, hogy a gépek megtalálják a különféle hálózati szolgáltatásokat - például hálózati nyomtatókat, ezek lehetnek függetlenek vagy megosztottak más munkaállomásokon.
Zónánk nevezhető orgname -i.e. A szervezet neve.
Először is létrehozunk egy zónát, ehhez szerkesztjük named.conf.local

# vim / etc / bind / named . konf. helyi

és adjuk hozzá a következőket:

zóna "orgname" (típus master ; fájl "/etc/bind/db.orgname" ; );

Mentés és kilépés
Most létre kell hoznunk egy zóna konfigurációs fájlt

# vim / etc / bind / db . szervezetnév

és illessze be a következőket:
(Kérjük, ügyeljen a konfigurációs fájl szintaxisára, még a pontok is számítanak)

@ IN SOA szervezetnév . gyökér. szervezetnév. (20101015 4h ; ​​frissítési idő - 4 óra 1 óra ; ismétlés óránként 1h ; mennyi ideig kell tárolni az információkat - 1 hét 1d ); TTL (élettartam) rekordok - 1 nap @ IN NS szervezetnév . ; névkiszolgáló neve @ IN A 192.168.10.1 ; A - rekord - az ezt a zónát kiszolgáló DNS-kiszolgálónk IP-címe, a @ azt jelenti, hogy ez a gyökérzóna. * IN CNAME @ nyomtató IN A 192.168.10.25 ; Létrehozhat egy DNS-bejegyzést a 192.168.10.25 címen található hálózati nyomtatóhoz

Most, amikor új hálózati eszközt ad hozzá, két dolgot kell tennie:
1) Foglaljon le egy IP-címet a DHCP-kiszolgálón, ennek módját a - DHCP-szerver beállítása című cikkben olvashatja.
2) Hozzon létre egy DNS-zónát ehhez az IP-címhez, például az eszköznevet A XXX.XXX.XXX.XXX-ben. Ahol: eszköznév - az eszköz hálózati neve; XXX.XXX.XXX.XXX az IP-címe, amely a DHCP-kiszolgálón van lefoglalva.

most szerkesztenünk kell a resolv.conf fájlt

# vim / etc / resolv . konf

és írd be oda:

névszerver 127.0.0.1

minden, ami ott volt, kommentálható a # beírásával
a szerver újraindul

# újraindítás

Ez úgy történik, hogy a szerver mindent megkeres a saját adatbázisában, és a BIND csak ezután irányítja át a kéréseket arra a 8.8.8.8-as szerverre, amelynek az IP-címe szerepel az irányelvben szállítmányozók.
Most ellenőrizheti, hogy működik-e:
Ha a tesztelés Windows alatt történik:

ping eszköznév. szervezetnév

Ha Linux alatt teszteljük:

ping eszköznév. szervezetnév - c 4

A pingeknek az Ön által megadott IP-címre kell menniük a XXX.XXX.XXX.XXX helyett

A paranccsal ellenőrizheti a kérések feldolgozásának sebességét is dig

# dig @127.0.0.1 tut.by ;<<>> DiG 9.9.5-9+deb8u6-Debian<<>> @127.0.0.1 tut.by ; (1 szerver található) ;; globális beállítások: +cmd ;; választ kaptam: ;; ->>Fejléc<<- opcode: QUERY, status: NOERROR, id: 63893 ;; flags: qr rd ra ad; QUERY: 1, ANSWER: 4, AUTHORITY: 13, ADDITIONAL: 1 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 4096 ;; QUESTION SECTION: ;tut.by. IN A ;; ANSWER SECTION: tut.by. 103 IN A 178.172.160.5 tut.by. 103 IN A 178.172.160.4 tut.by. 103 IN A 178.172.160.2 tut.by. 103 IN A 178.172.160.3 ;; AUTHORITY SECTION: . 6029 IN NS i.root-servers.net. . 6029 IN NS b.root-servers.net. . 6029 IN NS m.root-servers.net. . 6029 IN NS k.root-servers.net. . 6029 IN NS e.root-servers.net. . 6029 IN NS d.root-servers.net. . 6029 IN NS j.root-servers.net. . 6029 IN NS g.root-servers.net. . 6029 IN NS l.root-servers.net. . 6029 IN NS f.root-servers.net. . 6029 IN NS h.root-servers.net. . 6029 IN NS a.root-servers.net. . 6029 IN NS c.root-servers.net. ;; Query time: 0 msec ;; SERVER: 127.0.0.1#53(127.0.0.1) ;; WHEN: Tue Mar 22 16:46:24 MSK 2016 ;; MSG SIZE rcvd: 310

Jó időt, olvasók! Folytatva az elméleti anyagot, a jelenlegi cikkben egy gyakorlati példát szeretnék megfontolni telepítések és beállítások különböző BIND szerver konfigurációk. A cikkben leírom DNS-gyorsítótár beállításaés tele DNS főkiszolgáló. A leírást az általános fogalmakkal és a rendszerezéshez szükséges lépésekkel kezdem DNS szerverek.

Általános információ

Nevezett egy démon, amely része bind9 csomagés a lét domain név szerver. Démon nevű bármilyen típusú szerver funkcióját képes megvalósítani: mester, rabszolga, gyorsítótár. A fenti diagramon igyekeztem a főt a lehető legátláthatóbban megjeleníteni. hogyan működik a BIND DNS szerver. A munka nagy részét elvégző bináris benn található /usr/sbin/named. A beállításokat a fő konfigurációs fájlból veszi named.confés a katalógusban található /etc/bind. fő konfigurációban leírta szerver munkakönyvtár, gyakran egy könyvtár /var/cache/bind, amelyben fekszenek zónaleíró fájlokés egyéb szolgáltatási fájlok. Megfelelőség zónanevekés zónaleíró fájl készletek zóna szakasz paraméterrel fájlt. zóna szakasz beállítja a kiszolgáló felelősségének típusát is a zónára vonatkozóan (master, slave, stb.), és speciális paramétereket is meghatároz az aktuális zónához (például melyik interfészen kell feldolgozni az aktuális zónára vonatkozó kéréseket). A zónaleíró fájlokban zónaparamétereket és erőforrásrekordokat tartalmaz (az ebben a bekezdésben jelzett elérési utak a Linux disztribúciótól vagy paraméterektől függően eltérőek lehetnek).

Ez egy általános munkaséma, amely segít abban, hogy a jövőben ne keveredjen össze a konkrét konfigurációk mérlegelésekor.

A program 4. verziójának konfigurációs fájljának formátuma eltér a nyolcadik és kilencedik verzióban használttól BIND. Tekintettel arra, hogy nagyon várom az új telepítését DNS szervert, és nem látom értelmét a régi verzió telepítésének, ezért megfontolom az új verzió konfigurációját.

Kezdeti adatok

A DNS megfelelő működéséhez rendelkeznie kell egy . A cikkben szereplő DNS Debian disztribúción lesz konfigurálva, de más disztribúciók is meg lesznek jegyezve. Az állvány hálózati konfigurációja a következő:

Dns:~# cat /etc/network/interfaces auto lo iface lo inet loopback auto eth0 iface eth0 inet statikus cím 10.0.0.152 netmaszk 255.255.255.0 átjáró 10.0.0.254 auto eth1 iface eth1 in.

ahol 10.0.0.152/24 - külső interfész (a szolgáltató által kiosztott alhálózat), 192.168.1.1/24 - belső (Helyi hálózat). Az egyéni zóna neve example.com lesz. A példában -val slave szerver, a másodlagos szerver az IP-n lesz található 10.0.0.191 .

A BIND9 telepítése

A DNS-kiszolgáló működéséhez szüksége van köt9 (egyes disztribúciókon - kötni ). Amint az az ábrán látható - a fő konfigurációs fájl BIND a fájl named.conf(ez a fájl elhelyezhető a könyvtárban /stb, néha be /etc/bind).

Paraméterek (szintaxis) named.conf

named.conf fájl szintaxisa betartja a következő szabályokat:

IP-címek- Az IP listát ";" jellel kell elválasztani , lehetőség van alhálózat megadására 192.168.1.1/24 vagy 192.168.1.1/255.255.255.0, formátumban (az IP kizárásához jelet kell elé rakni!), lehetőség van nevek megadására "bármilyen", "nincs", "localhost" dupla idézőjelben.

Hozzászólások- a #, // karakterekkel kezdődő és /* és */ közé zárt sorok megjegyzésnek minősülnek.

V zónaleíró fájlok -szimbólum @ egy "változó", amely a konfigurációs fájlban megadott zóna nevét tartalmazza named.conf vagy a @ direktívában $ORIGIN az aktuális zóna leírása.

Minden egyes befejezett sor a paramétereknek karakterrel kell végződniük; .

Acl szakasz

Acl (hozzáférési lista)- lehetővé teszi a hálózatok névvel ellátott listájának beállítását. Szakasz formátum: acl "net_name" (ip; ip; ip; );

Opciók szakasz

Opciók szakasz készletek globális lehetőségek konfigurációs fájl, amely az összes zónát vezérli. Ennek a szakasznak a formátuma a következő: options(options_section_options);. Az opciók „beágyazhatók”. Zóna szakasz, miközben felülírja a globális beállításokat. Gyakran használt opciós nyilatkozatok:

  • engedélyezési lekérdezés ( ip_list} - Csak a következőtől származó lekérdezésekre ad választ ip_list. Ha nem, a szerver minden kérésre válaszol.
  • engedélyezés-rekurzió ( ip_list} - Rekurzív lekérdezéseket hajtanak végre az ip_listból származó kérésekre. A többi - iteratív. Ha a paraméter nincs beállítva, akkor a szerver rekurzív lekérdezéseket hajt végre az összes hálózaton.
  • átvitel engedélyezése ( ip_list} - Megadja azoknak a szervereknek a listáját, amelyek átvehetik a zónát a szervertől (alapvetően a szolga szerverek vannak itt feltüntetve)
  • /útvonal/munkahely/könyvtár- megadja a kiszolgáló munkakönyvtárának abszolút elérési útját. Ez az állítás csak az opciók részben érvényes.
  • szállítmányozók ( ip port ip port.} - jelzi a gazdagép címeket és szükség esetén a portokat, ahová a kéréseket továbbítani kell (általában az internetszolgáltatók DNS-szolgáltatóit tüntetik fel itt).
  • előre CSAK vagy előre ELSŐ - paraméter első utasítja a DNS-kiszolgálót, hogy próbálja meg feloldani a neveket a továbbítók paraméterben megadott DNS-kiszolgálókkal, és csak akkor kísérli meg magát a nevet feloldani, ha nem sikerül feloldania a nevet ezekkel a kiszolgálókkal.
  • értesítse IGEN|NEM - IGEN- értesítse a slave szervert a zóna változásairól, NEM- ne értesíts.
  • rekurzió IGEN|NEM - IGEN- rekurzív lekérdezések végrehajtása, ha az ügyfél kéri, NEM- ne hajtsa végre (csak iteratív lekérdezések). Ha a válasz megtalálható a gyorsítótárban, akkor azt a gyorsítótárból küldi vissza. (csak a Beállítások részben használható)

Zóna szakasz

Megadja a zóna(k) leírását. Szakasz formátum: zóna( zone_section_statements}; Üzemeltetők amelyeket leggyakrabban használnak:

  • enable-update( ip_list} - Meghatározza azokat a rendszereket, amelyek dinamikusan frissíthetik az adott zónát.
  • fájlt "Fájl név " - megadja a zónabeállítások fájl elérési útját (a könyvtár utasítással az opciók szakaszban megadott könyvtárban kell lennie)
  • mesterek ( ip_list} - megadja a főkiszolgálók listáját. (csak alárendelt zónákban megengedett)
  • típus" zóna_típus " - az aktuális részben leírt zóna típusát jelzi, a zone_type a következő értékeket veheti fel:
    • előre- megadja az átirányítási zónát, amely átirányítja az ebbe a zónába érkező kéréseket.
    • célzás- jelzi a kiegészítő zónát (ez a típus azon root szerverekről tartalmaz információkat, amelyekkel a szerver kapcsolatba lép, ha nem találja a választ a gyorsítótárban)
    • fő-- azt jelzi, hogy az aktuális zóna főkiszolgálójaként működik.
    • rabszolga- Megadja, hogy az aktuális zónához szolgakiszolgálóként működjön.

További konfigurációs lehetőségek

Időértékek a zónafájlokban alapértelmezés szerint másodpercben van megadva, ha nem követi őket a következő betűk egyike: S - másodperc, M - perc, H - óra, D - nap, W - hét. Ennek megfelelően a bejegyzés 2 óra 20 óra 5 perc 2 óra 20 perc 5 másodperc lesz, és 8405 másodpercnek felel meg.

Bármilyen gazdagépnév/bejegyzés, amely nem végződik pont számít nem FQDN név, és az aktuális zóna nevével lesz kiegészítve. Például egy domen bejegyzés az examle.com zónafájlban a domen.examle.com FQDN névre bővül. .

V BIND konfigurációs fájlok a következők vonatkozhatnak irányelveket:

  • $TTL- meghatározza az alapértelmezett TTL-t az aktuális zóna összes rekordjához.
  • $ORIGIN- megváltoztatja a zóna nevét a named.conf fájlban megadottról. Ugyanakkor ennek a direktívának a hatálya nem terjed ki "felfelé" (vagyis ha a fájlt az $INCLUDE direktíva tartalmazza, akkor az $ORIGN hatálya nem terjed ki a szülőre)
  • $INCLUDE- tartalmazza a megadott fájlt a zónafájl részeként.

Külön szeretném leírni paraméter enable-transfer ( 10.0.0.191; );. Ez a paraméter azokat a szervereket írja le, amelyek számára engedélyezett a zóna másolatának letöltése - úgynevezett szerver szolga. A következő példában a beállítást elemezzük slave DNS.

A naplózás megfelelő működéséhez létre kell hoznia a megfelelő könyvtárat, és hozzá kell rendelnie a szükséges jogokat:

Dns:~# mkdir /var/log/bind/ dns:~# chmod 744 /var/log/bind/ dns:~# ps aux | grep nevű kötés 4298 0,0 3,4 46792 13272 ? Ssl Jul05 0:00 /usr/sbin/named -u bind root 4815 0.0 0.1 3304 772 pts/4 S+ 18:19 0:00 grep named dns:~# chown bind /var/log/bind/ dns:~# -ld /var/log/bind/ drwxr--r-- 2 bind root 4096 július 6. 18:18 /var/log/bind/

Dns:~# cat /var/cache/bind/example.com $TTL 3D @ IN SOA ns.example.com. root.example.com. (2011070601 ; soros 8H ; frissítés 2H ; újrapróbálkozás 2W ; lejárat 1D ); minimum @ IN NS ns.example.com. @ IN NS ns2.example.com. @ IN A 10.0.0.152 @ IN MX 5 mx.example.com. ns IN A 10.0.0.152 ns2 IN A 10.0.0.191 mx IN A 10.0.0.152 www IN CNAME @

valamint az in-addr.arpa tartományban.

Dns:~# cat /var/cache/bind/0.0.10.in-addr.arpa $TTL 3600 @ IN SOA ns.examle.com. root.example.com. (2007042001 ; Serial 3600 ; Refresh 900 ; Retry 3600000 ; Expire 3600) ; Minimum IN NS ns.examle.com. IN NS ns2.example.com. 152 IN PTR examle.com. 191 IN PTR ns.example.com. * A PTR examle.com webhelyen. dns:~# cat /var/cache/bind/1.168.192.in-addr.arpa $TTL 3600 @ IN SOA ns.examle.com. root.example.com. (2007042001 ; Serial 3600 ; Refresh 900 ; Retry 3600000 ; Expire 3600) ; Minimum IN NS ns.examle.com. IN NS ns2.example.com. * A PTR examle.com webhelyen.

A hálózatunk kicsi, feltételezhető, hogy nagyon kevés gép van a hálózaton. Minden hálózati szolgáltatás ugyanazon az example.com.-on található, így a fő DNS (ns.example.com.) és a levelezőszerver (mx.example.com.) is ugyanarra a gépre mutat (10.0.0.152).

Másodlagos (szolga) mérvadó szerver a zónához

fő funkció szerver szolga- a zónaleírás automatikus szinkronizálása a főkiszolgálóval. Ezt a feladatot a dokumentum szabályozza RFC 1034 fejezetben 4.3.5. E dokumentum szerint a szerverek közötti adatcsere AXFR kéréssel javasolt. Ehhez a kéréshez a teljes zónát egyetlen TCP-kapcsolaton keresztül kell átvinni (RFC 1035).

Ugyanilyen módon, slave DNS szerver megosztja a terhelést a főkiszolgálóval, vagy átveszi a teljes terhelést az első szerver meghibásodása esetén.

Mielőtt folytatná a szolga DNS-kiszolgáló konfigurálása, ellenőriznie kell, hogy manuálisan lekérheti-e a zónát a másodlagostól a következő paranccsal:

[e-mail védett]:~# [email protected] example.com. axfr ;<<>> DiG 9.7.3<<>> @10.0.0.152 example.com. axfr ; (1 szerver található) ;; globális beállítások: +cmd example.com. 259200 IN SOA ns.example.com. root.example.com. 2011070801 28800 7200 1209600 86400 example.com. 259200 IN NS ns.example.com. example.com. 259200 IN NS ns2.example.com. example.com. 259200 EGY 10.0.0.152 example.com-ban. 259200 IN MX 5 mx.example.com. mx.example.com. 259200 IN A 10.0.0.152 ns.example.com. 259200 IN A 10.0.0.152 ns2.example.com. 259200 IN A 10.0.0.191 www.example.com. 259200 IN CNAME example.com. example.com. 259200 IN SOA ns.example.com. root.example.com. 2011070801 28800 7200 1209600 86400;; Lekérdezési idő: 14 msec ;; SZERVER: 10.0.0.152#53(10.0.0.152) ;; MIKOR: 2011. július 8. péntek, 15:33:54 ;; XFR méret: 11 rekord (üzenetek 1, bájt 258)

  1. Másolat conf nevű konfigurációs fájl a fő szerverről;
  2. Cserélje ki típusú master paramétert a rabszolga típus
  3. Paraméter engedélyezés-átvitel ( 10.0.0.191; ); cserélje ki a masters( 10.0.0.152;); azokban a zónákban, amelyek számára ez másodlagos lesz;
  4. Zónák törlése, amelyet az aktuális szerver nem fog kiszolgálni, beleértve a gyökeret is, ha a slave nem válaszol a rekurzív kérésekre;
  5. Hozzon létre könyvtárakat naplókhoz, mint az előző példában.

Összességében megkapjuk a slave szerver konfigurációját:

[e-mail védett]:~# cat /etc/bind/named.conf options ("/var/cache/bind" könyvtár; allow-query ( any; ); // válaszoljon az összes interfésztől érkező kérésekre rekurziós szám; // a rekurzív kérések letiltása auth-nxdomain nem; // az RFC1035 kompatibilitáshoz listen-on-v6 ( none; ); // nincs szükségünk az IPv6-verzióra "ismeretlen"; // ne jelenítse meg a DNS-kiszolgáló verzióját a válaszokban ); // az alább ismertetett zónák a visszacsatolási // interfészekhez, valamint a broadcast zónákhoz (RFC 1912 szerint) zóna "localhost" ( típus master; fájl "localhost"; ) határozzák meg a szervert. zóna "127.in-addr.arpa" (típus master; fájl "127.in-addr.arpa"; ); zóna "0.in-addr.arpa" (típus master; fájl "0.in-addr.arpa"; ); zóna "255.in-addr.arpa" (típus master; fájl "255.in-addr.arpa"; ); // a főzóna zóna leírása "example.com" ( type slave; file "example.com"; masters ( 10.0.0.152; ); ); //fordított zónaleírás zóna "0.0.10.in-addr.arpa" ( típus slave; fájl "0.0.10.in-addr.arpa"; masters ( 10.0.0.152; ); ); // naplózási beállítások naplózása ( csatorna "misc" ( fájl "/var/log/bind/misc.log" verziók 4 méret 4m; nyomtatási idő IGEN; nyomtatási súlyosság IGEN; nyomtatási kategória IGEN; ); csatorna "lekérdezés" ( fájl "/var/log/bind/query.log" verziók 4 méret 4 m; nyomtatási idő IGEN; nyomtatási súlyosság NEM; nyomtatási kategória NEM; ); kategória alapértelmezett ( "egyéb"; ); kategória lekérdezések ( "query" "; ); );

a mi újraindítása után slave szerver biztonságosan másolja a szükséges információkat a fő szerverről, amint azt a fájlok jelenléte jelzi a könyvtárban:

[e-mail védett]:~# ls -la /var/cache/bind/ összesen 28 drwxrwxr-x 2 root bind 4096 július 8. 18:47 . drwxr-xr-x 10 gyökérgyökér 4096 július 8 15:17 .. -rw-r--r-- 1 bind bind 416 július 8 18:32 0.0.10.in-addr.arpa ...... - rw-r--r-- 1 bind bind 455 júl. 8. 18:32 example.com .......

Alapvetően a /stroallow-transfer (pngp slave szerver nem tarthatja meg a zóna másolatát a fájlrendszerében. Erre a másolatra csak a DNS indításakor van szükség. A zóna másolata a fájlrendszerben megakadályozhatja az összeomlást, ha a főkiszolgáló nem elérhető a szolga DNS indításakor. Ha nem adja meg a fájl beállítást a zóna részben, nem jön létre másolat.

A netfilter() beállítása a DNS BIND-hoz

Valójában a szerver beállítása után jó lenne megvédeni. Tudjuk, hogy a szerver az 53/udp porton fut. A cikk elolvasása és megismerése után létrehozhat hálózati forgalom szűrési szabályokat:

Dns ~ # iptables-save # általános iptables szabályok a DNS-hez *filter:INPUT DROP :FORWARD DROP :OUTPUT DROP -A INPUT -i lo -j ACCEPT -A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT -A INPUT -m conntrack --ctstate ÉRVÉNYTELEN -j DROP # helyi hálózati hozzáférés engedélyezése a DNS-kiszolgálóhoz: -A BEMENET -s 192.168.1.1/24 -d 192.168.1.1/32 -p udp -m udp --dport 53 -m conntrack - -ctstate ÚJ -j ELFOGADÁS -A KIMENET -o lo -j ELFOGADÁS -A KIMENET -p icmp -j ELFOGADÁS -A OUTPUT -p udp -m udp --sport 32768:61000 -j ELFOGADÁS -A OUTPUT -p tcp -m tcp --sport 32768:61000 -j ELFOGADÁS -A OUTPUT -m conntrack --ctstate KAPCSOLÓDÓ, LÉPTETETT -j ELFOGADÁS # DNS-kiszolgáló hozzáférés engedélyezése kimenő lekérdezésekhez -A OUTPUT -p udp -m udp -dport 53 -m conntrack - -ctstate ÚJ -j ELFOGADJA COMMIT

Ez egy tipikus példa! A feladatok és a hálózati konfiguráció iptables szabályainak beállításához meg kell értenie a netfilter működését Linux alatt a fenti cikkek elolvasásával.

Hibaelhárítás

A DNS-problémák azonosításának fő forrása a . Íme egy példa az indítási hibákra, amikor hibáztam a cím elérési útjával központi szerverek zónafájlja:

júl. 5 18:12:43 dns-szerver megnevezése: kezdő BIND 9.7.3 -u bind júl 5 18:12:43 dns-szerver neve: "--prefix=/usr" "--mandir=/usr/" share/man" "--infodir=/usr/share/info" "--sysconfdir=/etc/bind" "--localstatedir=/var" "--enable-threads" "--enable-largefile" "- -with-libtool" "--enable-shared" "--enable-static" "--with-openssl=/usr" "--with-gssapi=/usr" "--with-gnu-ld" "- -with-dlz-postgres=no" "--with-dlz-mysql=no" "--with-dlz-bdb=yes" "--with-dlz-filesystem=yes" "--with-dlz-ldap =yes" "--with-dlz-stub=yes" "--with-geoip=/usr" "--enable-ipv6" "CFLAGS=-fno-strict-aliasing -DDIG_SIGCHASE -O2" "LDFLAGS=" " CPPFLAGS=" Jul 5 18:12:43 dns-server named: 1024 és 1048576 megnyitott fájlok korlátja 1024 és 1048576 között július 5 18:12:43 dns-server name: 1 CPU, 1 worker szál felhasználásával júl 5 18:12: 43 dns-szerver megnevezett: legfeljebb 4096 socket használatával 5. júl. 18:12:43 dns-szerver megnevezése: konfiguráció betöltése a "/etc/bind/named.conf" fájlból 5. júl. 18:12:43 dns-szerver neve: beépített olvasás -in megbízható kulcsok az "/etc/bind/b" fájlból ind.keys" júl. 5 18:12:43 dns-szerver neve: alapértelmezett UDP/IPv4 porttartomány használata: júl 5 18:12:43 dns-szerver megnevezése: alapértelmezett UDP/IPv6 porttartomány használata: júl 5 18:12: 43 dns-szerver neve: figyel az IPv4 interfészen lo, 127.0.0.1#53 júl. 5. 18:12:43 dns-szerver neve: figyel az IPv4 interfészen eth1, 192.168.1.1#53 július 5. 18:12:43 dns-server named: munkamenetkulcs generálása a dinamikus DNS-hez júl. 5. 18:12:43 dns-szerver named: nem sikerült konfigurálni a gyökér tippeket az "/etc/bind/db.root"-ból: a fájl nem található július 5. 18:12:43 dns-server named: konfiguráció betöltése: fájl nem található # fájl nem található júl. 5 18:12:43 dns-server named: kilépés (végzetes hiba miatt) júl 5 18:15:05 dns-server name: BIND 9.7.3 -u bind júl. 5 18:15:05 dns-szerver neve: build with "--prefix=/usr" "--mandir=/usr/share/man" "--infodir=/usr/share/info" "-- sysconfdir=/etc/bind" "--localstatedir=/var" "--enable-threads" "--enable-largefile" "--with-libtool" "--enable-shared" "--enable-static" "--with-openssl=/usr" "--with-gssapi=/usr" "--wit h-gnu-ld" "--with-dlz-postgres=no" "--with-dlz-mysql=no" "--with-dlz-bdb=yes" "--with-dlz-filesystem=yes" "--with-dlz-ldap=yes" "--with-dlz-stub=yes" "--with-geoip=/usr" "--enable-ipv6" "CFLAGS=-fno-strict-aliasing -DDIG_SIGCHASE -O2" "LDFLAGS=" "CPPFLAGS=" Jul 5 18:15:05 dns-server named: a nyitott fájlok korlátja 1024-től 1048576-ig júl 5 18:15:05 nevű dns-szerver: talált 1 CPU, 1 dolgozó szál július 5 18:15:05 dns-server named: maximum 4096 socket használata július 5 18:15:05 dns-server named: konfiguráció betöltése innen: "/etc/bind/named.conf" július 5 18:15: 05 dns-szerver megnevezése: alapértelmezett UDP/IPv4 porttartomány használata: júl. 5 18:15:05 dns-szerver megnevezése: alapértelmezett UDP/IPv6 porttartomány használata: július 5 18:15:05 dns-szerver megnevezése: figyel az IPv4 interfészen íme, 127. 0.0.1#53 júl. 5 18:15:05 dns-szerver neve: figyel az IPv4 interfészen eth1, 192.168.1.1#53 júl. 5 18:15:05 dns-szerver neve: automatikus üres zóna: 254.169.IN-ADDR. ARPA Jul 5 18:15:05 dns-szerver neve: automatikus üres zóna: 2.0.192.IN-ADDR.ARPA Jul 5 18:15:05 dns-szerver megnevezése: automatikus üres zóna: 100.51.198.IN-ADDR. ARPA Jul 5 18:15:05 dns-szerver megnevezése: automatikus üres zóna: 113.0.203.IN-ADDR.ARPA Jul 5 18:15:05 dns-szerver neve: automatikus üres zóna: 255.255.255.255.IN-ADDR. ARPA július 5. 18:15:05 dns-szerver neve: automatikus üres zóna: 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 július 5. 18:15:05 dns-szerver neve: automatikus üres zóna: 1.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 július 5 18:15:05 dns-szerver megnevezése: automatikus üres zóna: DFIP6.ARPA július 5 18:15:05 dns-szerver megnevezése: automatikus üres zóna: 8.EFIP6.ARPA július 5 18:15 :05 dns-szerver megnevezése: automatikus üres zóna: 9.EFIP6.ARPA Jul 5 18:15:05 dns-szerver neve: automatikus üres zóna e: AEFIP6.ARPA Jul 5 18:15:05 dns-szerver neve: automatikus üres zóna: BEFIP6.ARPA Jul 5 18:15:05 dns-szerver megnevezése: automatikus üres zóna: 8.BD0.1.0.0.2 .IP6. ARPA július 5. 18:15:05 dns-szerver megnevezése: 0. zóna.in-addr.arpa/IN: betöltött soros 1. július 5. 18:15:05 dns-szerver megnevezése: 127. zóna.in-addr.arpa /IN: betöltött soros 1. július 5. 18:15:05 dns-szerver megnevezése: zóna 255.in-addr.arpa /IN: betöltött soros 1. július 5 18:15:05 dns-szerver neve: zóna localhost/IN: zóna betöltött soros 2 júl. 5. 18:15:05 dns-szerver neve: futás # indítás sikeres volt

Kiváló diagnosztikai eszközök.

Összegzés

Ebben a cikkben leírtam, hogyan kell beállítani az alapvető BIND-kiszolgáló DNS-konfigurációit. Ennek a cikknek az volt a célja, hogy képet adjon arról, hogyan működik a BIND szerver UNIX rendszeren. Gyakorlatilag nem érintettem a DNS biztonsági kérdéseket, és keveset érintettem az olyan specifikus beállításokat, mint a szerver működése szélső módban, amikor a zónákról különböző információkat küldenek a különböző hálózatokba. A mélyebb megértés érdekében adok egy listát a további forrásokról, amelyekben remélem sikerül beszerezni a szükséges információkat. ennek véget vetettem. Viszlát.

Domain név rendszer: http://citforum.ru/internet/dns/khramtsov/
RFC 1034- Domain nevek - Koncepciók és szolgáltatások: http://tools.ietf.org/html/rfc1034
RFC 1035- Domain nevek - Megvalósítás és specifikáció: http://tools.ietf.org/html/rfc1035
RFC 1537- Gyakori DNS-adatfájl-konfigurációs hibák: http://tools.ietf.org/html/rfc1537
RFC 1591- A domain névrendszer felépítése és delegálása: http://tools.ietf.org/html/rfc1591
RFC 1713- DNS-hibakeresési eszközök: http://tools.ietf.org/html/rfc1713
RFC 2606- Fenntartott legfelső szintű DNS-nevek: http://tools.ietf.org/html/rfc2606
DNS biztonság (DNSSEC): http://book.itep.ru/4/4/dnssec.htm
BIND 9 Adminisztrátori kézikönyv: http://www.bind9.net/manual/bind/9.3.2/Bv9ARM.html
Biztonságos BIND sablon: http://www.cymru.com/Documents/secure-bind-template.html
A konfigurációs paraméterek jól meghatározottakorosz: http://www.bog.pp.ru/work/bind.html
Zónafájl automatikus létrehozása: http://www.zonefile.org/?lang=en#zonefile

A DNS-gyorsítótár egy ideiglenes adatbázis, amely információkat tárol a korábbi DNS-keresésekről. Más szóval, amikor meglátogat egy webhelyet, az operációs rendszer és a webböngésző rögzíti a domaint és a megfelelő IP-címet. Ez kiküszöböli a távoli DNS-kiszolgálók ismételt lekérdezésének szükségességét, és lehetővé teszi az operációs rendszer vagy a böngésző számára, hogy gyorsan feloldja a webhely URL-címeit.

Bizonyos helyzetekben azonban, például hálózati hibaelhárításkor vagy a DNS-feloldók megváltoztatása után, ki kell üríteni a DNS-gyorsítótárat. Ez törli a gyorsítótárazott DNS-rekordokat, és egy következő keresést hajt végre a tartomány feloldásához az újonnan konfigurált DNS-beállítások alapján.

Ez a cikk útmutatást nyújt a DNS-gyorsítótár ürítéséhez különböző operációs rendszereken és webböngészőkön.

Törölje/törölje a DNS-gyorsítótárat a Windows rendszerben

A DNS-gyorsítótár törlésének folyamata a Windows minden verziójában ugyanaz. Meg kell nyitnia egy parancssort rendszergazdai jogokkal, és futtassa az ipconfig /flushdns parancsot.

Windows 10 és Windows 8

A DNS-gyorsítótár törléséhez Windows 10 és 8 rendszerben kövesse az alábbi lépéseket:

  1. Írja be a cmd parancsot a Windows keresősávjába.
  2. ipconfig /flushdns

    Windows 7

    A DNS-gyorsítótár törléséhez Windows 7 rendszerben kövesse az alábbi lépéseket:

    1. Kattintson a Start gombra.
    2. Írja be a cmd-t a Start menü keresőmezőjébe.
    3. Kattintson a jobb gombbal a Parancssorra, és válassza a Futtatás rendszergazdaként lehetőséget. Ezzel megnyílik egy parancssor ablak.
    4. A parancssorba írja be a következő sort, és nyomja meg az Enter billentyűt:

      ipconfig /flushdns

      Sikeres esetben a rendszer a következő üzenetet küldi vissza:

      A Windows IP-konfigurációja sikeresen kiürítette a DNS-feloldó gyorsítótárat.

    Öblítse ki/eltávolítsa a DNS-gyorsítótárat Linux alatt

    A Linux nem rendelkezik operációs rendszer szintű DNS-gyorsítótárral, hacsak nincs telepítve és fut egy gyorsítótárazási szolgáltatás, például a Systemd-Resolved, a DNSMasq vagy az Nscd. A DNS-gyorsítótár törlésének folyamata a használt terjesztési és gyorsítótárazási szolgáltatástól függően eltérő.

    Rendszer megoldva

    A legtöbb modern Linux disztribúció, például a , rendszer által támogatott szolgáltatást használ a DNS-rekordok gyorsítótárazására.

    Ha meg szeretné tudni, hogy a szolgáltatás fut-e, futtassa:

    sudo systemctl is-active systemd-resolved.service

    Ha a szolgáltatás fut, a parancs aktívként jelenik meg, ellenkező esetben inaktív lesz.

    A Systemd Resolved DNS gyorsítótár kiürítéséhez be kell írnia a következő parancsot.

    sudo systemd-resolve --flush-caches

    Ha sikeres, a parancs nem ad vissza üzenetet.

    DNSmasq

    A Dnsmasq egy könnyű DHCP- és DNS-név-gyorsítótár-kiszolgáló.

    Ha a rendszer a DNSMasq-ot használja gyorsítótár-kiszolgálóként, a DNS-gyorsítótár törléséhez újra kell indítania a Dnsmasq szolgáltatást:

    A sudo systemctl indítsa újra a dnsmasq.service-t

    sudo service dnsmasq újraindítás

    nscd

    Az Nscd egy gyorsítótárazó démon, és ez a preferált DNS-gyorsítótárazási rendszer a legtöbb RedHat alapú disztribúció számára.

    Ha a rendszer Nscd-t használ, újra kell indítania az Nscd szolgáltatást a DNS-gyorsítótár törléséhez:

    sudo systemctl indítsa újra az nscd.service fájlt

    sudo service nscd újraindítás

    A DNS-gyorsítótár törlése/eltávolítása MacOS rendszeren

    A MacOS gyorsítótárának törlésére szolgáló parancs kissé eltér a használt verziótól függően. A parancsot rendszergazdai jogosultságokkal rendelkező felhasználóként (sudo user) kell futtatni.

    A DNS-gyorsítótár törléséhez MacOS rendszeren kövesse az alábbi lépéseket:

    1. Nyissa meg a Findert.
    2. Nyissa meg az Alkalmazások > Segédprogramok > Terminál menüpontot. Ezzel megnyílik egy terminál ablak.
    3. A parancssorba írja be a következő sort, és nyomja meg az Enter billentyűt:

      sudo killall -HUP mDNSResponder

      Írja be a sudo jelszavát, és nyomja meg ismét az Enter billentyűt. Siker esetén a rendszer nem ad vissza semmilyen üzenetet.

    A MacOS korábbi verzióiban a gyorsítótár törlésére vonatkozó parancs eltérő.

    MacOS 10.11 és 10.9 verziók

    sudo dscacheutil -flushcache sudo killall -HUP mDNSResponder

    macOS 10.10 verzió

    sudo discoveryutil mdnsflushcache sudo discoveryutil udnsflushcaches

    MacOS 10.6 és 10.5 verziók

    sudo dscacheutil -flushcache

    Törölje/eltávolítsa a böngésző DNS-gyorsítótárát

    A legtöbb modern webböngésző rendelkezik beépített DNS-klienssel, amely megakadályozza a megkettőzött kéréseket minden alkalommal, amikor meglátogat egy webhelyet.

    Google Chrome

    A Google Chrome DNS-gyorsítótárának törléséhez kövesse az alábbi lépéseket:

    1. Nyisson meg egy új lapot, és írja be a Chrome címsorába: chrome://net-internals/#dns.
    2. Kattintson a Gazdagép gyorsítótárának törlése gombra.

    Ha ez nem működik az Ön számára, próbálja meg törölni a gyorsítótárat és a cookie-kat.

    1. Nyomja le a CTRL+Shift+Del billentyűkombinációt a Böngészési adatok törlése párbeszédpanel megnyitásához.
    2. Válasszon egy időtartományt. Minden törléséhez válassza a „Mindig” lehetőséget.
    3. Jelölje be a "Cookie-k és egyéb webhelyadatok" és a "Gyorsítótárazott képek és fájlok" négyzetet.
    4. Kattintson az Adatok törlése gombra.

    Ennek a módszernek minden Chrome alapú böngészőben működnie kell, beleértve a Chromiumot, a Vivaldit és az Operát.

    firefox

    A Firefox DNS-gyorsítótárának törléséhez kövesse az alábbi lépéseket:

    1. A jobb felső sarokban kattintson a hamburger ikonra ☰ a Firefox menü megnyitásához:
    2. Kattintson a ⚙ Beállítások (Beállítások) hivatkozásra.
    3. Kattintson a bal oldalon az "Adatvédelem és biztonság" vagy az "Adatvédelem" fülre.
    4. Görgessen le az Előzmények részhez, és kattintson az Előzmények törlése… gombra.
    5. Válasszon egy időtartományt a törléshez. Az összes eltávolításához válassza az „Összes” lehetőséget.
    6. Jelölje ki az összes mezőt, és kattintson a Törlés most gombra.

    Ha ez nem működik az Ön számára, próbálkozzon a következő módszerrel, és ideiglenesen tiltsa le a DNS-gyorsítótárat.

    1. Nyisson meg egy új lapot, és írja be az about:config parancsot a Firefox címsorába.
    2. Keresse meg a network.dnsCacheExpiration fájlt, ideiglenesen állítsa az értéket 0-ra, majd kattintson az OK gombra. Ezt követően módosítsa az alapértelmezett értéket, és kattintson az OK gombra.
    3. Keresse meg a network.dnsCacheEntries fájlt, ideiglenesen állítsa az értéket 0-ra, majd kattintson az OK gombra. Ezt követően módosítsa az alapértelmezett értéket, és kattintson az OK gombra.

    Következtetés

    Megtanulta, hogyan kell törölni vagy törölni a DNS-gyorsítótárat Windows, Linux és MacOS operációs rendszereken.

    A Linux és a MacOS használhatja a dig parancsot a DNS lekérdezésére és a DNS-problémák elhárítására.

    Ha bármilyen kérdése vagy visszajelzése van, nyugodtan írjon megjegyzést.

A modern internet működését biztosító egyik fontos szolgáltatás a webhelynév ip-címmé konvertálására szolgáló szolgáltatás. Ebben a cikkben a DNS-szolgáltatás megvalósításának beállításával foglalkozunk a Bind 9 (névvel) beállításának példáján keresztül CentOS 7-et futtató kiszolgálón. Elkészítjük a minimálisan szükséges alapvető funkciókat, és egy kicsit mélyebben megvizsgáljuk a naplózási beállításokat. .

Ha szeretné megtanulni, hogyan kell dolgozni a Mikrotik útválasztókkal, és szakemberré válni ezen a területen, azt javaslom, hogy használjon egy olyan programot, amely a hivatalos tanfolyamon található információkon alapul. A tanfolyam megéri, minden részletért olvassa el a linket. Vannak ingyenes tanfolyamok.

Bind- a DNS-szerver manapság legelterjedtebb megvalósítása, amely biztosítja az IP-címek dns-nevekre történő fordítását és fordítva. Named-nek is nevezik, például a Freebsd-ben. A Wikipédia információi alapján jelenleg 13 internetes gyökér DNS-kiszolgálóból 10 kötésen fut. Szinte mindegyikbe a dobozból kerül beszerelésre linux disztribúciók. Megfontolom, hogy CentOS 7 szerverre telepítem.

A Bind 9 (névvel) telepítése CentOS 7 rendszeren

Először is nézzük meg, hogy van-e dns szerver telepítve a rendszerben:

# rpm -qa bind* bind-libs-lite-9.9.4-14.el7.x86_64 bind-license-9.9.4-14.el7.noarch

Nem telepítettem, mert akkoriban a minimális szoftvercsomagot választottam. A névszerver chroot környezetben fog működni, ezért telepítsük a megfelelő csomagokat:

# yum - y install bind bind - utils bind - chroot

Még egyszer felhívom a figyelmet, hogy bind in-t fogunk használni chroot környezet a biztonság növelése érdekében. Ez bizonyos funkciókat ír elő a szerver beállításában és kezelésében. Vigyáznod kell ezekre az apróságokra. Tehát futtassuk a kötést:

# systemctl start nevű-chroot# systemctl enable nevű-chroot ln -s "/usr/lib/systemd/system/named-chroot.service" "/etc/systemd/system/multi-user.target.wants/named-chroot.service"

A chroot könyvtár tartalmának ellenőrzése:

# ls -l /var/named/chroot/etc

Minden rendben, a szerver elindult, a szükséges fájlok létrejöttek, minden készen áll a konfigurációra. Vigyázzunk rá.

DNS-kiszolgáló beállítása a CentOS 7 rendszerben

Szerver konfigurációs fájlunk a címen található /var/named/chroot/etc/named.conf. Nyisd ki és nézd ki így:

# mcedit /var/named/chroot/etc/named.conf opciók ( 53-as figyelési port (bármely; ); listen-on-v6 53-as portja (nincs; ); "/var/named" könyvtár; dump-file " /var/named/data/cache_dump.db"; allow-query ( 127.0.0.1; 192.168.7.0/24; ); rekurzió igen; engedélyezés-rekurzió ( 127.0.0.1; 192.168.7.0/24; .8 továbbító .8.8; ); "DNS-kiszolgáló" verzió; "/var/named/dynamic" menedzselt kulcsok könyvtára; pid-fájl "/run/named/named.pid"; session-keyfile "/run/named/session. kulcs"; dnssec-enable no; dnssec-validation no; ); zóna "." IN ( írja be a hint; fájl "named.ca"; ); include "/etc/named.rfc1912.zones"; include "/etc/named.root.key"; naplózás ( csatorna alapértelmezett_fájlja ( fájl "/var/log/named/default.log" 3. verzió mérete 5 m; súlyosság dinamikus; nyomtatási idő igen; ); kategória alapértelmezett ( default_file; ); );

Ez a konfiguráció normál gyorsítótár-kiszolgálót biztosít a helyi hálózaton. Megjegyzések néhány paraméterhez:

Ne felejtse el szerkeszteni a tűzfalszabályokat a DNS-kiszolgáló megfelelő működéséhez - nyissa meg az 53-as UDP-portot az általunk most konfigurált gyorsítótár-kiszolgálóhoz, és az 53-as TCP-portot a zónatovábbításhoz, amelyről később lesz szó.

Most hozzunk létre egy mappát a naplók számára. Ne feledje, hogy chroot környezetben dolgozunk:

# cd /var/named/chroot/var/log && mkdir nevű && chown named. nevezett

Saját zóna támogatás

Tegyük fel, hogy el kell helyeznünk a saját site1.ru zónánkat a named-ben. Először is létrehozunk egy zónafájlt, amelyet a DNS-kiszolgáló ki fog szolgálni:

# mcedit /var/named/chroot/var/named/site1.ru.zone $TTL 86400 @ IN SOA site1.ru. site1.ru.local. (2015092502 43200 3600 3600000 2592000) IN NS ns1.site1.ru. IN NS ns2.site1.ru. IN A 192.168.7.254 IN MX 10 mx.site1.ru. kapu IN A 192.168.7.254 mx IN A 192.168.7.250 ns1 IN A 192.168.7.235 ns2 IN A 192.168.7.231

A zónafájlok szintaxisának leírása elég jól le van fedve az interneten, nem akarok ezen részletezni. Igény esetén mindenki saját szemével meggyőződhet arról, hogy a saját zónájához kell-e támogatást beállítania.

Beállítjuk a szükséges jogokat:

# chown root:named /var/named/chroot/var/named/site1.ru.zone # chmod 0640 /var/named/chroot/var/named/site1.ru.zone

"site1.ru" zóna (típus master; fájl "site1.ru.zone"; );

A megnevezett konfiguráció újraolvasása a következővel: rndc:

# rndc reconfig

Hozzáadás a bind slave zónához

Ha egy másik DNS-kiszolgálóról vett zóna másolatát szeretné megtartani a szerverén, adja hozzá a következő beállításokat a konfigurációhoz.

Zóna "site.ru" IN ( típusa slave; masters ( 10.1.3.4; ); fájl "site.ru.zone"; );

10.1.3.4 - annak a dns-kiszolgálónak az IP-címe, amelyről a zónát vesszük. Ne felejtse el engedélyezni rajta a zónaátvitelt a DNS-kiszolgálóra.

Írási engedélyt kell hozzáadnia a megnevezett csoporthoz, hogy így legyen:

Ezt követően újraindíthatja a bind-et, és ellenőrizheti, hogy létrejött-e a slave zónafájl. A fenti beállításokkal a következő helyen található: /var/named/chroot/var/named/site.ru.zone. Ha a bindnek nincs engedélye a fájl létrehozására, hibaüzenet jelenik meg a naplóban:

Főfájl kiíratása: tmp-7Swr6EZpcd: nyitott: engedély megtagadva

Sokkal érdekesebb és hasznosabb a szerver működésének részletes naplózásával foglalkozni. Sokáig felületesen markoltam az interneten mindenféle ajánlást és hozzávetőleges konfig darabot, mígnem úgy döntöttem, hogy magam foglalkozom ezzel a témával, és belekerültem az eredeti kézikönyvbe.

A Bind bőséges lehetőséget kínál a naplózásra. Szinte mindent megjavíthat, ami a szerver működésével kapcsolatos. Most egyszerű példákon mutatom be, hogyan működik.

Mindenekelőtt a konfigurációban beállítjuk azt a csatornát, ahová bizonyos események naplói felkerülnek. Íme egy példa egy ilyen csatornára:

Csatorna általános ("/var/log/named/general.log" fájl 3-as verziója, mérete 5 m; súlyosság dinamikus; nyomtatási idő igen;

Itt van a csatorna neve, amelyet magunk találtunk ki - általános, a fájl elérési útja meg van adva, állítólag a napló 3 verzióját tároljuk, legfeljebb 5 megabájt méretben. Paraméter súlyossága a következő értékeket veheti fel:

Paraméter nyomtatási idő azt jelzi, hogy az esemény időpontját naplózni kell. Az általam megadott beállításokon kívül a következő paraméterek adhatók hozzá a csatornakonfigurációhoz:

  • nyomtatási súlyosság igen | nem – megadja, hogy a súlyossági paramétert be kell-e írni a naplóba
  • nyomtatási kategória igen | nem - azt jelzi, hogy a naplók kategóriájának nevét meg kell-e írni vagy sem

Ezeket a paramétereket nem adtam meg, mivel az alapértelmezett érték van beállítva nem ami nekem személy szerint megfelel.

Általános kategória ( általános; );

A kötésben lévő naplókategóriák leírása (megnevezett)
alapértelmezettA táblázatban szereplő összes kategória eseményei ide tartoznak, ha nincsenek külön definiálva, kivéve a lekérdezések kategóriát, amelyet külön kell szerepeltetni. Vagyis ha csak az alapértelmezett kategóriát jelöli ki, akkor az összes kategória eseményei belekerülnek.
TábornokEz a kategória minden olyan naplóra vonatkozik, amely nem szerepel a felsorolt ​​kategóriák egyikében sem.
adatbázisA zóna tárolásával és gyorsítótárazásával kapcsolatos üzenetek.
BiztonságA kérések megerősítése és elutasítása.
configMinden, ami a konfigurációs fájl olvasásával és végrehajtásával kapcsolatos.
megoldóNévfeloldás, beleértve a gyorsítótár-kiszolgáló által az ügyfél nevében végzett rekurzív lekérdezésekre vonatkozó információkat.
xfer-inInformációk a zónák megszerzéséről.
xfer-outZóna átviteli információk.
értesítseA NOTIFY protokoll műveleteinek naplózása.
ügyfélÜgyfél kérések teljesítése.
páratlanA megnevezett üzeneteket nem lehetett osztályhoz rendelni, vagy amelyekhez nincs leképezés meghatározva.
hálózatHálózati műveletek naplózása.
frissítésDinamikus frissítések.
frissítse a biztonságotFrissítési kérelmek jóváhagyása vagy elutasítása.
lekérdezésekKérések naplózása a DNS-kiszolgálóhoz. A kategória engedélyezéséhez külön be kell állítania a beállítást a szerver konfigurációjában. Ez annak a ténynek köszönhető, hogy ez a kategória sok bejegyzést generál a naplófájlban, ami befolyásolhatja a szerver teljesítményét.
lekérdezési hibákSzerver kérési hibák.
ElküldésA bejövő csomagok átirányítása a szerver modulokhoz feldolgozás céljából.
dnssecA DNSSEC és TSIG protokollok működése.
béna szerverekKijavítja azokat a hibákat, amelyek a kötési lekérdezéseket kapják, amikor távoli kiszolgálókhoz érve egy névkérést próbálnak megoldani.
csak delegációA NXDOMAIN domaint visszaadó kérések naplózása.
edns-le van tiltvaOlyan kérések, amelyek sima DNS használatára kényszerülnek időtúllépés miatt.
RPZA Response Policy Zone (RPZ) végrehajtásához kapcsolódó összes művelet.
mértékhatárAz opciókban vagy nézetekben egy vagy több sebességkorlát-utasításhoz társított műveletek.

Így a naplók összes kategóriájának külön fájlokban való megjelenítéséhez hozzá kell adnia a következő konstrukciót a megnevezett konfigurációhoz:

Naplózás ( csatorna alapértelmezett ("/var/log/named/default.log" fájl verziók 3 méret 5m; súlyosság dinamikus; nyomtatási idő igen; ); csatorna általános ("/var/log/named/general.log" fájl verziói 3 méret 5 m; súlyosság dinamikus; nyomtatási idő igen; ); csatorna adatbázis ("/var/log/named/database.log" fájl verziók 3 méret 5 m; súlyosság dinamikus; nyomtatási idő igen; ); csatornabiztonság ( fájl " /var/log/named/security.log" 3-as verzió, 5 méteres méret; súlyosság dinamikus; nyomtatási idő igen; ); csatornakonfiguráció ("/var/log/named/config.log" fájl, 3. verzió, mérete 5 m; súlyosság dinamikus; nyomtatási idő igen; ); csatornafeloldó ("/var/log/named/resolver.log" 3-as verzió, 5 m-es; súlyosság dinamikus; nyomtatási idő igen; ); csatorna xfer-in ("/var/log/" fájl named/xfer-in.log" verziók 3 méret 5 m; súlyosság dinamikus; nyomtatási idő igen; ); csatorna xfer-out ( fájl "/var/log/named/xfer-out.log" verzió 3, méret 5 m; súlyosság dinamikus ; nyomtatási idő igen; ); csatorna értesítése ("/var/log/named/notify.log" fájl 3-as verzió, mérete 5 m; súlyosság dinamikus; nyomtatási idő igen; ); chann el kliens ( fájl "/var/log/named/client.log" verziók 3 méret 5m; súlyosság dinamikus; nyomtatási idő igen; ); csatorna páratlan ("/var/log/named/unmatched.log" fájl 3-as verzió, mérete 5 m; súlyosság dinamikus; nyomtatási idő igen; ); csatornahálózat ("/var/log/named/network.log" fájl 3-as verzió, mérete 5 m; súlyosság dinamikus; nyomtatási idő igen; ); csatornafrissítés ("/var/log/named/update.log" fájl 3-as verzió, mérete 5 m; súlyosság dinamikus; nyomtatási idő igen; ); csatorna update-security ("/var/log/named/update-security.log" fájl 3-as verzió, mérete 5 m; súlyosság dinamikus; nyomtatási idő igen; ); csatornalekérdezések ("/var/log/named/queries.log" fájl 3-as verzió, mérete 5 m; súlyosság dinamikus; nyomtatási idő igen; ); csatorna query-errors ("/var/log/named/query-errors.log" fájl 3-as verzió, mérete 5 m; súlyosság dinamikus; nyomtatási idő igen; ); csatorna küldés ("/var/log/named/dispatch.log" fájl 3-as verzió, mérete 5 m; súlyosság dinamikus; nyomtatási idő igen; ); csatorna dnssec ("/var/log/named/dnssec.log" fájl 3-as verzió, mérete 5 m; súlyosság dinamikus; nyomtatási idő igen; ); csatorna lame-servers ("/var/log/named/lame-servers.log" 3-as verzió, 5 m; súlyosság dinamikus; nyomtatási idő igen; ); csak a csatorna delegálása ("/var/log/named/delegation-only.log" 3-as verzió, 5 m; súlyosság dinamikus; nyomtatási idő igen; ); csatorna edns-disabled ("/var/log/named/edns-disabled.log" fájl 3-as verzió, mérete 5 m; súlyosság dinamikus; nyomtatási idő igen; ); csatorna rpz ("/var/log/named/rpz.log" fájl 3-as verzió, mérete 5 m; súlyosság dinamikus; nyomtatási idő igen; ); csatorna rate-limit ("/var/log/named/rate-limit.log" fájl 3-as verzió, mérete 5 m; súlyosság dinamikus; nyomtatási idő igen; ); kategória alapértelmezett ( alapértelmezett; ); kategória általános ( általános; ); kategóriaadatbázis(adatbázis;); kategória biztosíték ( biztonság; ); kategória konfig ( config; ); kategóriafeloldó (feloldó; ); kategória xfer-in( xfer-in;); kategória xfer-out ( xfer-out; ); kategória notify( notify; ); kategória kliens ( ügyfél; ); kategória páratlan ( unmatched; ); kategória hálózat ( hálózat; ); kategória frissítés ( frissítés; ); kategória frissítés-biztonság ( update-security; ); kategória lekérdezések ( queries; ); kategória query-errors ( query-errors; ); kategória feladás ( diszpécser; ); kategória dnssec ( dnssec; ); kategória lame-servers ( lame-servers; ); kategória csak delegálás ( delegation-only; ); kategória edns-disabled ( edns-disabled; ); kategória rpz ( rpz; ); kategória rate-limit ( rate-limit; ); );

Ha egy kategória összes kérési naplóját össze akarjuk gyűjteni lekérdezések, akkor hozzá kell adnia egy paramétert a konfigurációs fájl opciók részéhez, amely lehetővé teszi ezt:

Querylog igen;

Indítsa újra a kötést:

# systemctl indítsa újra a named-chroot.service

A DNS-kiszolgáló ellenőrzése

Először is menjünk a naplókat tartalmazó könyvtárba, és nézzük meg, mi van ott:

# cd /var/named/chroot/var/log/named # ls -l

Az összes naplófájl létrejön, és elkezdődik a feltöltése. Az egyiket ellenőrizheti. Például nézzük meg, hogyan a miénk centos szerver(192.168.7.246) naplózza a felhasználói kéréseket. Próbáljuk meg végrehajtani az nslookup yandex.ru fájlt a 192.168.7.254 számítógépről (windows), és nézzük meg, hogyan jelenik meg a naplófájlban:

2015. szeptember 26. 19:25:30.923 kliens 192.168.7.254#56374 (yandex.ru): 56375 (yandex.ru): lekérdezés: yandex.ru IN AAAA + (192.168.7.246)

Most pingáljuk meg a site1.ru fájlt, hogy ellenőrizzük, hogyan támogatja a szerver a zónánkat:

Lássuk, mi van a naplókban:

26-Sep-2015 19:28:01.660 kliens 192.168.7.254#49816 (site1.ru): lekérdezés: site1.ru IN A + (192.168.7.246)

Így nagyon kényelmes nyomon követni, hová mászik a számítógép. Például ideiglenesen felemelheti a dns-kiszolgálót, bekapcsolhatja a lekérdezési naplót. A kliensben adja meg az egyetlen dns-kiszolgálót, amelyet konfiguráltunk. Ezután nyomon követheti például, hogy tudtunk nélkül hova mászik fel a Windows betöltés után. Vagy honnan töltik be a hirdetéseket a Skype-ban. Minden kérés szépen hozzáadódik egy fájlhoz, amely ezután könnyen elemezhető, majd például .

Ennyit szerettem volna elmondani ebben az anyagban. A bind (named) beállításának témája meglehetősen kiterjedt. Talán még visszatérek rá.

Online tanfolyamok a Mikrotikról

Ha szeretné megtanulni, hogyan kell dolgozni Mikrotik routerekkel, és szakemberré válni ezen a területen, azt javaslom, hogy vegyen részt tanfolyamokon a hivatalos tanfolyam információi alapján. MikroTik minősített hálózati munkatárs. A tanfolyamok között a hivatalos programon túl laboratóriumi munka is szerepel majd, melynek során a gyakorlatban is tesztelheti és megszilárdíthatja tudását. Minden részlet az oldalon. A képzés költsége nagyon demokratikus, jó lehetőség új ismeretek megszerzésére a ma aktuális tárgykörben. A tanfolyam jellemzői:
  • Gyakorlatorientált tudás;
  • Valós helyzetek és feladatok;
  • A legjobb nemzetközi programok.

A webböngészés felgyorsítása érdekében az operatív Windows rendszer gyorsítótárazza a DNS-kiszolgáló válaszait. Közvetlenül azután, hogy a DNS-kiszolgálótól megérkezik a válasz egy numerikus érték meghatározására, a Windows automatikusan elhelyezi ezt a címet a helyi tárhelyen. Amikor egy böngésző címet kér egy URL-ről, a Windows először megkeresi az áruházban, és ha megtalálja, azonnal visszaadja az eredményt anélkül, hogy az internetszolgáltató DNS-kiszolgálóira menne. A helyi gyorsítótár növeli a sebességet és megtakarítja a forgalmat.

A helyi DNS-gyorsítótár törlése

Ha az információ megsérül vagy az IP-cím megváltozik a cím helyi tárhelyen való tárolása közben, a böngésző nem tudja megnyitni az oldalt. Ez nem túl gyakran fordul elő. Szerencsére van mód a helyi gyorsítótár törlésére a probléma azonnali megoldása érdekében.

A Windowsnak van egy eszköze ipconfig, amelyen lehetőség van /flushdns az összes gyorsítótárazott bejegyzés törléséhez. Ha törölni szeretné a helyi gyorsítótárat, akkor a parancssori ablakban ( RajtProgramok(Minden program) - AlapértelmezettParancs sor) írja be a parancsot ipconfig /flushdnsés nyomja meg az Enter billentyűt.

A helyi tárhely összes DNS-rekordjának megtekintéséhez használja ezt a lehetőséget /displaydns csapatok ipconfig. Ehhez a parancssori ablakban írja be a parancsot ipconfig / displaydnsés nyomja meg az Enter billentyűt. A gyorsítótárazott DNS-válaszok összes rekordja megjelenik az ablakban.

A gyorsítótár idejének beállítása

A Windows általában legfeljebb 86 400 másodpercig (1 napig) tárolja a címeket, de korlátozhatja a tárolási időt egy másik korlátra. Ehhez nyissa meg a beállításjegyzék-szerkesztőt (a parancssorba írja be a regedit parancsot, és nyomja meg az Enter billentyűt). A szerkesztő bal oldalán található a rendszerleíró kulcsok fája, amely mappáknak néz ki merevlemez. Ebben a fában a megfelelő mappabővítési ikonokra (pluszjel) kattintva megnyílik az elérési út HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\DNSCache\Parameters, majd állítsa a kurzort a mappára ebben a fában Paraméterek. A kulcs (mappa) tartalma megjelenik a rendszerleíróadatbázis-szerkesztő jobb oldalán.

A paraméter DWORD értéke MaxCacheTtl Meghatározza a válaszok tárolásának időkorlátját másodpercben. Bármi másra módosítható. Ha paraméter MaxCacheTtl nem, ez azt jelenti, hogy a normál korlát 86400 másodpercre van beállítva. A módosításhoz hozzon létre egy paramétert MaxCacheTtl DWORD típusú, amelynek értéke megegyezik a szükséges határértékkel. Paraméter MaxCacheTtl csak a pozitív válaszok tárolási idejét korlátozza, vagyis amikor a domain név alapján meg lehetett határozni az ip-címet.

Ha a szolgáltató DNS-kiszolgálója negatív választ adott (nem tudta meghatározni a címet), az szintén a helyi tárhelyen kerül tárolásra. Az ilyen válaszokat általában 15 percig tárolják. Ez azt jelenti, hogy ha az oldal látogatása során nem lehetett meghatározni annak ip-címét, akkor az oldal 15 percen belül nem látogatható, még akkor sem, ha ez idő alatt elérhetővé válik. Ennek elkerülése érdekében csökkentse a nemleges válaszok tárolási idejét, vagy teljesen tiltsa le a tárolást. A megőrzési idő beállításához módosítania kell (vagy létre kell hoznia, ha hiányzik) a DWORD paramétert MaxNegativeCacheTtl, amely korlátozza a negatív válaszok tárolásának időkorlátját. A tárolásuk letiltásához elegendő a tárolási időt nullára állítani.

Ideiglenesen tiltsa le a DNS-válasz gyorsítótárazását

Ha ideiglenesen le szeretné tiltani a cím-gyorsítótárat a helyi tárolóban, akkor a parancsot be kell írnia a parancssorba net stop dnscache(vagy sc stop dnscache) és nyomja meg az Enter billentyűt. A visszakapcsoláshoz írja be a parancsot a parancssorba net start dnscache(vagy scRajt dnscache), és nyomja meg az Enter billentyűt, vagy indítsa újra a számítógépet.