Krok 1: Nainštalujte požadované balíčky

Predtým, ako sa pozrieme na nasledujúce pokyny, chceme si uvedomiť, že náš web už obsahuje všeobecnú príručku o konfigurácii štandardného DNS v systéme Linux. Odporúčame vám použiť presne tento materiál, ak potrebujete upraviť nastavenia pre pravidelné návštevy internetových stránok. Ďalej si ukážeme, ako nainštalovať primárny lokálny server DNS na strane klienta.

Prečítajte si tiež: Konfigurácia DNS v systéme Linux

Ako prostriedok na vytvorenie lokálneho servera DNS odporúčame použiť bind9... Nastavenie následných konfiguračných súborov bude tiež založené na všeobecných princípoch správania tohto komponentu. Predvolené bind9 v operačnom systéme chýba, takže začnime jeho pridaním.

  1. Spustite konzolu spôsobom, ktorý vám vyhovuje. Nachádza sa v sekcii „Aplikácie“Obľúbené alebo sa dá otvoriť pomocou štandardnej klávesovej skratky Ctrl + Alt + T.
  2. Prejsť na terminál a nainštalovať základný DNS na CentOS

  3. Tu musíte zadať príkaz sudo yum install bind bind-utils -y a kliknite na Zadajte aktivovať.
  4. Príkaz na nastavenie primárneho DNS v systéme CentOS

  5. Táto akcia sa koná v mene superužívateľa (sudo), takže účet budete musieť potvrdiť zadaním hesla do zobrazeného riadku.
  6. Potvrdenie primárnej inštalácie DNS na CentOS cez terminál

  7. Počkajte na dokončenie sťahovania a inštalácie balíkov.
  8. Čaká sa na dokončenie primárnej inštalácie DNS v systéme CentOS

Na konci tohto procesu budete informovaní, že všetky balíčky boli do systému úspešne pridané. Potom pokračujte ďalším krokom.

Krok 2: Globálna konfigurácia servera DNS

Teraz chceme demonštrovať, ako presne sa hlavný konfiguračný súbor upravuje, a tiež to, aké riadky sa tam pridávajú. Nebudeme sa venovať každému riadku zvlášť, pretože to bude trvať veľmi dlho, navyše všetky potrebné informácie sú k dispozícii v oficiálnej dokumentácii.

  1. Na úpravu konfiguračných objektov je možné použiť ľubovoľný textový editor. Ponúkame inštaláciu pohodlné nanozadaním do konzoly sudo yum nainštalovať nano.
  2. Príkaz na inštaláciu textového editora pred úpravou súborov DNS v systéme CentOS

  3. Stiahnu sa všetky požadované balíčky a ak sa už v distribúcii nachádzajú, dostanete upozornenie „Nie je čo robiť“.
  4. Úspešná inštalácia textového editora pred úpravou súborov DNS v systéme CentOS

  5. Začnime upravovať samotný súbor. Otvor to sudo nano /etc/named.conf... Ak je to potrebné, vymeňte požadovaný textový editor, potom bude riadok vyzerať asi takto: sudo vi /etc/named.conf.
  6. Spustenie hlavného konfiguračného súboru DNS v systéme CentOS pre ďalšiu konfiguráciu

  7. Ďalej poskytneme obsah, ktorý musíte vložiť do otvoreného súboru, alebo ho porovnajte s existujúcim pridaním chýbajúcich riadkov.
  8. Nastavuje sa hlavný konfiguračný súbor DNS v systéme CentOS

  9. Potom kliknite na Ctrl + Ozaznamenať zmeny.
  10. Uloženie zmien po nastavení hlavného konfiguračného súboru DNS v systéme CentOS

  11. Nie je potrebné meniť názov súboru, stačí kliknúť na Zadajte.
  12. Vrátiť späť zmenu názvu konfiguračného súboru DNS v systéme CentOS

  13. Opustiť textový editor cez Ctrl + X.
  14. Ukončenie textového editora po zmene hlavného konfiguračného súboru DNS v systéme CentOS

Ako už bolo spomenuté, do konfiguračného súboru budete musieť vložiť určité riadky, ktoré stanovujú všeobecné pravidlá pre správanie servera DNS.

//
// named.conf
//
// Poskytuje viazaný balík Red Hat na konfiguráciu ISC BIND s názvom (8) DNS
// server ako medzipamäť iba menného servera (iba ako prekladač lokálneho hostiteľa DNS).
//
// Pozri / usr / share / doc / bind * / sample / napríklad pomenované konfiguračné súbory.
//

možnosti {
načúvací port 53 {127.0.0.1; 192.168.1.101;}; ### Hlavná DNS IP ###
# listen-on-v6 port 53 {:: 1; };
adresár "/ var / named";
výpisový súbor "/var/named/data/cache_dump.db";
štatistický súbor "/var/named/data/named_stats.txt";
memstatistics-file "/var/named/data/named_mem_stats.txt";
allow-query {localhost; 192.168.1.0/24;}; ### Rozsah IP ###
allow-transfer {localhost; 192.168.1.102; }; ### Slave DNS IP ###

/*
- Ak budujete AUTORITATÍVNY server DNS, NEPOVOLUJTE rekurziu.
- Ak vytvárate server RECURSIVE (ukladanie do medzipamäte) DNS, musíte povoliť
rekurzia.
- Ak má váš rekurzívny server DNS verejnú adresu IP, MUSÍTE povoliť prístup
kontroly na obmedzenie dotazov na vašich legitímnych používateľov. Ak to neurobíte, urobí to
spôsobí, že sa váš server stane súčasťou rozsiahleho zosilnenia DNS
útoky. Implementácia BCP38 vo vašej sieti by bola veľmi dôležitá
zmenšiť taký útočný povrch
*/
rekurzia áno;

dnssec-povoliť áno;
dnssec-validácia áno;
dnssec-lookaside auto;

/ * Cesta ku kľúču ISC DLV * /
bindkeys-file "/etc/named.iscdlv.key";

adresár spravovaných kľúčov "/ var / named / dynamic";

pid-file "/run/named/named.pid";
session-keyfile "/run/named/session.key";
};

logovanie {
kanál default_debug {
súbor "data / named.run";
závažnosť dynamická;
};
};

zóna "." V {
tip na typ;
súbor "named.ca";
};

zóna „unixmen.local“ V {
typový majster;
súbor "forward.unixmen";
allow-update {none; };
};
zóna „1.168.192.in-addr.arpa“ V {
typový majster;
súbor "reverse.unixmen";
allow-update {none; };
};

zahrnúť "/etc/named.rfc1912.zones";
zahrnúť "/etc/named.root.key";

Skontrolujte, či je všetko nastavené presne tak, ako je to uvedené vyššie, a až potom pokračujte ďalším krokom.

Krok 3: Vytvorte zónu dopredu a dozadu

Server DNS používa na získanie informácií o zdroji zóny dopredu a dozadu. Dopredu vám umožní získať IP adresu podľa názvu hostiteľa, a naopak cez IP vám dá názov domény. Správna činnosť každej zóny musí byť zabezpečená špeciálnymi pravidlami, ktorých vytvorenie navrhujeme robiť ďalej.

  1. Vytvorme samostatný súbor pre priamu zónu pomocou rovnakého textového editora.Potom bude riadok vyzerať takto: sudo nano /var/named/forward.unixmen.
  2. Pri konfigurácii DNS v systéme CentOS prejdite na Vytvoriť súbor zóny ďalej

  3. Budete upozornení, že ide o prázdny objekt. Vložte tam nasledujúci obsah:

    8 6400 dolárov
    @ V SOA masterdns.unixmen.local. root.unixmen.local. (
    2011071001; Sériové číslo
    3600; Obnoviť
    1800; Skúsiť znova
    604800; Platnosť vyprší
    86400; minimálne TTL
    )
    @ IN NS masterdns.unixmen.local.
    @ IN NS secondarydns.unixmen.local.
    @ IN A 192.168.1.101
    @ IN A 192.168.1.102
    @ IN A 192.168.1.103
    masterdns IN A 192.168.1.101
    secondarydns IN A 192.168.1.102
    klient IN A 192.168.1.103

  4. Pridanie konfigurácie pre preposielanie súborov zón DNS v systéme CentOS

  5. Uložte zmeny a zatvorte textový editor.
  6. Ukončenie textového editora po vytvorení súboru zóny DNS preposielania v systéme CentOS

  7. Teraz prejdime k reverznej zóne. Vyžaduje to súbor /var/mened/reverse.unixmen.
  8. Vytvorenie súboru reverznej zóny pre konfiguráciu DNS v systéme CentOS

  9. Bude to tiež nový prázdny súbor. Vložte tam:

    8 6400 dolárov
    @ V SOA masterdns.unixmen.local. root.unixmen.local. (
    2011071001; Sériové číslo
    3600; Obnoviť
    1800; Skúsiť znova
    604800; Platnosť vyprší
    86400; minimálne TTL
    )
    @ IN NS masterdns.unixmen.local.
    @ IN NS secondarydns.unixmen.local.
    @ IN PTR unixmen.local.
    masterdns IN A 192.168.1.101
    secondarydns IN A 192.168.1.102
    klient IN A 192.168.1.103
    101 V PTR masterdns.unixmen.local.
    102 V PTR secondarydns.unixmen.local.
    103 V PTR klient.unixmen.local.

  10. Pridanie obsahu do súboru reverznej zóny pri konfigurácii DNS v systéme CentOS

  11. Pri ukladaní nemeňte názov objektu, jednoducho stlačte kláves Zadajte.
  12. Vrátiť späť zmenu názvu súboru pri ukladaní reverznej zóny DNS v systéme CentOS

Teraz sa zadané súbory použijú pre zónu dopredu a dozadu. Ak je to potrebné, mali by ste ich upraviť, aby ste zmenili niektoré parametre. Môžete si o tom prečítať aj v oficiálnej dokumentácii.

Krok 4: Spustenie servera DNS

Po vykonaní všetkých predchádzajúcich pokynov môžete už server DNS spustiť, aby ste v budúcnosti mohli ľahko skontrolovať jeho funkčnosť a pokračovať v konfigurácii dôležitých parametrov. Úloha sa vykonáva takto:

  1. V konzole vstúpte sudo systemctl povoliť pomenovanépridať server DNS k spusteniu na automatické spustenie pri štarte operačného systému.
  2. Pridanie služby DNS v systéme CentOS do spustenia operačného systému

  3. Túto akciu potvrďte zadaním hesla superužívateľa.
  4. Potvrdenie akcie na pridanie služby DNS v systéme CentOS do spustenia

  5. Budete informovaní o vytvorení symbolického odkazu, čo znamená, že akcia bola úspešná.
  6. Úspešne vytvorte symbolický odkaz na automatické načítanie služby DNS v systéme CentOS

  7. Spustite obslužný program cez systemctl začiatok pomenovaný... Môžete ho zastaviť rovnakým spôsobom, iba nahradením príslušnej možnosti začať na zastav.
  8. Príkaz na povolenie služby DNS v systéme CentOS

  9. Keď sa zobrazí vyskakovacie okno autentifikácie, zadajte heslo root.
  10. Potvrdzovací príkaz na povolenie služby DNS v systéme CentOS zadaním hesla

Ako vidíte, správa zadanej služby sa vykonáva na rovnakom princípe ako všetky ostatné štandardné pomocné programy, takže by to nemalo spôsobovať problémy ani začínajúcim používateľom.

Krok 5: Zmeňte nastavenie brány firewall

Pre správne fungovanie servera DNS musíte otvoriť port 53, ktorý sa vykonáva prostredníctvom štandardného firewallu FirewallD. IN „Terminál“ musíte zadať iba tri jednoduché príkazy:

  1. Prvý má formu firewall-cmd --permanent --add-port = 53 / tcp a je zodpovedný za otvorenie portu TCP. Vložte ho do konzoly a kliknite na Zadajte.
  2. Otvorenie portu DNS v systéme CentOS prostredníctvom štandardného firewallu

  3. Mali by ste byť upozornení "Úspech", čo naznačuje úspešné uplatnenie pravidla. Potom vložte riadok firewall-cmd --permanent --add-port = 53 / udp otvoriť port UDP.
  4. Otvorenie druhého portu DNS na serveri CentOS prostredníctvom štandardného firewallu

  5. Všetky zmeny sa uplatnia až po reštarte brány firewall, ktorá sa vykoná pomocou príkazu firewall-cmd - načítať.
  6. Po vykonaní zmien v konfigurácii DNS v systéme CentOS reštartujte bránu firewall

Vo firewalle už nemusíte robiť žiadne zmeny. Stále ho majte zapnutý, aby ste predišli problémom s prístupom.

Krok 6: Nastavenie prístupových práv

Teraz budete musieť nastaviť základné povolenia a prístupové práva, aby ste mierne zabezpečili fungovanie servera DNS a chránili bežných používateľov pred možnosťou meniť parametre. Urobme to štandardným spôsobom a prostredníctvom SELinuxu.

  1. Všetky nasledujúce príkazy musia byť aktivované v mene superužívateľa. Aby ste neustále nezadávali heslo, odporúčame vám povoliť trvalý prístup root pre aktuálnu reláciu terminálu. Vykonáte to tak, že vstúpite do konzoly su.
  2. Povolenie práv superužívateľa na ďalšiu konfiguráciu prístupu DNS v systéme CentOS

  3. Zadajte prístupové heslo.
  4. Zadanie hesla na aktiváciu permanentného rootu pri konfigurácii DNS v CentOS

  5. Potom zadajte nasledujúce príkazy jeden po druhom, aby ste vytvorili optimálne nastavenie prístupu:

    chgrp pomenovaný -R / var / pomenovaný
    chown -v root: pomenovaný /etc/named.conf
    restorecon -rv / var / pomenovaný
    restorecon /etc/named.conf

  6. Zadávanie príkazov na konfiguráciu prístupu DNS v systéme CentOS

Týmto je dokončená všeobecná konfigurácia hlavného servera DNS. Zostáva len upraviť niekoľko konfiguračných súborov a otestovať chyby. S týmto všetkým navrhujeme na to prísť v ďalšom kroku.

Krok 7: Testovanie chýb a dokončenie konfigurácie

Odporúčame vám začať kontrolou chýb, aby ste v budúcnosti nemuseli meniť zostávajúce konfiguračné súbory. Preto to všetko pokryjeme v jednom kroku a poskytneme príklady správneho výstupu príkazov na testovanie.

  1. Zadajte „Terminál“ named-checkconf /etc/named.conf... Týmto sa skontrolujú globálne parametre. Ak v dôsledku toho nenasleduje žiadny výstup, je všetko správne nakonfigurované. V opačnom prípade si správu prečítajte a vychádzajúc z nej, vyriešte problém.
  2. Príkaz na kontrolu hlavného konfiguračného súboru DNS v systéme CentOS

  3. Ďalej musíte skontrolovať priamu zónu vložením riadku named-checkzone unixmen.local /var/named/forward.unixmen.
  4. Príkaz na kontrolu hlavného konfiguračného súboru DNS v systéme CentOS

  5. Ukážkový výstup vyzerá takto: zóna unixmen.local / IN: načítané sériové číslo 2011071001 OK.
  6. Zobrazenie výsledkov testu pre forward DNS zónu na CentOS

  7. Vykonávame približne to isté s reverznou zónou named-checkzone unixmen.local /var/named/reverse.unixmen.
  8. Príkaz na kontrolu reverznej zóny pri testovaní DNS na serveri CentOS

  9. Správny výstup by mal byť taký: zóna unixmen.local / IN: načítané sériové číslo 2011071001 OK.
  10. Zobrazenie výsledkov testu reverznej zóny DNS v systéme CentOS

  11. Teraz prejdime k nastaveniam hlavného sieťového rozhrania. Budete k nemu musieť pridať údaje aktuálneho servera DNS. Ak to chcete urobiť, otvorte súbor / etc / sysconfig / network-scripts / ifcfg-enp0s3.
  12. Pri konfigurácii DNS v systéme CentOS prejdite na úpravu súboru WAN

  13. Uistite sa, že obsah je uvedený nižšie. V prípade potreby prilepte parametre DNS.

    TYPE = "Ethernet"
    BOOTPROTO = "žiadny"
    DEFROUTE = "áno"
    IPV4_FAILURE_FATAL = "nie"
    IPV6INIT = "áno"
    IPV6_AUTOCONF = "áno"
    IPV6_DEFROUTE = "áno"
    IPV6_FAILURE_FATAL = "nie"
    NAME = "enp0s3"
    UUID = "5d0428b3-6af2-4f6b-9fe3-4250cd839efa"
    ONBOOT = "áno"
    HWADDR = "08: 00: 27: 19: 68: 73"
    IPADDR0 = "192.168.1.101"
    PREFIX0 = "24"
    GATEWAY0 = "192.168.1.1"
    DNS = "192.168.1.101"
    IPV6_PEERDNS = "áno"
    IPV6_PEERROUTES = "áno"

  14. Úpravy súboru WAN pri konfigurácii DNS v systéme CentOS

  15. Po uložení zmien choďte do súboru /etc/resolv.conf.
  16. Pri konfigurácii DNS v systéme CentOS prejdite na úpravy rozhraní

  17. Tu stačí pridať jeden riadok: nameserver 192.168.1.101.
  18. Úpravy rozhraní WAN pri konfigurácii DNS v systéme CentOS

  19. Po dokončení zostáva iba reštartovanie siete alebo počítača a aktualizácia konfigurácie. Sieťová služba sa reštartuje pomocou príkazu systemctl restart siete.
  20. Reštartovanie WAN po úspešnej konfigurácii DNS v systéme CentOS

Krok 8: Kontrola nainštalovaného servera DNS

Na konci konfigurácie zostáva iba skontrolovať činnosť existujúceho servera DNS po jeho pridaní do globálnej sieťovej služby. Táto operácia sa vykonáva aj pomocou špeciálnych príkazov. Prvý z nich má formu kopať masterdns.unixmen.local.

Príkaz na kontrolu stavu DNS v systéme CentOS

Vo výsledku by sa mal na obrazovke objaviť výstup, ktorý vyzerá podobne ako obsah nižšie.

Výstup príkazu na kontrolu stavu DNS v systéme CentOS

; <> DiG 9.9.4-RedHat-9.9.4-14.el7 <> masterdns.unixmen.local
;; globálne možnosti: + cmd
;; Mám odpoveď:
;; - >> HEADER << - opcode: QUERY, status: NOERROR, id: 25179
;; vlajky: qr aa rd ra; DOTAZ: 1, ODPOVEĎ: 1, ORGÁN: 2, DODATOČNÉ: 2

;; OPTICKÁ PSEUDOSEKCIA:
; EDNS: verzia: 0, príznaky:; udp: 4096
;; ODDIEL OTÁZKY:
; masterdns.unixmen.local. V

;; SEKCIA ODPOVEDE:
masterdns.unixmen.local. 86400 IN A 192.168.1.101

;; SEKCIA ORGÁNU:
unixmen.local. 86400 IN NS secondarydns.unixmen.local.
unixmen.local. 86400 IN NS masterdns.unixmen.local.

;; DODATOČNÁ ČASŤ:
secondarydns.unixmen.local. 86400 IN A 192.168.1.102

;; Čas dopytu: 0 ms
;; SERVER: 192.168.1.101 # 53 (192.168.1.101)
;; KEDY: St 20. augusta 16:20:46 IST 2014
;; VEĽKOSŤ MSG rcvd: 125

Dodatočný príkaz vás informuje o stave prevádzky lokálneho servera DNS. Za týmto účelom vložte do konzoly nslookup unixmen.local a kliknite na Zadajte.

Príkaz na kontrolu správnosti DNS zón v CentOS

Mali by sa zobraziť tri rôzne reprezentácie adries IP a názvov domén.

Server: 192.168.1.101
Adresa: 192.168.1.101 # 53

Názov: unixmen.local
Adresa: 192.168.1.103
Názov: unixmen.local
Adresa: 192.168.1.101
Názov: unixmen.local
Adresa: 192.168.1.102

Výstup príkazu na kontrolu správnosti DNS zón v CentOS

Ak sa výstup zhoduje s tým, ktorý sme označili, potom bola konfigurácia úspešne dokončená a môžete pokračovať v práci so stranou klienta servera DNS.

Konfigurácia klientskej strany servera DNS

Tento postup nebudeme deliť na samostatné kroky, pretože sa vykonáva úpravou iba jedného konfiguračného súboru. Je potrebné pridať informácie o všetkých klientoch, ktorí budú pripojení k serveru, a príklad takéhoto nastavenia vyzerá takto:

  1. Otvorte súbor /etc/resolv.conf prostredníctvom ľubovoľného pohodlného textového editora.
  2. Prejdite na konfiguráciu klienta DNS v systéme CentOS

  3. Pridajte tam riadky hľadať unixmen.local nameserver 192.168.1.101 a nameserver 192.168.1.102, nahradením potrebných adries klientov.
  4. Konfigurácia DNS na strane klienta v systéme CentOS pri jeho nastavovaní

  5. Pri ukladaní nemeňte názov súboru, jednoducho stlačte kláves Zadajte.
  6. Uloženie zmien po konfigurácii klienta DNS v systéme CentOS

  7. Po ukončení textového editora nezabudnite reštartovať globálnu sieť pomocou príkazu systemctl restart siete.
  8. Reštartovanie siete po konfigurácii klienta DNS v systéme CentOS

To boli hlavné body konfigurácie klientskej strany servera DNS, o ktorých sme chceli hovoriť. Všetky ďalšie nuansy odporúčame preštudovať si v prípade potreby prečítaním oficiálnej dokumentácie.

Testovanie servera DNS

Poslednou fázou nášho dnešného materiálu je záverečné testovanie servera DNS. Ďalej vidíte niekoľko príkazov, ktoré vám umožnia zvládnuť danú úlohu. Použite jeden z nich aktiváciou cez „Terminál“... Ak na výstupe nie sú žiadne chyby, potom je celý proces správny.

kopať masterdns.unixmen.local
kopať sekundárnedns.unixmen.local
kopať klient.unixmen.local
nslookup unixmen.local

Globálna kontrola stavu DNS v systéme CentOS

Dnes ste sa dozvedeli všetko o nastavení hlavného servera DNS v distribúcii CentOS. Ako vidíte, celá operácia je zameraná na zadávanie príkazov terminálu a úpravu konfiguračných súborov, čo môže začínajúcim používateľom spôsobiť určité ťažkosti. Musíte však iba presne dodržať pokyny a prečítať si výsledky kontrol, aby všetko prešlo bez akýchkoľvek chýb.