Vyrábame vlastné lokálne DNS (PDNSD), s blackjackom a rýchlejšie ako verejné DNS od Googlu. Konfigurácia servera Caching DNS (BIND) pre kurzy zamestnania v lokálnej sieti Cisco a Linux

Priradenie DNS je preklad doménových mien, ktoré si ľudia ľahko zapamätajú, na adresy IP, ktorým počítače rozumejú, proces nazývaný preklad názvov. Aké budú výhody inštalácie vlastného servera DNS do vyrovnávacej pamäte? To trochu urýchli odozvu stránok + Linux veľmi nerozumie názvom NetBios a niekedy musíte vnútri nájsť počítače alebo tlačiarne lokálna sieť, ale chcem to urobiť podľa mena.

Zapamätanie si adries IP nie je pohodlné, ale neustále stúpanie do denníka servera DHCP tiež nie je našou metódou. V takýchto prípadoch je v lokálnej sieti potrebný server DNS. Inštalácia samotného balíka bind9 nie je náročná, medzery zvyčajne vznikajú vo fáze jeho konfigurácie, pretože po ľahko čitateľných konfiguračných súboroch systému padá na osobu mimochodom nezrozumiteľná syntax, veľmi podobná programovaciemu jazyku S. server bude fungovať vo vnútri lokálnej siete, potom nemá zmysel prenášať ho do prostredia chroot a celé nastavenie trvá veľmi málo času. V tejto lyrickej časti môžete dokončiť a pokračovať v inštalácii a konfigurácii.

Nainštalujte server DNS Bind9:

# apt - get install bind9

Po dokončení, stiahnutí a inštalácii musíme upraviť jeho konfiguračný súbor:

# vim / etc / bind / named. conf. možnosti

Sekciu nachádzame, je na úplnom začiatku konfiguračný súbor okrem nej neexistuje nič iné ...

možnosti (adresár " / var / cache / bind"; // Ak je medzi vami a požadovanými servermi firewall brána firewall// Ak sa chcete rozprávať, možno budete musieť opraviť bránu firewall, aby bolo možné používať viacero// porty na rozhovor. Pozri http://www.kb.cert.org/vuls/id/800113// Ak váš ISP poskytol jednu alebo viac adries IP pre stabilitu// nameservery, pravdepodobne ich budete chcieť použiť ako preposielače.// Odkomentujte nasledujúci blok a vložte adresy, ktoré nahrádzajú// zástupný symbol všetkých 0 ". // forwardery (// 0.0.0.0; //); auth - nxdomain no; # v súlade s RFC1035 listen - on - v6 (any;););

Sekcia odosielateľov je zodpovedná za to, kam bude odoslaná požiadavka DNS na rozlíšenie názvov, ak sa nenachádza vo svojej vlastnej databáze. V poslednej dobe nie som vôbec šťastný, práca týchto serverov u poskytovateľa, preto sa môžete pripojiť k serverom tretích strán, napríklad k serverom Google, zapamätanie si adresy IP je veľmi jednoduché 8.8.8.8, pomocou jeho príkladu budem nastavenie, ale nikto sa neobťažuje používať tie, ktoré sa vám páčia viac.

Sekciu upravujeme, najskôr z nej musíte odstrániť komentáre a pridať DNS tretích strán, ak je potrebné pridať niekoľko serverov, napríklad v prípade, že server Google nemôže vydržať vaše požiadavky a prestávky :), potom IP iných serverov je možné zapísať do stĺpca, potom môžete dosiahnuť výraznejšiu odolnosť voči chybám.

dopravcovia (8.8.8.8; 193.58.251.251; // Ruská služba DNS -SkyDNS};

V tejto časti je lepšie zadať adresu IP servera, ktorý ste uviedli v súbore /etc/resolv.conf alebo napíšte tam do sekcie nameserver túto IP. Uložíme zmeny a skončíme. Reštartujeme server a skontrolujeme. Píšeme príkazový riadok nslookup mail.ru
Mal by vydať:

Neoverená odpoveď: Meno: mail. ru Adresy: 94.100.191.202

To naznačuje, že náš server nie je hlavným serverom obsluhujúcim túto zónu (mail.ru), ale pridal požiadavky do vyrovnávacej pamäte!
Teraz musíme pre našu sieť vytvoriť zónu DNS, aby stroje mohli nájsť rôzne sieťové služby - napríklad napríklad sieťové tlačiarne, môžu byť nezávislé a zdieľané na iných pracovných staniciach.
Našu zónu je možné nazvať orgname - to znamená. Názov organizácie.
Najprv vytvoríme zónu, ktorú budeme upravovať named.conf.local

# vim / etc / bind / named. conf. miestny

a pridajte k tomu nasledujúce:

zóna "orgname" (napíšte master; súbor "/etc/bind/db.orgname";);

Uložiť a ukončiť
Teraz musíme vytvoriť konfiguračný súbor zóny

# vim / etc / bind / db. orgname

a vložte do nej nasledujúce položky:
(Dávajte pozor na syntax konfiguračného súboru, dokonca aj na bodkách záleží)

@ IN SOA orgname. koreň. orgname. (20101015 4h; čas aktualizácie - 4 hodiny 1h; opakujte každú hodinu 1w; ako dlho ukladať informácie - 1 týždeň 1d); TTL (doba života) záznamu je 1 deň pri mene organizácie IN NS. ; názov servera názvov @ IN A 192.168.10.1; A - záznam - adresa IP nášho servera DNS, ktorý slúži tejto zóne, @ znamená, že ide o koreňovú zónu. * V CNAME @ tlačiarni IN A 192.168.10.25; Môžete vytvoriť záznam DNS pre sieťovú tlačiareň, ktorá sa nachádza na adrese 192.168.10.25

Teraz pri pridávaní nového sieťové zariadenie, musíte urobiť 2 veci:
1) Zarezervujte si IP adresu na serveri DHCP, ako to urobiť, si môžete prečítať v článku - Konfigurácia servera DHCP
2) Vytvorte pre túto IP zónu DNS, napríklad názov zariadenia V XXX.XXX.XXX.XXX. Kde: devicename je sieťový názov zariadenia; XXX.XXX.XXX.XXX je jeho IP adresa, ktorá je rezervovaná na serveri DHCP.

teraz musíme upraviť súbor resolv.conf

# vim / etc / resolv. conf

a napíš tam:

nameserver 127.0.0.1

všetko, čo tam bolo, je možné komentovať zadaním #
server sa reštartuje

# reštartovať

To sa robí tak, že server hľadá všetko vo svojej vlastnej databáze a až potom BIND presmeruje požiadavky na server 8.8.8.8, ktorého IP je zapísaná v smernici dopravcovia.
Teraz môžete skontrolovať výkon:
Ak sa testovanie vykonáva v systéme Windows:

meno zariadenia ping. orgname

Ak testujeme v systéme Linux:

meno zariadenia ping. orgname - c 4

Pingy by mali ísť na adresu IP, ktorú ste zadali, namiesto XXX.XXX.XXX.XXX

Rýchlosť spracovania požiadaviek môžete tiež skontrolovať pomocou príkazu kopať

# dig @ 127.0.0.1 tut.by;<<>> DiG 9.9.5-9 + deb8u6-Debian<<>> @ 127.0.0.1 tut.by; (Našiel sa 1 server) ;; globálne možnosti: + cmd ;; Dostal odpoveď: ;; - >> HLAVICE<<- 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

Rýchlosť internetu - posledná míľa aj chrbticové kanály - sa každým rokom zvyšuje. Jediná vec je nemenná - latencia už naráža na fyzické obmedzenia: rýchlosť svetla v optickom vlákne je asi 200 tisíc kilometrov za sekundu, a preto pri rýchlosti viac ako ~ 150 ms nebude odpoveď servera cez Atlantický oceán prijaté v dohľadnej budúcnosti (aj keď samozrejme existujú potešenia, ako napríklad vlákno so vzduchovým jadrom alebo rádiová reléová komunikácia, ale to je len ťažko dostupné pre bežných smrteľníkov).

Keď sa napríklad z Ruska pokúsime otvoriť webovú stránku umiestnenú v USA (servery NS sú pravdepodobne na rovnakom mieste) a doména sa nenašla v medzipamäte DNS vášho poskytovateľa, budeme musieť počkať dlhý čas dokonca aj na gigabitovom internete, možno dokonca celú sekundu: kým sme za oceánom, dostaneme názvy serverov NS domény, zatiaľ čo znížime ich IP, zatiaľ čo budeme odosielať a prijímať samotnú samotnú požiadavku DNS ...

Pred niekoľkými rokmi spoločnosť Google spustila svoje vlastné verejné servery DNS a aby urýchlila prechod na ne, vyvinula nástroj NameBench, ktorý spúšťa testy DNS vo vašej histórii surfovania a ukazuje, o koľko je služba Google DNS rýchlejšia ako server DNS vášho poskytovateľa internetových služieb.

Podarilo sa mi však vytvoriť vlastný server DNS, ktorý funguje rýchlejšie ako verejný server Google DNS, a v tejto krátkej poznámke sa chcem podeliť o výsledky.

PDNSD

pdnsd- ukladanie servera proxy do vyrovnávacej pamäte. Okrem banálneho ukladania požiadaviek DNS do pamäte cache (so schopnosťou prísne nastaviť minimálny TTL - môže to byť nevyhnutné na veľmi zlom internete) je schopný odoslať požiadavku súčasne na niekoľko „rodičovských“ serverov DNS a poskytnúť klientovi sa vrátila prvá odpoveď.

Práve zahrnutie paralelného hlasovania nám dáva hlavnú výhodu v rýchlosti. od keď je výsledok nájdený vo vyrovnávacej pamäti ktoréhokoľvek z poskytovateľov, dostaneme výsledok veľmi rýchlo a neočakávame úplné a pomalé rozlíšenie, ak prvý poskytovateľ nemá vo vyrovnávacej pamäti odpoveď.

Je nainštalovaný v Ubuntu - banálny apt -get.

Niekoľko bodov v konfigurácii

global (perm_cache = 10240; // Maximálna veľkosť vyrovnávacej pamäte v kilobajtoch. // Štandardne to bolo 1024, všetky záznamy mi neprekážali. cache_dir = " / var / cache / pdnsd"; [...] min_ttl = 60m; // Minimálny čas na uloženie záznamu do vyrovnávacej pamäte. // Aj keď TTL príde menej ako 60 minút, bude to 60 minút max_ttl = 1w; // Maximálny čas na uloženie záznamu do vyrovnávacej pamäte neg_ttl = 5m; // Čas na uloženie negatívnych odpovedí do vyrovnávacej pamäte (tj. Ak sa doména nenájde) [..] par_queries = 3; // Počet súčasne dotazovaných „rodičovských“ serverov DNS) (label = „main“; ip = 85.21.192.5 // Existujú 4 servery, ak prvé tri neodpovedajú, žiadosť bude odoslaná na 4. server, 213.234.192.7 // Prvé 2 servery sú serverom vášho poskytovateľa a niektoré susedné servery 8.8.4.4 / / Toto je Google Public DNS - do vyrovnávacej pamäte uložili všetko, čo je vzácne, a rýchlo sa vyriešia, 8.8.8.8; [..])

Ukladanie do vyrovnávacej pamäte môže byť v zásade menej agresívne (napríklad min_ttl = 1 m), ale počas roku práce sa nevyskytli žiadne špeciálne problémy. V prípade problémov - ak si želáte, môžete vymazať jeden záznam z vyrovnávacej pamäte:
záznam sudo pdnsd-ctl 3.14. Odstrániť alebo všetky naraz:
sudo pdnsd-ctl prázdna vyrovnávacia pamäť

Výsledky testu v NameBench



Vidíme, že na 50% žiadostí dostaneme odpoveď za menej ako 10 ms, na 85% rýchlejšie ako verejné DNS Google, a potom sa výsledky prirodzene zhodujú s Googlom.

Na základe výsledkov testov nás NameBench s potešením informuje:

8.8.8.8 Pomalšia replika SYS-192.167.0.98 8.8.4.4 Pomalšia replika SYS-192.167.0.98

Inteligentný server proxy DNS s vyrovnávacou pamäťou s paralelnými požiadavkami môže teda urýchliť aj 100-megabitový internet. A pre pomalé (rádiové) spojenia s vysokou latenciou a stratou paketov môže byť rozdiel ako medzi nebom a zemou.
Autor: Paul Cobbaut
Dátum zverejnenia: 24. mája 2015
Preklad: A. Panin
Dátum prevodu: 11. júla 2015

Kapitola 4. Úvod do serverov DNS

4.3. Servery cache do DNS

Server DNS, ktorý neslúži na zónu DNS, ale je pripojený k iným serverom názvov na dotazy týkajúce sa pamäte cache, sa nazýva server DNS ukladajúci do vyrovnávacej pamäte. Ukladanie do vyrovnávacej pamäte Servery DNS nefungujú s databázami zón DNS, ktoré obsahujú záznamy o prostriedkoch. Namiesto toho sa pripájajú k iným menným serverom a informáciám súvisiacim s vyrovnávacou pamäťou.

Existujú dva typy serverov DNS ukladaných do vyrovnávacej pamäte. Ide o servery DNS, ktoré používajú servery na presmerovanie DNS, a servery DNS, ktoré používajú koreňové servery DNS.

4.3.1. Server DNS ukladajúci do vyrovnávacej pamäte, ktorý nepoužíva server na presmerovanie

Server DNS ukladajúci do vyrovnávacej pamäte, ktorý nepoužíva server na presmerovanie, musí získať informácie inde. V okamihu prijatia požiadavky od klienta kontaktuje jeden z koreňových serverov. Koreňový server odošle serveru pre ukladanie do vyrovnávacej pamäte informácie o serveri obsluhujúcom cieľovú doménu najvyššej úrovne, ktorý ho následne nasmeruje na iný server DNS. Ten druhý server môže mať buď informácie na zodpovedanie požiadavky, alebo môže odovzdať informácie o inom serveri DNS, ktorý môže tieto informácie obsahovať. Náš server DNS nakoniec získa informácie, ktoré potrebuje na odpoveď na žiadosť, a odošle ju späť klientovi.

Nasledujúci obrázok zobrazuje proces klienta, ktorý odoslal požiadavku na informácie o adrese IP pre názov domény linux-training.be. Náš server pre ukladanie do vyrovnávacej pamäte sa pripojí k koreňovému serveru a bude presmerovaný na server obsluhujúci doménu najvyššej úrovne .be. Potom sa pripojí k serveru obsluhujúcemu doménu najvyššej úrovne .be a bude presmerovaný na jeden z menných serverov v organizácii Openminds. Jeden z týchto serverov mien (v tomto prípade nsq.openminds.be) odpovie na požiadavku pomocou IP adresy servera s názvom domény linux-training.be. Potom, čo náš server pre ukladanie do vyrovnávacej pamäte odošle tieto informácie klientovi, sa klient môže pripojiť k príslušnej webovej stránke.

Ak na vyriešenie tohto názvu domény použijete sniffer tcpdump, získate nasledujúci výstup (prvých 20 znakov z každého riadka bolo odstránených).

192.168.1.103.41251> M.ROOT-SERVERS.NET.doména: 37279% A? linux-tr \ aining.be. (46) M.ROOT-SERVERS.NET.doména> 192.168.1.103.41251: 37279- 11/13/13 (740) 192.168.1.103.65268> d.ns.dns.be.doména: 38555% A? linuxové školenie. \ be. (46) d.ns.dns.be.domain> 192.168.1.103.65268: 38555- 0/7/5 (737) 192.168.1.103.7514> ns2.openminds.be.domain: 60888% A? linux-train \ ing.be. (46) ns2.openminds.be.domain> 192.168.1.103.7514: 60888 * - 1/0/1 A 188,93,155. \ 87 (62)

4.3.2. Server caching DNS pomocou presmerovacieho servera

Server DNS ukladajúci do vyrovnávacej pamäte pomocou servera na presmerovanie je server DNS, ktorý získava všetky potrebné informácie z servera na presmerovanie (forwarder). Server DNS poskytovateľa internetových služieb môže napríklad fungovať ako server DNS na presmerovanie.

Vyššie uvedený obrázok ukazuje server DNS v miestnej sieti spoločnosti, ktorý používa server DNS poskytujúci ISP ako server DNS na presmerovanie. Ak je adresa IP servera DNS poskytovateľa internetu 212.71.8.10, v konfiguračnom súbore named.conf firemného servera DNS by mali byť prítomné nasledujúce riadky:

Zasielatelia (212.71.8.10;);

Okrem toho môžete svoj server DNS nakonfigurovať tak, aby pracoval s podmienenými odosielateľmi. Popis podmienečne presmerovaného servera DNS v konfiguračnom súbore vyzerá takto:

Zóna „someotherdomain.local“ (napíšte dopredu; iba preposielanie; forwardery (10.104.42.1;););

4.3.3. Iteračný alebo rekurzívny dotaz

Rekurzívny dotaz je DNS dotaz, po ktorom klient čaká na konečnú odpoveď zo servera DNS (na obrázku vyššie je znázornený tučnou červenou šípkou smerujúcou z MacBooku na server DNS). Iteračný dotaz je dotaz DNS, po ktorom klient neočakáva prijatie konečnej odpovede od servera DNS (na obrázku vyššie je znázornený pomocou troch čiernych šípok smerujúcich zo servera DNS). Iteračné dotazy sa najčastejšie robia medzi názvovými servermi. Koreňové menové servery neodpovedajú na rekurzívne dotazy.

Server DNS, ktorý spravuje zónu DNS, sa nazýva autoritatívny server DNS pre túto zónu. Nezabudnite, že zóna DNS je len zbierka záznamov o zdrojoch.

Prvý autoritatívny server DNS pre zónu DNS sa nazýva primárny server DNS. Tento server bude fungovať s kópiou databázy zón DNS na čítanie a zápis. Ak potrebujete zlepšiť integritu údajov v prípade zlyhaní, zlepšiť výkon servera alebo vyrovnávanie zaťaženia, môžete nasadiť iný server DNS, ktorý bude spravovať aj túto zónu DNS. Tento server bude označovaný ako sekundárny server DNS.

Sekundárny server získa kópiu databázy zón DNS od primárneho servera počas prenosu zón. Žiadosti o prenos zón DNS odosielajú sekundárne servery v konkrétnych časových intervaloch. Dĺžky týchto časových úsekov sú stanovené ako súčasť záznamu o prostriedkoch SOA.

Nútenú aktualizáciu údajov o zóne DNS môžete spustiť pomocou pomocného programu rndc. Nasledujúci príklad iniciuje prenos údajov pre zónu DNS fred.local a vytlačí zodpovedajúcu časť súboru denníka / var / log / syslog.

[chránené e -mailom]: / etc / bind # rndc refresh fred.local [chránené e -mailom]: / etc / bind # grep fred / var / log / syslog | chvost -7 | rez -c38- zóna fred.local / IN: odosielanie upozornení (sériový 1) prijatý príkaz riadiaceho kanála „obnoviť fred.local“ zóna fred.local / IN: prenos zahájený. prenos „fred.local / IN“ z 10.104.109.1 # 53: pripojený pomocou 10.104.33.30 # 57367 zóna fred.local / IN: prenesený sériový prenos 2 „fred.local / IN“ z 10.104.109.1 # 53: prenos dokončené: 1 správa, 10 záznamov, 264 bajtov, 0,001 s (264 000 bajtov / s) zóna fred.local / IN: odosielanie upozornení (sériový 2) [chránené e -mailom]: / etc / bind #

Pri pridávaní sekundárneho servera DNS do zóny DNS môžete tento server nakonfigurovať ako podradený server DNS vzhľadom na primárny server. Primárny server DNS bude vo vzťahu k sekundárnemu serveru hlavným serverom DNS.

Primárnym serverom DNS je najčastejšie hlavný server, ktorý pracuje so všetkými podradenými servermi. Server slave môže niekedy fungovať aj ako hlavný server pre podradené servery ďalšej úrovne. Na nižšie uvedenom obrázku je server s názvom ns1 primárnym serverom a servery s názvom ns2, ns3 a ns4 sú sekundárne servery. Aj keď ns1 je master pre ns2 a ns3, ns2 je master pre ns4.

Záznam zdroja SOA obsahuje obnovovaciu frekvenciu pre zónu DNS s názvom obnovenie. Ak je táto hodnota nastavená na 30 minút, podriadený server bude odosielať žiadosti o prenos kópie údajov zóny DNS každých 30 minút. Tiež tento vstup obsahuje dĺžku časového limitu s názvom opakovať. Táto hodnota sa používa, ak hlavný server neodpovedal na poslednú požiadavku na prenos zóny DNS. Hodnota s názvom expiry time nastavuje čas, počas ktorého môže server slave odpovedať na požiadavky klientov bez aktualizácie údajov o zóne DNS.

Nasleduje príklad použitia pomocného programu nslookup na čítanie údajov záznamu zdroja SOA pre zónu DNS (linux-training.be).

[chránené e -mailom]:~# nslookup > nastaviť typ = SOA > server ns1.openminds.be > linux-training.be Server: ns1.openminds.be Adresa: 195.47.215.14 # 53 linux-training.be origin = ns1.openminds.be mail addr = hostmaster.openminds.be serial = 2321001133 refresh = 14400 opakovať = 3600 expire = 604800 minimum = 3600

Prenos údajov zóny DNS sa vykonáva iba v prípade zmeny údajov v databázach zón DNS (to znamená, keď dôjde k doplneniu, vymazaniu alebo zmene jednej alebo viac záznamy zdrojov na strane hlavného servera). Server slave porovnáva sériové číslo vlastnej kópie záznamu zdroja SOA s číslom verzie záznamu zdroja SOA zodpovedajúceho hlavného servera. Ak sú čísla verzií rovnaké, nie je potrebná žiadna aktualizácia údajov (pretože neboli pridané, odstránené ani zmenené žiadne ďalšie záznamy o prostriedkoch). V tom istom prípade, ak je číslo verzie záznamu zdroja SOA na strane podradeného servera menšie ako číslo verzie rovnakého záznamu na zodpovedajúcej strane hlavného servera, bude odoslaná požiadavka na prenos DNS.

Nasleduje snímka okna snímača Wireshark s údajmi zaznamenanými počas prenosu údajov zóny DNS.

4.9. Úplné alebo čiastočné prenosy zón DNS

Prenos údajov zóny DNS môže byť úplný alebo čiastočný. Rozhodnutie použiť jeden alebo druhý režim závisí od množstva údajov, ktoré je potrebné preniesť, aby sa úplne aktualizovala databáza zón DNS na podradenom serveri. Čiastočný prenos údajov zón je výhodnejší, ak je celkový počet zmenených údajov menší ako veľkosť celej databázy. Úplné prenosy zón DNS sa vykonávajú pomocou protokolu AXFR a čiastočné prenosy zón DNS sa vykonávajú pomocou protokolu IXFR.

Jednou z dôležitých služieb, ktoré zaisťujú fungovanie moderného internetu, je služba na prevod názvu stránky na ip adresu. Nastavením implementácie služby DNS sa v tomto článku budeme zaoberať na príklade nastavenia Bind 9 (pomenovaného) na serveri so systémom CentOS 7. Pripravíme si minimálnu potrebnú základnú funkcionalitu a pozrieme sa trochu hlbšie do nastavení protokolovania .

Ak sa chcete dozvedieť, ako pracovať s mikrotickými smerovačmi, a stať sa odborníkom v tejto oblasti, odporúčam použiť program založený na informáciách z oficiálneho kurzu. Kurz stojí za to, prečítajte si všetky podrobnosti tu. Existujú bezplatné kurzy.

Zaviazať- najbežnejšia implementácia servera DNS pre aktuálny deň, ktorá poskytuje konverziu adries IP na názvy dns a naopak. Hovorí sa mu aj pomenovanie, napríklad vo Freebsd. Na základe informácií z Wikipédie je v súčasnosti spustených viazaných 10 z 13 koreňových serverov DNS na internete. Je nainštalovaný po vybalení z krabice takmer vo všetkých linuxové distribúcie... Zvážim jeho inštaláciu na server CentOS 7.

Inštalácia Bind 9 (pomenovaná) na CentOS 7

Najprv skontrolujte, či máme v systéme nainštalovaný server dns:

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

Neinštaloval som ho, pretože som si počas toho vybral minimálny softvérový balík. Menný server bude fungovať v prostredí chroot, preto si nainštalujte príslušné balíky:

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

Znovu si všimnite, že budeme používať väzbu chroot prostredie na zvýšenie bezpečnosti. To spôsobuje určité zvláštnosti v konfigurácii a správe servera. Na tieto drobnosti si musíte dávať pozor. Spustíme teda väzbu:

# systemctl start pomenovaný-chroot# systemctl povoliť pomenovaný-chroot ln -s "/usr/lib/systemd/system/named-chroot.service" "/etc/systemd/system/multi-user.target.wants/named-chroot.service"

Kontrola obsahu adresára chroot:

# ls -l / var / named / chroot / atď

Všetko je v poriadku, server sa spustil, boli vytvorené potrebné súbory a všetko je pripravené na konfiguráciu. Postarajme sa o ňu.

Konfigurácia servera DNS v systéme CentOS 7

Konfiguračný súbor nášho servera sa nachádza na adrese /var/named/chroot/etc/named.conf... Otvoríme ho a uvedieme do nasledujúceho tvaru:

# mcedit /var/named/chroot/etc/named.conf options (port na počúvanie 53 (ľubovoľný;); port na počúvanie na v6 53 (žiadny;); adresár "/var/named"; súbor s výpisom /var/named/data/cache_dump.db "; povoliť dotaz (127.0.0.1; 192.168.7.0/24;); rekurzia áno; povoliť rekurziu (127.0.0.1; 192.168.7.0/24;); dopravcovia (8,8 .8.8;); verzia "Server DNS"; adresár spravovaných kľúčov "/ var/ pomenovaný/ dynamický"; súbor pid "/ spustený/ pomenovaný/ pomenovaný.pid"; súbor kľúča relácie "/ spustený/ pomenovaný/ relácia. kľúč "; dnssec-povoliť nie; dnssec-overenie nie;); zóna "." IN (napíšte nápovedu; súbor "named.ca";); zahrnúť „/etc/named.rfc1912.zones“; zahrnúť „/etc/named.root.key“; logovanie (kanál default_file (súbor "/var/log/named/default.log" verzie 3 veľkosť 5 m; závažnosť dynamická; čas tlače áno;); predvolená kategória (default_file;););

Táto konfigurácia poskytne normálny server pre ukladanie do vyrovnávacej pamäte v lokálnej sieti. Pripomienky k niektorým parametrom:

Nezabudnite upraviť pravidlá brány firewall pre správnu činnosť servera DNS - otvorený port UDP 53 pre server cache, ktorý sme nakonfigurovali, a port TCP 53 pre zóny preposielania, o ktorých sa bude diskutovať ďalej

Teraz vytvoríme priečinok pre protokoly. Nezabudnite, že pracujeme v prostredí chroot:

# cd / var / named / chroot / var / log && mkdir pomenovaný && chown named. pomenovaný

Podpora pre vašu vlastnú zónu

Povedzme, že musíme umiestniť vlastnú zónu site1.ru do nášho pomenovaného. Najprv vytvoríme súbor zóny, ktorý bude slúžiť serveru dns:

# 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. brána 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

Opis syntaxe zónových súborov je na internete dobre pokrytý, nechcem sa týmto podrobne zaoberať. Ak je to žiaduce, každý sa môže sám presvedčiť, či potrebuje nastaviť podporu pre svoju vlastnú zónu.

Vystavujeme potrebné práva:

# koreň chownu: pomenovaný /var/named/chroot/var/named/site1.ru.zone # chmod 0640 /var/named/chroot/var/named/site1.ru.zone

Zóna "site1.ru" (typ master; súbor "site1.ru.zone";);

Načítanie pomenovanej konfigurácie pomocou rndc:

# rndc prekonfigurovať

Pridať na viazanie podradenej zóny

Ak chcete na svojom serveri ponechať kópiu zóny prevzatej z iného servera DNS, pridajte do konfigurácie nasledujúce nastavenia.

Zóna "site.ru" IN (typ slave; masters (10.1.3.4;); súbor "site.ru.zone";);

10.1.3.4 - ip adresa servera dns, z ktorého vstupujeme do zóny. Nezabudnite povoliť prenos zóny na váš server DNS na nej.

Do pomenovanej skupiny musíme pridať povolenie na zápis, aby to vyzeralo takto:

Potom môžete reštartovať väzbu a skontrolovať, či bol vytvorený súbor zóny slave. S vyššie uvedenými nastaveniami bude umiestnený na /var/named/chroot/var/named/site.ru.zone... Ak väzba nemá povolenie na vytvorenie súboru, v protokole sa zobrazí chyba:

Dumpingový hlavný súbor: tmp-7Swr6EZpcd: otvorený: povolenie odmietnuté

Oveľa zaujímavejšie a užitočnejšie je zaoberať sa podrobným protokolovaním prevádzky servera. Dlho som povrchne chytal na internete všetky možné odporúčania a kúsky približných konfigurácií, až som sa rozhodol, že sa budem tejto téme venovať sám a nedostanem sa do pôvodného manuálu.

Väzba poskytuje dostatok príležitostí na prihlásenie. Môžete zaznamenať takmer všetko, čo súvisí s prevádzkou servera. Teraz vám na jednoduchých príkladoch ukážem, ako to funguje.

V konfigurácii najskôr nastavíme kanál, do ktorého sa budú pridávať protokoly pre určité udalosti. Tu je príklad podobného kanála:

Všeobecné kanály (súbor "/var/log/named/general.log" verzie 3, veľkosť 5 m; závažnosť dynamická; čas tlače áno;

Tu je názov kanála, ktorý si sami vymyslíme - spravidla je uvedená cesta k súboru, hovorí sa, že uložíme 3 verzie denníka, veľkosť nie viac ako 5 megabajtov. Parameter závažnosť môže mať nasledujúce hodnoty:

Parameter čas tlače znamená, že čas udalosti by mal byť zaznamenaný v denníku. Okrem nastavení, ktoré som zadal, je možné do konfigurácie kanála pridať nasledujúce parametre:

  • závažnosť tlačeáno | nie - označuje, či sa má do protokolu zapisovať parameter závažnosti alebo nie
  • print-categoryáno | nie - označuje, či sa má napísať názov kategórie denníka alebo nie

Tieto parametre som neuviedol, pretože je nastavená predvolená hodnota ččo mne osobne vyhovuje.

Kategória všeobecná (všeobecná;);

Popis kategórií denníka vo väzbe (pomenované)
predvolenéSem spadnú udalosti všetkých kategórií z tejto tabuľky, ak nie sú definované samostatne, s výnimkou kategórie dopytov, ktorá musí byť konkrétne zahrnutá. To znamená, že ak označíte iba predvolenú kategóriu, budú do nej naliate udalosti všetkých kategórií.
generálTáto kategória je pre všetky protokoly, ktoré nie sú zahrnuté v žiadnej z uvedených kategórií.
databázySprávy súvisiace so zónovým ukladaním a ukladaním do vyrovnávacej pamäte.
bezpečnosťPotvrdenie a odmietnutie splniť požiadavky.
konfigurČokoľvek súvisiace s čítaním a vykonávaním konfiguračného súboru.
riešiteľRozlišovanie mien vrátane informácií o rekurzívnych požiadavkách, ktoré v mene klienta vykonáva server pre ukladanie do vyrovnávacej pamäte.
xfer-inInformácie o získavaní zón.
xfer-outInformácie o prenose zón.
oznámiťProtokolovanie operácií protokolu NOTIFY.
zákazníkVykonávanie požiadaviek klientov.
bezkonkurenčnýSprávy, ktoré pomenovali, sa nepodarilo zaradiť alebo pre ktoré nebolo definované žiadne mapovanie.
sieteProtokolovanie sieťových operácií.
aktualizovaťDynamické aktualizácie.
aktualizácia-zabezpečeniePotvrdenie alebo odmietnutie žiadostí o aktualizáciu.
otázkyProtokolovanie požiadaviek na server DNS. Ak chcete povoliť túto kategóriu, musíte samostatne nastaviť parameter v konfigurácii servera. Dôvodom je skutočnosť, že táto kategória generuje v protokolovom súbore veľa záznamov, ktoré môžu ovplyvniť výkon servera.
chyby dotazuChyby serverovej požiadavky.
odoslaniePresmerovanie prichádzajúcich paketov na serverové moduly na spracovanie.
dnssecPrevádzka protokolov DNSSEC a TSIG.
chromé serveryChyby, ktoré sa viažu pri prístupe vzdialené servery v pokuse o dokončenie požiadavky na rozlíšenie názvu.
iba delegovanieProtokolovacie požiadavky, ktoré vrátili NXDOMAIN.
edns-zakázanéPožiadavky, ktoré sú nútené používať obyčajný DNS z dôvodu prekročenia časových limitov.
RPZVšetky operácie súvisiace s vykonávaním zóny politiky odozvy (RPZ).
sadzobný limitOperácie spojené s jedným alebo viacerými príkazmi na obmedzenie sadzieb v možnostiach alebo zobrazení.

Zobrazia sa teda všetky kategórie prihlásení samostatné súbory, musíte do pomenovanej konfigurácie pridať nasledujúcu konštrukciu:

Protokolovanie (predvolený kanál (súbor "/var/log/named/default.log" verzie 3, veľkosť 5 m; závažnosť dynamický; čas tlače áno;); všeobecný kanál (verzie "/var/log/named/general.log" 3 veľkosť 5 m; závažnosť dynamická; čas tlače áno;); databáza kanálov (súbor "/var/log/named/database.log" verzie 3 veľkosť 5 m; závažnosť dynamická; doba tlače áno;); zabezpečenie kanála (súbor " /var/log/named/security.log "verzie 3 veľkosť 5 m; závažnosť dynamická; čas tlače áno;); konfigurácia kanála (súbor" /var/log/named/config.log "verzie 3 veľkosť 5 m; závažnosť dynamická; print-time yes;); channel resolver (súbor "/var/log/named/resolver.log" verzie 3 veľkosť 5m; závažnosť dynamická; doba tlače áno;); kanál xfer-in (súbor "/var/log/ pomenovaný/xfer-in.log "verzie 3 veľkosť 5 m; závažnosť dynamická; doba tlače áno;); výstup xfer-out kanála (súbor" /var/log/named/xfer-out.log "verzie 3 veľkosť 5 m; závažnosť dynamická ; čas tlače áno;); upozornenie kanála (súbor "/var/log/named/notify.log" verzie 3, veľkosť 5 m; závažnosť dynamická; čas tlače áno;); kanály el client (súbor "/var/log/named/client.log" verzie 3 veľkosť 5m; závažnosť dynamická; čas tlače áno; ); bezkonkurenčný kanál (súbor "/var/log/named/unmatched.log" verzie 3, veľkosť 5 m; závažnosť dynamická; doba tlače áno;); sieť kanálov (súbor "/var/log/named/network.log" verzie 3 veľkosť 5 m; závažnosť dynamická; čas tlače áno;); aktualizácia kanála (súbor "/var/log/named/update.log" verzie 3, veľkosť 5 m; závažnosť dynamická; čas tlače áno;); aktualizácia zabezpečenia kanála (súbor "/var/log/named/update-security.log" verzie 3, veľkosť 5 m; závažnosť dynamická; čas tlače áno;); kanálové dotazy (súbor "/var/log/named/queries.log" verzie 3, veľkosť 5 m; závažnosť dynamická; doba tlače áno;); chyby dotazu kanála (súbor "/var/log/named/query-errors.log" verzie 3, veľkosť 5 m; závažnosť dynamická; čas tlače áno;); odoslanie kanála (súbor "/var/log/named/dispatch.log" verzie 3, veľkosť 5 m; závažnosť dynamická; čas tlače áno;); kanál dnssec (súbor "/var/log/named/dnssec.log" verzie 3, veľkosť 5 m; závažnosť dynamická; čas tlače áno;); kanály lame-servery (súbor "/var/log/named/lame-servers.log" verzie 3, veľkosť 5 m; závažnosť dynamická; čas tlače áno;); iba delegovanie kanálov (súbor "/var/log/named/delegation-only.log" verzie 3 veľkosť 5 m; závažnosť dynamická; čas tlače áno;); kanál edns-disabled (súbor "/var/log/named/edns-disabled.log" verzie 3 veľkosť 5 m; závažnosť dynamická; čas tlače áno;); kanál rpz (súbor "/var/log/named/rpz.log" verzie 3 veľkosť 5 m; závažnosť dynamická; čas tlače áno;); limit rýchlosti kanála (súbor "/var/log/named/rate-limit.log" verzie 3, veľkosť 5 m; závažnosť dynamická; čas tlače áno;); predvolená kategória (predvolené;); kategória všeobecné (všeobecné;); databáza kategórií (databáza;); zabezpečenie kategórie (zabezpečenie;); konfigurácia kategórie (config;); riešiteľ kategórie (resolver;); kategória xfer-in (xfer-in;); kategória xfer-out (xfer-out;); kategória oznámiť (oznámiť;); kategória klient (klient;); kategória bezkonkurenčná (bezkonkurenčná;); sieť kategórií (sieť;); aktualizácia kategórie (aktualizácia;); kategória aktualizácia-zabezpečenie (aktualizácia-zabezpečenie;); kategórie dotazy (dotazy;); kategória chyby dopytu (chyby dopytu;); odoslanie kategórie (odoslanie;); kategória dnssec (dnssec;); kategória chromých serverov (chromých serverov;); kategória iba delegovanie (iba delegovanie;); kategória edns-disabled (edns-disabled;); kategória rpz (rpz;); category rate-limit (rate-limit;); );

Ak chceme zhromaždiť všetky protokoly žiadostí z kategórie otázky, potom v sekcii možností konfiguračného súboru musíte pridať parameter, ktorý to umožňuje:

Dotazník áno;

Reštartovať väzbu:

# systemctl reštartujte názov-chroot.service

Kontrola činnosti servera DNS

Najprv prejdeme do adresára s protokolmi a skontrolujeme, čo tam máme:

# cd / var / pomenovaný / chroot / var / log / pomenovaný # ls -l

Všetky súbory denníka boli vytvorené a začali sa zapĺňať. Môžete skontrolovať jeden z nich. Pozrime sa napríklad, ako náš server centos (192.168.7.246) zaznamenáva požiadavky používateľov. Skúsme spustiť nslookup yandex.ru z počítača 192.168.7.254 (Windows) a uvidíme, ako sa to prejaví v súbore denníka:

26. septembra 2015 19: 25: 30,923 klient 192.168.7.254 # 56374 (yandex.ru): dotaz: yandex.ru IN A + (192.168.7.246) 26. septembra 2015 19: 25: 31.013 klient 192.168.7.254 # 56375 (yandex.ru): dotaz: yandex.ru IN AAAA + (192.168.7.246)

Teraz vyskúšame ping site1.ru, aby sme zistili, ako server podporuje našu zónu:

Pozrime sa, čo je v denníkoch:

26. septembra 2015 19: 28: 01,660 klient 192.168.7.254 # 49816 (site1.ru): query: site1.ru IN A + (192.168.7.246)

Je preto veľmi výhodné sledovať, kde počítač lezie. Môžete napríklad dočasne zvýšiť server dns a povoliť denník požiadaviek. V klientovi zadajte jediný server DNS, ktorý sme nakonfigurovali. Potom môžete bez nášho vedomia napríklad sledovať, kam sa Windows po načítaní šplhá. Alebo odkiaľ sú načítané reklamy na Skype. Všetky požiadavky budú úhľadne zložené do súboru, ktorý je potom možné ľahko analyzovať a potom napríklad.

To je všetko, čo som chcel v tomto materiáli povedať. Téma konfigurácie väzby (pomenovanej) je pomerne rozsiahla. Možno sa k nej vrátim neskôr.

Online kurzy Mikrotik

Ak máte túžbu naučiť sa pracovať s mikrotickými smerovačmi a stať sa odborníkom v tejto oblasti, odporúčam absolvovať kurzy v programe založenom na informáciách z oficiálneho kurzu Certifikovaný sieťový spolupracovník MikroTik... Kurzy budú okrem oficiálneho programu zahŕňať laboratórne práce, v ktorých si môžete otestovať a upevniť znalosti získané v praxi. Všetky podrobnosti na stránke. Náklady na školenie sú veľmi demokratické, dobrá príležitosť získať nové znalosti z aktuálnej oblasti. Vlastnosti kurzov:
  • Prakticky orientované znalosti;
  • Skutočné situácie a úlohy;
  • Najlepšie z medzinárodných programov.