DNS i DHCP u CentOS 7 - SMB mreže

Opšti indeks serije: Računarske mreže za mala i srednja preduzeća: Uvod

Pozdrav prijatelji! U ovom ćemo članku vidjeti kako možemo implementirati važan par usluga za mreže koje čini DNS i DHCP na CentOS-u - Linux, posebno u njegovoj verziji 7.2.

  • Neki članci o DNS-u pozivaju se na činjenicu da je implementacija ove usluge pomalo nejasna i teška. Ne slažem se baš s tom izjavom. Prije bih rekao da je pomalo konceptualan i da mnoge njegove konfiguracijske datoteke imaju mučnu sintaksu. Srećom, imamo alate za provjeru, korak po korak, sintakse svake konfiguracijske datoteke koju mijenjamo. Stoga ćemo se potruditi da čitanje ovog posta učini što ugodnijim i ugodnijim..

Za one koji traže osnove obje usluge, toplo preporučujemo započinjanje pretraživanja na Wikipediji, kako u španskoj tako i u engleskoj verziji. Nije manje tačno da su članci na engleskom gotovo uvijek cjelovitiji i koherentniji. Ipak, Wikipedia je vrlo dobro polazište.

Za one koji stvarno želite naučiti o DNS-u i BIND-u, preporučujemo čitanje knjige «OReilly - DNS i BIND 4ed" napisao Paul albitz y Cvrčak Liu, ili kasnije izdanje koje sigurno postoji.

Već smo na tu temu objavili članak pod naslovom «DNS i DHCP u openSUSE 13.2 Harlequin - MSP mreže»Za ljubitelje grafičkog okruženja. Međutim, od sada će se suočavati sa člancima na ovu temu - a ne o drugima - napisanim s puno upotrebe emulatora terminala ili konzole. Wow, u klasičnom stilu koji koriste UNIX® / Linux sistemski administratori.

Ako želite znati više o prezimenu naslova ovog članka «MSP mreže»Možete posjetiti stranicu na ovom blogu«MSP mreže: prvi virtualni rez«. U njemu ćete pronaći linkove do mnogih drugih objavljenih članaka.

  • Nakon završetka instalacije operativnog sistema CentOS 7 sa paketima koje preporučujemo, el imenik /usr/share/doc/bind-9.9.4/ sadrži dobru količinu dokumentacije koju preporučujemo da pogledate prije nego što se upustite u internetsku pretragu, a da prije toga ne znate da na dohvat ruke i u svom domu možete pronaći ono što tražite.

Instalacija osnovnog sistema

Opći podaci domene i DNS servera

Ime domena: desdelinux.fan
Ime DNS servera: dns.desdelinux.fan
IP adresa: 192.168.10.5
Maska podmreže: 255.255.255.0

Instalacija

Počinjemo s novom ili čistom instalacijom operativnog sistema CentOS 7 kao što je navedeno u prethodnom članku «CentOS 7 Hypervisor I - SMB mreže«. Moramo izvršiti samo sljedeće promjene:

  • u 22 Image «ODABIR SOFTVERA«, Preporučujemo odabir u lijevom stupcu«Osnovno okruženje»Opcija koja odgovara«Infrastrukturni server«, Dok je u desnoj koloni«Dodaci za izabrano okruženje»Označite potvrdni okvir«DNS poslužitelj imena«. DHCP server ćemo instalirati kasnije.
  • Sjetimo se deklaracije dodatnih spremišta kao što je prikazano u 23 Image, nakon postavljanja «NAZIV MREŽE I TIMA".
  • Slike koje se odnose na particije koje ćemo stvoriti na našem tvrdom disku date su samo kao vodiči. Slobodno odaberite particije prema vlastitom nahođenju, praksi i dobroj prosudbi.
  • Konačno, u Slika 13 «IME MREŽE I TIMA», moramo promijeniti vrijednosti prema općim parametrima deklarirane domene i DNS servera, ne zaboravljajući navesti ime hosta - u ovom slučaju «DNS«- nakon završetka mrežne konfiguracije. Pozitivno je to učiniti ping -od drugog hosta- do navedene IP adrese nakon što je mreža aktivna:

DNS i DHCP na CentOS-u

Postoji zaista malo i vrlo očiglednih promjena koje moramo napraviti u odnosu na prethodni članak.

Početne provjere i prilagođavanja

Nakon što instaliramo operativni sistem, moramo pregledati najmanje sljedeće datoteke, a za to započinjemo sesiju putem SSH-a s našeg računara sysadmin.desdelinux.fan:

buzz @ sysadmin: ~ $ ssh 192.168.10.5
[email zaštićen]Lozinka korisnika: Posljednja prijava: Subota, 28. januar 2017. 09:48:05 sa 192.168.10.1
[buzz @ dns ~] $

Gore navedena operacija može potrajati duže nego što je uobičajeno, a uglavnom je to zbog činjenice da još uvijek nemamo DNS na LAN-u. Provjerite ponovo kasnije da li DNS radi.

[buzz @ dns ~] $ mačka / etc / hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 :: 1 localhost localhost.localdomain localhost6 localhost6.localdomain6

[buzz @ dns ~] $ cat / etc / hostname
DNS

[buzz @ dns ~] $ cat / etc / sysconfig / network-scripts / ifcfg-eth0
TYPE=Ethernet
BOOTPROTO=none
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=no
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
IPV6_FAILURE_FATAL=no
NAME=eth0
UUID=946f5ac9-238a-4a94-9acb-9e3458c680fe
DEVICE=eth0
ONBOOT=yes
IPADDR=192.168.10.5
PREFIX=24
GATEWAY=192.168.10.1
DNS1=127.0.0.1
DOMAIN=desdelinux.fan

[buzz @ dns ~] $ mačka /etc/resolv.conf 
# Generirano pretraživanjem NetworkManagera desdelinux.fan server imena 127.0.0.1

Glavne konfiguracije odgovaraju našem odabiru. Imajte na umu da čak i na serveru Red Hat 7 - CentOS 7, je konfigurirano prema zadanim postavkama kada NetworkManager tako da ovaj upravlja mrežnim sučeljima, bilo žičanim ili bežičnim (WiFi), VPN vezama, PPPoE vezama i bilo kojom drugom mrežnom vezom.

[buzz @ dns ~] $ sudo systemctl status networkmanager
[sudo] lozinka za buzz: ● networkmanager.service Loaded: not-found (Razlog: Nema takve datoteke ili direktorija) Aktivan: neaktivan (mrtav)

[buzz @ dns ~] $ sudo systemctl status NetworkManager
● NetworkManager.service - Network Manager Loaded: loaded (/usr/lib/systemd/system/NetworkManager.service; omogućeno; unaprijed postavljeno dobavljača: omogućeno) Aktivan: aktivan (radi) od Sub 2017-01-28 12:23:59 EST; Prije 12 minuta Glavni PID: 705 (NetworkManager) CGroup: /system.slice/NetworkManager.service └─705 / usr / sbin / NetworkManager --no-daemon

Red Hat - CentOS vam takođe omogućava povezivanje i odspajanje mrežnih interfejsa pomoću klasičnih naredbi ifup e ako je dole. Pokrenimo na serverskoj konzoli:

[root @ dns ~] # ifdown eth0
Uređaj 'eth0' uspješno je prekinut.

[root @ dns ~] # ifup eth0
Veza je uspješno aktivirana (aktivna putanja D-sabirnice: / org / freedesktop / NetworkManager / ActiveConnection / 1)
  • Predlažemo ne mijenjajte zadane postavke koje nudi CentOS 7 u odnosu na njih NetworkManager.

Definitivno izjavljujemo spremišta koja ćemo koristiti i po potrebi ažurirati operativni sistem:

[buzz @ dns ~] $ su Lozinka: [root @ dns buzz] # cd /etc/yum.repos.d/
[root @ dns yum.repos.d] # ls -l
ukupno 28 -rw-r - r--. 1 root root 1664 9. decembra 2015. CentOS-Base.repo -rw-r - r--. 1 root root 1309 9. decembra 2015. CentOS-CR.repo -rw-r - r--. 1 root root 649 9. decembra 2015. CentOS-Debuginfo.repo -rw-r - r--. 1 root root 290 9. decembra 2015. CentOS-fasttrack.repo -rw-r - r--. 1 root root 630 9. decembra 2015. CentOS-Media.repo -rw-r - r--. 1 root root 1331 9. decembra 2015. CentOS-Sources.repo -rw-r - r--. 1 root root 1952 9. decembra 2015. CentOS-Vault.repo

Zdravo je čitati sadržaj originalnih datoteka deklaracije spremišta koje preporučuje CentOS. Promjene koje ovdje radimo su zbog činjenice da nemamo pristup internetu, a radimo sa lokalnim repozitorijumima preuzetim sa WWW Villagea, od strane kolega koji nam malo olakšavaju život. 

[root @ dns yum.repos.d] # mkdir original
[root @ dns yum.repos.d] # mv CentOS- * original /

[root @ dns yum.repos.d] # nano centos-repos.repo
[centos-base]
name=CentOS-$releasever
baseurl=http://10.10.10.1/repos/centos/7/base/
gpgcheck=0
enabled=1

[centos-updates]
name=CentOS-$releasever
baseurl=http://10.10.10.1/repos/centos/7/updates/x86_64/
gpgcheck=0
enabled=1

[root @ dns yum.repos.d] # yum očisti sve
Učitani dodaci: najbrže ogledalo, langpacks Čišćenje spremišta: centos-base centos-updates Čišćenje svega

[root @ dns yum.repos.d] # yum update
Učitani dodaci: najbrže ogledalo, centos-base langpacks | 3.4 kB 00:00 centos-ažuriranja | 3.4 kB 00:00 (1/2): centos-baza / primarni_db | 5.3 MB 00:00 (2/2): centos-updates / primary_db | 9.1 MB 00:00 Određivanje najbržih zrcala Nema paketa označenih za ažuriranje

Poruka «Ne (postoje) paketi označeni za ažuriranje» - «Nema paketa označenih za ažuriranje»Označava da su proglašavanjem najsuvremenijih spremišta koja su nam dostupna tokom instalacije instalirani upravo najnoviji paketi.

O kontekstu SELinux-a i vatrozidu

Ovaj ćemo članak - u osnovi - usmjeriti na implementaciju DNS i DHCP usluga, što je njegov glavni cilj.

Ako je bilo koji čitač tijekom postupka instalacije odabrao Sigurnosnu politiku, kao što je naznačeno u 06 Image referentnog članka «CentOS 7 Hypervisor I - SMB mreže»Koristi se za instalaciju ovog DNS - DHCP servera i utvrdite da ne znate kako pravilno konfigurirati SELinux i CentOS zaštitni zid, predlažemo da izvršite sljedeće:

Izmijenite datoteku / etc / sysconfig / selinux i promjena SELINUX = uvjeravanje por SELINUX = onemogući

[root @ dns ~] # nano / etc / sysconfig / selinux
# Ova datoteka kontrolira stanje SELinux-a na sistemu. # SELINUX = može uzeti jednu od ove tri vrijednosti: # prisiljavanje - SELinux sigurnosna politika se provodi. # dopušteno - SELinux ispisuje upozorenja umjesto da ih provodi. # onemogućeno - Nije učitana nijedna SELinux politika.
SELINUX = onemogućeno
# SELINUXTYPE = može uzeti jednu od tri dvije vrijednosti: # ciljano - ciljani procesi su zaštićeni, # minimalno - izmjena ciljane politike. Samo odabrani procesi su pr $ # mls - Višerazinska sigurnosna zaštita. SELINUXTYPE = ciljano

Zatim pokrenite sljedeće naredbe

[root @ dns ~] # setenforce 0
[root @ dns ~] # zaustavljanje zaštitnog zida usluge
Preusmjeravanje na / bin / systemctl zaustavlja firewalld.service

[root @ dns ~] # systemctl onemogući zaštitni zid
Uklonjena symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service. Uklonjena simbolična veza /etc/systemd/system/basic.target.wants/firewalld.service.

Ako implementirate DNS server okrenut ka Internetu, NE biste smjeli raditi gore navedeno, već ispravno konfigurirajte SELinux kontekst i zaštitni zid. Vidite "Konfiguracija servera sa GNU / Linuxom, autora Joela Barriosa Dueñasa" ili sama CentOS dokumentacija - Red Hat

Konfiguriramo BIND - named

  • El imenik /usr/share/doc/bind-9.9.4/ sadrži dobru količinu dokumentacije koju preporučujemo da pogledate prije nego što se upustite u internetsku pretragu, a da prije toga ne znate da na dohvat ruke i u svom domu možete pronaći ono što tražite

U mnogim distribucijama naziva se DNS usluga instalirana putem BIND paketa pod nazivom (Ime Daemon). U CentOS 7 instaliran je onemogućen prema zadanim postavkama, prema izlazu sljedeće naredbe, gdje stoji da je njegov status «onemogućeno«, I da je ovo stanje unaprijed definirano od strane njegovog» prodavača «- unaprijed postavljeno. Za zapisnik, BIND je besplatni softver.

Omogućavanje imenovane usluge

[root @ dns ~] # systemctl status imenovan
● named.service - Berkeley internetska domena (DNS) učitana: učitana (/usr/lib/systemd/system/named.service; onemogućeno; unaprijed postavljeno: onemogućeno) Aktivan: neaktivan (mrtav)

[root @ dns ~] # systemctl enable named
Izrađena je simbolična veza od /etc/systemd/system/multi-user.target.wants/named.service do /usr/lib/systemd/system/named.service.

[root @ dns ~] # systemctl početak imenovan

[root @ dns ~] # systemctl status imenovan
● named.service - Berkeley internetska domena (DNS) učitana: učitana (/usr/lib/systemd/system/named.service; omogućeno; unaprijed postavljeno: onemogućeno)
   Aktivno: aktivno (aktivno) od Sub 2017-01-28 13:22:38 EST; Prije 5 minuta Proces: 1990 ExecStart = / usr / sbin / named -u pod nazivom $ OPTIONS (code = exited, status = 0 / SUCCESS) Proces: 1988 ExecStartPre = / bin / bash -c if [! "$ DISABLE_ZONE_CHECKING" == "da"]; zatim / usr / sbin / named-checkconf -z /etc/named.conf; else echo "Provjera datoteka zona je onemogućena"; fi (code = exited, status = 0 / USPJEH) Glavni PID: 1993 (imenovan) CGroup: /system.slice/named.service └─1993 / usr / sbin / named -u named 28. januara 13:22:45 dns named [1993]: greška (mreža nedostupna) pri rješavanju './NS/IN': 2001: 500: 2f :: f # 53 28. januara 13:22:47 dns imenovana [1993]: rješavanje greške (mreža nedostupna) './ DNSKEY / IN ': 2001: 500: 3 :: 42 # 53 28. januara 13:22:47 dns imenovan [1993]: greška (mreža nedostupna) rješavanje' ./NS/IN ': 2001: 500: 3 :: 42 # 53 28. januara 13:22:47 dns imenovan [1993]: greška (mreža nedostupna) rješava './DNSKEY/IN': 2001: 500: 2d :: d # 53 28. januara 13:22:47 dns imenovan [1993] ]: greška (mreža nedostupna) pri rješavanju './NS/IN': 2001: 500: 2d :: d # 53 28. januara 13:22:47 dns imenovana [1993]: greška (mreža nedostupna) rješavanje './DNSKEY/ IN ': 2001: dc3 :: 35 # 53 28. januara 13:22:47 dns imenovan [1993]: greška (mreža nedostupna) rješavanje' ./NS/IN ': 2001: dc3 :: 35 # 53 28. januara 13: 22:47 dns imenovan [1993]: greška (mreža nedostupna) rješavanje './DNSKEY/IN': 2001: 7fe :: 53 # 53 28. januara 13:22:47 dns imenovana [1993]: greška (mreža nedostupna) res olving './NS/IN': 2001: 7fe :: 53 # 53 28. januara 13:22:48 dns imenovan [1993]: managed-keys-zone: Nije moguće preuzeti DNSKEY set '.': isteklo vrijeme

[root @ dns ~] # systemctl ponovno pokrenuto ime

[root @ dns ~] # systemctl status imenovan
● named.service - Berkeley internetska domena (DNS) učitana: učitana (/usr/lib/systemd/system/named.service; omogućena; unaprijed postavljena opcija dobavljača: onemogućena)
   Aktivno: aktivno (aktivno) od Sub 2017-01-28 13:29:41 EST; Pre 1s Proces: 1449 ExecStop = / bin / sh -c / usr / sbin / rndc stop> / dev / null 2> & 1 || / bin / kill -TERM $ MAINPID (kod = izašao, status = 0 / USPJEH) Proces: 1460 ExecStart = / usr / sbin / named -u pod nazivom $ OPTIONS (code = exited, status = 0 / SUCCESS) Proces: 1457 ExecStartPre = / bin / bash -c ako [! "$ DISABLE_ZONE_CHECKING" == "da"]; zatim / usr / sbin / named-checkconf -z /etc/named.conf; else echo "Provjera datoteka zona je onemogućena"; fi (kod = izašao, status = 0 / USPJEH) Glavni PID: 1463 (imenovan) CGroup: /system.slice/named.service └─1463 / usr / sbin / named -u imenovan 28. januara 13:29:41 dns imenovan [1463]: managed-keys-zone: datoteka dnevnika je zastarjela: uklanjanje datoteke dnevnika 28. januara 13:29:41 dns pod nazivom [1463]: managed-keys-zone: loaded serial 2. januara 28 13:29:41 dns imenovan [1463]: zona 0.in-addr.arpa/IN: učitana serijska linija 0. januara 28:13:29 dns imenovana [41]: zona localhost.localdomain / IN: učitana serijska linija 1463. januara 0:28:13 dns imenovan [29]: zona 41.in-addr.arpa/IN: učitan serijski 1463 1.0.0.127. januara 0:28:13 dns imenovan [29]: zona 41 .1463.ip1.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.arpa / IN: učitan serijski 6 0. januara 28:13:29 dns pod nazivom [41]: zone localhost / IN: učitan serijski 1463 0. januara 28 : 13: 29 dns imenovan [41]: sve zone su učitane 1463. januara 28:13:29 dns imenovano [41]: pokrenuto 1463. januara 28:13:29 dns systemd [41]: Pokrenuto Berkeley Internet Name Domain (DNS).

Nakon što omogućimo uslugu pod nazivom i pokrećemo ga prvi put, izlaz naredbe systemctl status imenovan pokazuje greške. Kada ponovo pokrenemo uslugu u nastavku, pod nazivom kreira sve konfiguracijske datoteke koje su prema zadanim postavkama potrebne za njegov ispravan rad. Stoga, kada ponovo izvršimo naredbu systemctl status imenovan više se ne prikazuju greške.

  • Dragi, skupi i zahtjevni čitaoče: ako želite saznati -barem- koja staza vodi do kraja zečje rupe, molim vas, mirno pročitajte detaljne izlaze svake naredbe.  Sigurno će vam se članak činiti malo dugim, ali nećete poreći da dobija na objašnjenju i jasnoći.

Izmjenjujemo datoteku /etc/named.conf

Mnogi komentari čitatelja izriču -Ne kažem to– navika koju imaju održavaoci različitih distribucija Linuxa da konfiguracijske datoteke sistema stavljaju u mape s različitim imenima ovisno o distribuciji. Oni su u pravu. Ali šta mi, jednostavni korisnici koji koriste ove distribucije, možemo učiniti? Adapt! 

Inače, u FreeBSD-u, UNIX-ovom klonu «Poreklo», datoteka je u /usr/local/etc/namedb/named.conf; dok je bio u Debianu, osim što se podijelio na četiri datoteke named.conf, named.conf.options, named.conf.default-zone i named.conf.local, nalazi se u mapi / etc / bind /. Oni koji žele znati gdje ga openSUSE postavlja, pročitajte «DNS i DHCP u openSUSE 13.2 Harlequin - MSP mreže«. Čitaoci su u pravu! 

I kao što uvijek radimo: prije bilo čega mijenjanja, originalnu konfiguracijsku datoteku spremamo pod drugim imenom.

[root @ dns ~] # cp /etc/named.conf /etc/named.conf.original

Da olakša život, umjesto da generira ključ TSIG za dinamička DNS ažuriranja putem DHCP-a kopiramo isti ključ rndc.key como dhcp.key.

[root @ dns ~] # cp /etc/rndc.key /etc/dhcp.key

[root @ dns ~] # nano /etc/dhcp.key
ključ "dhcp-ključ" {algoritam hmac-md5; tajna "OI7Vs + TO83L7ghUm2xNVKg =="; };

Tako da pod nazivom može pročitati upravo kopiranu datoteku, mijenjamo njezinu vlasničku grupu:

[root @ dns ~] # chown root: named /etc/dhcp.key [root @ dns ~] # ls -l /etc/rndc.key /etc/dhcp.key -rw-r -----. 1 root imenom 77 28. januara 16:36 /etc/dhcp.key -rw-r -----. 1 root imenom 77 28. januara 13:22 /etc/rndc.key

Mali detalji poput prethodnog su ono što nas može izluditi pokušavajući shvatiti, sad ... gdje je problem ...? sa još nekih pridjeva, koje ne pišemo iz poštovanja prema Uglednom.

Sada ako - konačno! - izmijenimo datoteku /etc/ named.conf. Izmjene ili dopune koje smo napravili u odnosu na original su u podebljano. Pogledajte dobro koliko ih je malo.

[root @ dns ~] # nano /etc/named.conf
// // named.conf // // Osigurava Red Hat paket za povezivanje za konfiguriranje ISC BIND-a pod imenom (8) DNS // poslužitelj kao poslužitelj imena samo za predmemoriranje (samo kao lokalni DNS razrješivač). // // Pogledajte / usr / share / doc / bind * / sample / na primjer imenovane konfiguracijske datoteke. //

// Lista za kontrolu pristupa koja izjavljuje koje će mreže moći konsultovati
// moj server imenovan
acl izgledao {
 127.0.0.0 / 8;
 192.168.10.0 / 24;
};

opcije {
 // Izjavljujem da imenovani demon također osluškuje sučelje
 // eth0 koji ima IP: 192.168.10.5
    port za preslušavanje 53 {127.0.0.1; 192.168.10.5; };
    Listen-on-v6 port 53 {:: 1; }; direktorij "/ var / named"; dump-datoteka "/var/named/data/cache_dump.db"; statistička datoteka "/var/named/data/named_stats.txt"; datoteka memstatistike "/var/named/data/named_mem_stats.txt";

 // Izjava o špediterima
 // špediteri {
 // 0.0.0.0;
 // 1.1.1.1;
 //};
    // prvo prosljeđivanje;

    // Dopuštam upite samo za moj zaglibljeni ACL
    dozvoli-upit { mired; }; // Za provjeru naredbom dig desdelinux.fan axfr // samo sa SysAdmin radne stanice i lokalnog hosta // Nemamo podređene DNS servere. Ne treba nam... do sada.
 allow-transfer {localhost; 192.168.10.1; };

    / * - Ako gradite AUTORITATIVNI DNS poslužitelj, NE omogućite rekurziju. - Ako gradite RECURZIVNI (predmemorirani) DNS poslužitelj, morate omogućiti rekurziju. - Ako vaš rekurzivni DNS poslužitelj ima javnu IP adresu, MORATE omogućiti kontrolu pristupa kako biste ograničili upite na vaše legitimne korisnike. Ako to ne učinite, vaš će server postati dijelom napada DNS pojačanja. Implementacija BCP38 unutar vaše mreže znatno bi smanjila takvu površinu napada * /
    // Želimo AUTHORITY server za naš LAN - SME
    rekurzija br;

    dnssec-enable yes; dnssec-validacija da; / * Put do ISC DLV ključa * / bindkeys-file "/etc/named.iscdlv.key"; direktorij upravljanih ključeva "/ var / named / dynamic"; pid-datoteka "/run/named/named.pid"; datoteka sesije ključeva "/run/named/session.key"; }; evidentiranje {channel default_debug {datoteka "data / named.run"; dinamika ozbiljnosti; }; }; zona "." IN {tip nagovještaja; datoteka "named.ca"; }; uključuju "/etc/named.rfc1912.zones"; uključuju "/etc/named.root.key";

// Uključujemo TSIG ključ za dinamička DNS ažuriranja // od DHCP-a
uključuju "/etc/dhcp.key";

// Izjava o imenu, tipu, lokaciji i dozvoli za ažuriranje
// zona DNS zapisa // Obje zone su GOSPODARSKE
zona"desdelinux.fan" {
 tip master;
 fajl "dynamic/db.desdelinux.fan";
 allow-update {ključ dhcp-ključ; };
};

zona "10.168.192.in-addr.arpa" {
 tip master;
 datoteka "dynamic / db.10.168.192.in-addr.arpa";
 allow-update {ključ dhcp-ključ; };
};

Provjeravamo sintaksu

[root @ dns ~] # named-checkconf 
[root @ dns ~] #

Budući da gornja naredba ne vraća ništa, sintaksa je u redu. Međutim, ako izvršimo istu naredbu, ali s opcijom -z, izlaz će biti:

[root @ dns ~] # named-checkconf -z
zona localhost.localdomain/IN: učitana serijska 0 zona localhost/IN: učitana serijska 0 zona 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.0. .ip6.arpa/IN: učitana serijska 0 zona 1.0.0.127.in-addr.arpa/IN: učitana serijska 0 zona 0.in-addr.arpa/IN: učitana serijska 0 zona desdelinux.fan/IN: učitavanje iz glavnog fajla dynamic/db.desdelinux.fan nije uspio: datoteka nije pronađena zona desdelinux.fan/IN: nije učitano zbog grešaka. _default/desdelinux.fan/IN: datoteka nije pronađena zona 10.168.192.in-addr.arpa/IN: učitavanje iz master datoteke dynamic/db.10.168.192.in-addr.arpa nije uspjelo: datoteka nije pronađena zona 10.168.192.in- addr.arpa/IN: nije učitano zbog grešaka. _default/10.168.192.in-addr.arpa/IN: datoteka nije pronađena

Naravno da se radi o greškama koje još uvijek nisu stvorene za našu domenu DNS registracionim zonama.

  • Za više informacija o naredbi named-checkconf, trči čovjek po imenu-checkconf, prije nego što potražite bilo kakve druge informacije na Internetu. Uvjeravam vas da ćete uštedjeti dosta vremena.

Kreiramo datoteku Direct Zone desdelinux.fan

…ali ne bez malo teorije. 

Kao predložak za kreiranje datoteke podataka o zoni možemo uzeti /var/named/named.emptyili the /usr/share/doc/bind-9.9.4/sample/var/named/named.empty. Oboje su identični.

[root @ dns ~] # cat /var/named/named.empty 
$ TTL 3H @ IN SOA @ rname.invalid. (0; serijski 1D; osvježi 1H; pokušaj 1W; istječe 3H); minimalno ili negativno vrijeme predmemoriranja za život NS @ A 127.0.0.1 AAAA :: 1

Doba života - Vrijeme je za TTL SOA zapis

Uzmimo zagradu da objasnimo TTL - Vrijeme je za život iz registra SOA - Početak autoriteta Master Zone. Zanimljivo je znati njihova značenja kada želimo izmijeniti bilo koju od njihovih vrijednosti.

$ TTL: Vrijeme života - Vrijeme je za život za sve zapise u datoteci koji slijede deklaraciju (ali prethode bilo kojoj drugoj $ TTL deklaraciji) i nemaju eksplicitnu TTL deklaraciju.

serijski: Serijski broj podataka zone. Svaki put kada ručno modificiramo DNS zapis u zoni, moramo povećati taj broj za 1, posebno ako imamo pomoćne ili sekundarne servere. Svaki put kada sekundarni ili pomoćni DNS server kontaktira svoj glavni server, on traži serijski broj matičnih podataka. Ako je serijski broj podređenog računara manji, tada su podaci za tu zonu na podređenom poslužitelju zastarjeli, a podređeni uređaj vrši prijenos zone kako bi se ažurirao.

refresh: Službenom poslužitelju govori vremenski interval u kojem bi trebao provjeriti jesu li njegovi podaci ažurirani u odnosu na glavno računalo.

pokušaj ponovo: Ako glavni poslužitelj nije dostupan - zato što se razbolio, recimo - za slave nakon vremenskog intervala refresh, pokušaj ponovo Kaže robovu koliko treba čekati prije ponovnog pokušaja kontakta sa svojim gospodarom.

ističe: Ako slave ne može neko vrijeme kontaktirati svog gospodara ističeDakle, ako je odnos slave-master zone zajeban, a slave server nema drugog izbora nego da istekne dotična zona. Istek zone podređenim DNS poslužiteljem znači da će prestati odgovarati na DNS upite povezane s tom zonom, jer su dostupni podaci prestari da bi bili korisni.

  • Gore nas uči posredno i opterećeno velikim zdravim razumom - najmanje uobičajenim čulima - da ako nam za rad našeg MSP-a nisu potrebni poslužni DNS serveri, nećemo ga implementirati, osim ako nisu strogo neophodni. Pokušajmo uvijek ići od jednostavnog ka složenom.

minimum: U verzijama pre VEZA 8.2, posljednji zapis SOA Takođe ukazuje na zadani životni vijek - Zadano vrijeme za život, i negativni životni vijek predmemorije - Vrijeme negativnog predmemoriranja za život za zonu. Ovo se vrijeme odnosi na sve negativne odgovore dane od strane mjerodavnog servera za Zonu.

Datoteka zone /var/named/dynamic/db.desdelinux.fan

[root@dns ~]# nano /var/named/dynamic/db.desdelinux.fan
$TTL 3H @ IN SOA dns.desdelinux.fan. root.dns.desdelinux.fan. (1; serijski 1D; osvježi 1H; pokušaj ponovo 1W; istekne 3H); minimum ili ; Negativno vrijeme keširanja za život; @ IN NS dns.desdelinux.fan. @ IN MX 10 email.desdelinux.fan. @ IN TXT "FromLinux, vaš blog posvećen slobodnom softveru" ; sysadmin IN A 192.168.10.1 ad-dc IN A 192.168.10.3 fileserver IN A 192.168.10.4 dns IN A 192.168.10.5 proxyweb IN A 192.168.10.6 blog IN A 192.168.10.7 blog IN A 192.168.10.8 192.168.10.9 mail IN A XNUMX

Provjeravamo /var/named/dynamic/db.desdelinux.fan

[root@dns ~]# imenovana-kontrolna zona desdelinux.fan /var/named/dynamic/db.desdelinux.fan
zona desdelinux.fan/IN: učitan serijski 1 OK

Kreiramo datoteku Reverse Zone 10.168.192.in-addr.arpa

  • SOA zapis ove zone je isti kao i zapis direktne zone bez razmatranja MX zapisa..
[root @ dns ~] # nano /var/named/dynamic/db.10.168.192.in-addr.arpa
$TTL 3H @ IN SOA dns.desdelinux.fan. root.dns.desdelinux.fan. (1; serijski 1D; osvježi 1H; pokušaj ponovo 1W; istekne 3H); minimum ili ; Negativno vrijeme keširanja za život; @ IN NS dns.desdelinux.fan. ; 1 IN PTR sysadmin.desdelinux.fan. 3 IN PTR ad-dc.desdelinux.fan. 4 IN PTR server datoteka.desdelinux.fan. 5 IN PTR dns.desdelinux.fan. 6 IN PTR proxyweb.desdelinux.fan. 7 IN PTR blog.desdelinux.fan. 8 IN PTR ftpserver.desdelinux.fan. 9 U PTR pošti.desdelinux.fan.

[root @ dns ~] # named-checkzone 10.168.192.in-addr.arpa /var/named/dynamic/db.10.168.192.in-addr.arpa 
zona 10.168.192.in-addr.arpa/IN: učitan serijski 1 OK

Prije ponovnog pokretanja imenovanog provjeravamo njegovu konfiguraciju

  • Dok ne budemo sigurni da konfiguracijske datoteke imenovanog named.conf i njegove zonske datoteke nisu ispravno konfigurirane, predlažemo da ne pokrećemo imenovani demon. Ako to učinimo i kasnije izmijenimo datoteku zone, moramo povećati serijski broj modificirane zone za 1.
  • Pogledajmo "." na kraju imena domena i hosta.
[root @ dns ~] # named-checkconf 
[root @ dns ~] # named-checkconf -z
zona localhost.localdomain/IN: učitana serijska 0 zona localhost/IN: učitana serijska 0 zona 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.0. .ip6.arpa/IN: učitana serijska 0 zona 1.0.0.127.in-addr.arpa/IN: učitana serijska 0 zona 0.in-addr.arpa/IN: učitana serijska 0 zona desdelinux.fan/IN: učitana serija 1 zona 10.168.192.in-addr.arpa/IN: učitana serija 1

Sve trenutne imenovane konfiguracije

Da bismo stekli jasnoću, i iako članak postaje dugačak, dajemo potpuni izlaz naredbe named -checkconf -zp:

[root @ dns ~] # named-checkconf -zp
zona localhost.localdomain/IN: učitana serijska 0 zona localhost/IN: učitana serijska 0 zona 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.0. .ip6.arpa/IN: učitana serijska 0 zona 1.0.0.127.in-addr.arpa/IN: učitana serijska 0 zona 0.in-addr.arpa/IN: učitana serijska 0 zona desdelinux.fan/IN: učitana serijska 1 zona 10.168.192.in-addr.arpa/IN: učitana serijska 1 opcija { bindkeys-file "/etc/named.iscdlv.key"; datoteka ključa sesije "/run/named/session.key"; direktorij "/var/named"; dump-file "/var/named/data/cache_dump.db"; port za slušanje 53 { 127.0.0.1/32; 192.168.10.5/32; }; slušaj-na-v6 port 53 { ::1/128; }; direktorij upravljanih ključeva "/var/named/dynamic"; memstatistics-file "/var/named/data/named_mem_stats.txt"; pid-datoteka "/run/named/named.pid"; statistika-datoteka "/var/named/data/named_stats.txt"; dnssec-enable da; dnssec-validacija da; rekurzija br; dozvoli-upit { "gledao"; }; dozvoli-transfer { 192.168.10.1/32; }; }; acl "gledao" { 127.0.0.0/8; 192.168.10.0/24; }; logovanje { kanal "default_debug" { fajl "data/named.run"; dinamička ozbiljnost; }; }; ključ "dhcp-key" { algoritam "hmac-md5"; tajna "OI7Vs+TO83L7ghUm2xNVKg=="; }; zona "." IN { type hint; fajl "named.ca"; }; zona "localhost.localdomain" IN { tip master; fajl "named.localhost"; dopusti ažuriranje { "none"; }; }; zona "localhost" IN { tip master; fajl "named.localhost"; dopusti ažuriranje { "none"; }; }; zona "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.0.ip6.arpa" IN { type master; datoteka "named.loopback"; dopusti ažuriranje { "none"; }; }; zona "1.0.0.127.in-addr.arpa" IN { type master; datoteka "named.loopback"; dopusti ažuriranje { "none"; }; }; zona "0.in-addr.arpa" IN { type master; fajl "named.empty"; dopusti ažuriranje { "none"; }; }; zona"desdelinux.fan" { type master; fajl "dynamic/db.desdelinux.fan"; dozvoli ažuriranje { ključ "dhcp-key"; }; }; zona "10.168.192.in-addr.arpa" { type master; fajl "dynamic/db.10.168.192.in-addr.arpa "Dozvoli-ažuriranje {tipka" DHCP-taster ";};};;"; upravljane ključeve {"." Inicijal-ključ 257 3 8 "aweaaaagaiklvzrpc6iuxhjhvvljqbsew7v9gccjfd29yi0ezracqqbgczh / rstioo8g 6nfnfl58mtjr KXOX BFDAUEVPQUYEHG0NZWAJQ0VNMVDXP / VHL8M / QZXKJF0 / EFUCP2GAD F37DSV9DOBQZGUL496SGICGOYL5OYQDXFZ2Rels Qageu + iPadttj6AsRtaoub6ontcmqramrlkbp68dfwhyb0n1knnnulq qxa +Uk9ihz7="; };
  • Slijedeći postupak izmjene named.conf Prema našim potrebama i provjeri, te stvaranju svake datoteke zone i provjeri, sumnjamo da ćemo se morati suočiti s velikim problemima u konfiguraciji. Na kraju shvatimo da je to dječačka igra s mnogo koncepata i nesretnom sintaksom. 

Provjere su dale zadovoljavajuće rezultate, stoga možemo ponovno pokrenuti BIND - pod nazivom.

Ponovo pokrećemo imenovani i provjeravamo njegov status

[root @ dns ~] # systemctl ponovno pokrenite named.service
[root @ dns ~] # systemctl status named.service

Ako dobijemo bilo kakvu grešku u izlazu posljednje naredbe, moramo ponovno pokrenuti imenovana.usluga i provjerite svoj status. Ako su greške nestale, usluga se uspješno pokrenula. U suprotnom, moramo izvršiti temeljit pregled svih izmijenjenih i kreiranih datoteka i ponoviti postupak.

Ispravan izlaz statusa trebao bi biti:

[root @ dns ~] # systemctl status named.service
● named.service - Berkeley internetska domena (DNS) učitana: učitana (/usr/lib/systemd/system/named.service; omogućena; unaprijed postavljena opcija dobavljača: onemogućena) Aktivan: aktivan (trčanje) od ned 2017 01:29:10 EST; Prije 05 min 32 s Proces: 2 ExecStop=/bin/sh -c /usr/sbin/rndc stop > /dev/null 57>&1777 || /bin/kill -TERM $MAINPID (kod=izišao, status=2/USPEH) Proces: 1 ExecStart=/usr/sbin/named -u pod nazivom $OPTIONS (kod=izišao, status=0/SUCCESS) Proces: 1788 ExecStartPre =/bin/bash -c ako [ ! "$DISABLE_ZONE_CHECKING" == "da" ]; zatim /usr/sbin/named-checkconf -z /etc/named.conf; else echo "Provjera datoteka zona je onemogućena"; fi (kod=izišao, status=0/USPJEH) Glavni PID: 1786 (imenovan) CGroup: /system.slice/named.service └─0 /usr/sbin/named -u imenovan 1791. januar 1791:29:10 dns named [05]: zona 32.in-addr.arpa/IN: učitana serijska 1791. januara 1.0.0.127. 0:29:10 dns named[05]: zona 32.in-addr.arpa/IN: učitana serija 1791. januara 10.168.192 1:29:10 dns imenovan[05]: zona 32.ip1791.arpa/IN : učitana serija 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.0 Jan 6 0:29:10 dns named[05]: zona desdelinux.fan/IN: učitano serijski 1. 29. 10:05:32 dns named[1791]: zona localhost.localdomain/IN: učitano serijski 0. siječnja 29:10:05 dns named[32]: zona localhost/IN: učitano serial 1791 Jan 0 29:10:05 dns named[32]: sve zone su učitane
29. januara 10:05:32 dns imenovan [1791]: trčanje
29. januara 10:05:32 dns systemd [1]: Pokrenut je Berkeley Internet Name Domain (DNS). 29. januara 10:05:32 dns imenovan [1791]: zona 10.168.192.in-addr.arpa/IN: slanje obavještenja (serijski 1)

Čekovi

Provjere se mogu izvoditi na istom serveru ili na uređaju povezanom na LAN. Radije ih radimo iz tima sysadmin.desdelinux.fan kojoj smo dali izričito odobrenje za vršenje zonskih transfera. Fajl /etc/resolv.conf tog tima je sljedeći:

buzz @ sysadmin: ~ $ cat /etc/resolv.conf 
# Generirano pretraživanjem NetworkManagera desdelinux.fan server imena 192.168.10.5

buzz@sysadmin:~$ dig desdelinux.fan axfr
; <<>> DiG 9.9.5-9+deb8u1-Debian <<>> desdelinux.fan axfr ;; globalne opcije: +cmd
desdelinux.fan. 10800 U SOA dns.desdelinux.fan. root.dns.desdelinux.fan. 1 86400 3600 604800 10800
desdelinux.fan. 10800 IN NS dns.desdelinux.fan.
desdelinux.fan. 10800 IN MX 10 email.desdelinux.fan.
desdelinux.fan. 10800 IN TXT "FromLinux, vaš blog posvećen slobodnom softveru" ad-dc.desdelinux.fan. 10800 U blogu 192.168.10.3.desdelinux.fan. 10800 U 192.168.10.7 dns.desdelinux.fan. 10800 U NA 192.168.10.5 server datoteka.desdelinux.fan. 10800 U 192.168.10.4 ftpserveru.desdelinux.fan. 10800 U 192.168.10.8 pošti.desdelinux.fan. 10800 U 192.168.10.9 proxyweb.desdelinux.fan. 10800 U 192.168.10.6 sysadmin.desdelinux.fan. 10800 U NA 192.168.10.1
desdelinux.fan. 10800 U SOA dns.desdelinux.fan. root.dns.desdelinux.fan. 1 86400 3600 604800 10800 ;; Vrijeme upita: 0 ms ;; SERVER: 192.168.10.5#53(192.168.10.5) ;; KADA: ned, 29. januar 11:44:18 EST 2017 ;; XFR veličina: 13 zapisa (poruka 1, bajtova 385)

buzz @ sysadmin: ~ $ dig 10.168.192.in-addr.arpa axfr
; <<>> DiG 9.9.5-9+deb8u1-Debian <<>> 10.168.192.in-addr.arpa axfr ;; globalne opcije: +cmd 10.168.192.in-addr.arpa. 10800 U SOA dns.desdelinux.fan.10.168.192.in-addr.arpa. root.dns.desdelinux.fan.10.168.192.in-addr.arpa. 1 86400 3600 604800 10800 10.168.192.in-addr.arpa. 10800 IN NS dns.desdelinux.fan. 1.10.168.192.in-addr.arpa. 10800 IN PTR sysadmin.desdelinux.fan. 3.10.168.192.in-addr.arpa. 10800 IN PTR ad-dc.desdelinux.fan. 4.10.168.192.in-addr.arpa. 10800 IN PTR server datoteka.desdelinux.fan. 5.10.168.192.in-addr.arpa. 10800 IN PTR dns.desdelinux.fan. 6.10.168.192.in-addr.arpa. 10800 IN PTR proxyweb.desdelinux.fan. 7.10.168.192.in-addr.arpa. 10800 IN PTR blog.desdelinux.fan. 8.10.168.192.in-addr.arpa. 10800 IN PTR ftpserver.desdelinux.fan. 9.10.168.192.in-addr.arpa. 10800 PTR poštom.desdelinux.fan. 10.168.192.in-addr.arpa. 10800 U SOA dns.desdelinux.fan.10.168.192.in-addr.arpa. root.dns.desdelinux.fan.10.168.192.in-addr.arpa. 1 86400 3600 604800 10800 ;; Vrijeme upita: 0 ms ;; SERVER: 192.168.10.5#53(192.168.10.5) ;; KADA: ned, 29. januar 11:44:57 EST 2017 ;; XFR veličina: 11 zapisa (poruke 1, bajtova 352)

buzz@sysadmin:~$ dig U SOA desdelinux.fan
buzz@sysadmin:~$ dig IN MX desdelinux.fan buzz@sysadmin:~$ dig U TXT desdelinux.fan
buzz @ sysadmin: ~ $ host dns
dns.desdelinux.fan ima adresu 192.168.10.5
buzz @ sysadmin: ~ $ host sysadmin
sysadmin.desdelinux.fan ima adresu 192.168.10.1 ... I sve druge provjere koje su nam potrebne
  • Do sada imamo osnovu za DNS server na našoj mreži malih i srednjih preduzeća. Nadamo se da ste uživali u cijeloj proceduri, koja je bila prilično jednostavna, zar ne? 

Instaliramo i konfigurišemo DHCP

[root @ dns ~] # yum instalirati dhcp
Učitani dodaci: najbrže ogledalo, centos-base langpacks | 3.4 kB 00:00:00 centos-ažuriranja | 3.4 kB 00:00:00 Učitavanje brzina zrcala iz predmemorirane datoteke hosta Rješavanje ovisnosti -> Pokretanje testa transakcije ---> Paket dhcp.x86_64 12: 4.2.5-42.el7.centos mora biti instaliran -> Rješavanje ovisnosti raskinute riješene zavisnosti =============================================== =================================================== =================================== Arhitektura paketa Verzija spremišta Veličina =========== =================================================== ================================================== ====================== Instaliranje: dhcp x86_64 12: 4.2.5-42.el7.centos centos-base 511 k Sažetak transakcije ==== =================================================== =================================================== ============================ Instaliraj 1 paket Ukupna veličina preuzimanja: 511k Instalirana veličina: 1.4 M Je li ovo u redu [y / d / N]: y Preuzimanje paketa: dhcp-4.2.5-42.el7.centos.x86_64.rpm | 511 kB 00:00:00 Pokretanje provjere transakcije Pokretanje testa transakcije Provjera transakcije uspjela Izvođenje transakcije Instaliranje: 12: dhcp-4.2.5-42.el7.centos.x86_64 1/1 Provjera: 12: dhcp-4.2.5-42. el7.centos.x86_64 1/1 Instalirano: dhcp.x86_64 12: 4.2.5-42.el7.centos Gotovo!

[root @ dns ~] # nano /etc/dhcp/dhcpd.conf
# # Konfiguracioni fajl DHCP servera. # vidi /usr/share/doc/dhcp*/dhcpd.conf.example # vidi dhcpd.conf(5) man stranicu # ddns-update-style interim; ddns-ažuriranja uključena; ddns-domainname "desdelinux.fan."; ddns-rev-domainname "in-addr.arpa."; zanemari ažuriranja klijenta; autoritativno; opcija IP-prosljeđivanje isključeno; opcija naziv domene "desdelinux.fan"; # opcija ntp-servers 0.pool.ntp.org, 1.pool.ntp.org, 2.pool.ntp.org, 3.pool.ntp.org; uključuje "/etc/dhcp.key" zonu desdelinux.fan. { primarni 127.0.0.1; ključ dhcp-ključ; } zona 10.168.192.in-addr.arpa. { primarni 127.0.0.1; ključ dhcp-ključ; } dijeljena-mreža redlocal { podmreža 192.168.10.0 mrežna maska ​​255.255.255.0 { opcija ruteri 192.168.10.1; opcija subnet-mask 255.255.255.0; opcija emitovanja-adresa 192.168.10.255; opcija serveri imena domene 192.168.10.5; opcija netbios-name-servers 192.168.10.5; raspon 192.168.10.30 192.168.10.250; } } # KRAJ dhcpd.conf

[root @ dns ~] # dhcpd -t
Konzorcij Internet sistema DHCP Server 4.2.5 Copyright 2004-2013 Konzorcij Internet sistema. Sva prava zadržana. Za informacije, posjetite https://www.isc.org/software/dhcp/ Ne traži LDAP jer ldap-server, ldap-port i ldap-base-dn nisu navedeni u konfiguracijskoj datoteci

[root @ dns ~] # systemctl omogući dhcpd
Kreirana je simbolična veza od /etc/systemd/system/multi-user.target.wants/dhcpd.service do /usr/lib/systemd/system/dhcpd.service.

[root @ dns ~] # systemctl start dhcpd

[root @ dns ~] # systemctl status dhcpd
● dhcpd.service - Učitani demon DHCPv4 poslužitelja: učitan (/usr/lib/systemd/system/dhcpd.service; omogućeno; unaprijed postavljeno: dobavljač onemogućen) Aktivan: aktivan (pokrenut) od doma 2017-01-29 12:04:59 ITS T; Prije 23s Dokumenti: man: dhcpd (8) man: dhcpd.conf (5) Glavni PID: 2381 (dhcpd) Status: "Otpremanje paketa ..." Grupa: /system.slice/dhcpd.service └─2381 / usr / sbin / dhcpd -f -cf /etc/dhcp/dhcpd.conf -user dhcpd -group dhcpd --no-pid 29. januara 12:04:59 dns dhcpd [2381]: Internet Systems Consortium DHCP Server 4.2.5 29. januara 12 : 04: 59 dns dhcpd [2381]: Copyright 2004-2013 Internet Systems Consortium. 29. januara 12:04:59 dns dhcpd [2381]: Sva prava pridržana. 29. januara 12:04:59 dns dhcpd [2381]: Za informacije, posjetite https://www.isc.org/software/dhcp/ 29. januara 12:04:59 dns dhcpd [2381]: Ne traži LDAP od ldap -server, ldap-port i ldap-base-dn nisu navedeni u konfiguracijskoj datoteci 29. januara 12:04:59 dns dhcpd [2381]: Napisao je 0 zakupa u datoteku zakupa. 29. januara 12:04:59 dns dhcpd [2381]: Slušanje na LPF / eth0 / 52: 54: 00: 12: 17: 04 / redlocal 29. januara 12:04:59 dns dhcpd [2381]: Slanje na LPF / eth0 / 52: 54: 00: 12: 17: 04 / redlocal 29. januara 12:04:59 dns dhcpd [2381]: Slanje na Socket-u / rezervni / rezervni-mreža 29. januara 12:04:59 dns systemd [1]: Pokrenuto DHCPv4 poslužitelj Daemon.

Šta treba učiniti?

Jednostavno. Pokrenite Windows 7 ili drugi klijent sa besplatnim softverom i započnite testiranje i provjeru. Učinili smo to sa dva klijenta: sedam.desdelinux.fan y suse-desktop.desdelinux.fan. Provjere su bile sljedeće:

buzz @ sysadmin: ~ $ host sedam
sedam.desdelinux.fan ima adresu 192.168.10.30

buzz@sysadmin:~$ host sedam.desdelinux.fan
sedam.desdelinux.fan ima adresu 192.168.10.30

buzz@sysadmin:~$ dig U TXT sedam.desdelinux.fan
.... ;; ODJELJAK PITANJA: ;sedam.desdelinux.fan. IN TXT ;; ODJELJAK ZA ODGOVORE: sedam.desdelinux.fan. 3600 U TXT-u"31b7228ddd3a3b73be2fda9e09e601f3e9"....

Preimenujemo tim "sedam" u "LAGER" i ponovo pokrećemo sistem. Nakon ponovnog pokretanja novog LAGER-a, provjeravamo:

buzz @ sysadmin: ~ $ host sedam
Nije pronađen domaćin sedam: 5 (ODBIJENO)

buzz@sysadmin:~$ host sedam.desdelinux.fan
Domaćin sedam.desdelinux.fan nije pronađen: 3(NXDOMAIN)

buzz@sysadmin: ~ $ host lager
lager.desdelinux.fan ima adresu 192.168.10.30

buzz@sysadmin:~$host lager.desdelinux.fan
lager.desdelinux.fan ima adresu 192.168.10.30

buzz@sysadmin:~$ dig IN TXT lager.desdelinux.fan
.... ;; ODJELJAK PITANJA: ;lager.desdelinux.fan. IN TXT ;; ODJELJAK ZA ODGOVORE: lager.desdelinux.fan. 3600 U TXT-u"31b7228ddd3a3b73be2fda9e09e601f3e9"....

Što se tiče klijenta suse-desktop:

buzz @ sysadmin: ~ $ host suse-dektop
Domaćin suse-dektop nije pronađen: 5 (ODBIJENO)

buzz @ sysadmin: ~ $ host suse-desktop
suse-desktop.desdelinux.fan ima adresu 192.168.10.33

buzz@sysadmin:~$ host suse-desktop.desdelinux.fan
suse-desktop.desdelinux.fan ima adresu 192.168.10.33

buzz @ sysadmin: ~ $ host 192.168.10.33
33.10.168.192.in-addr.arpa pokazivač imena domene suse-desktop.desdelinux.fan.

buzz @ sysadmin: ~ $ host 192.168.10.30
30.10.168.192.in-addr.arpa pokazivač naziva domene LAGER.desdelinux.fan.
buzz @ sysadmin: ~ $ dig -x 192.168.10.33
.... ;; ODJELJAK ZA PITANJA: ;33.10.168.192.in-addr.arpa. IN PTR ;; ODJELJAK ZA ODGOVORE: 33.10.168.192.in-addr.arpa. 3600 IN PTR suse-desktop.desdelinux.fan. ;; ODJELJAK O VLASTI: 10.168.192.in-addr.arpa. 10800 IN NS dns.desdelinux.fan. ;; DODATNA ODJELJAK: dns.desdelinux.fan. 10800 U NA 192.168.10.5 ....

buzz@sysadmin:~$ dig IN TXT suse-desktop.desdelinux.fan....
;suse-desktop.desdelinux.fan. IN TXT ;; SEKCIJA ZA ODGOVOR: suse-desktop.desdelinux.fan. 3600 U TXT-u "31b78d287769160c93e6dca472e9b46d73"

;; ODJELJAK VLASTI:
desdelinux.fan. 10800 IN NS dns.desdelinux.fan. ;; DODATNA ODJELJAK: dns.desdelinux.fan. 10800 U NA 192.168.10.5
....

Izvršimo i sljedeće naredbe

[root@dns ~]# kop desdelinux.fan axfr
; <<>> DiG 9.9.4-RedHat-9.9.4-29.el7_2.4 <<>> desdelinux.fan axfr ;; globalne opcije: +cmd
desdelinux.fan. 10800 U SOA dns.desdelinux.fan. root.dns.desdelinux.fan. 6 86400 3600 604800 10800
desdelinux.fan. 10800 IN NS dns.desdelinux.fan.
desdelinux.fan. 10800 IN MX 10 email.desdelinux.fan.
desdelinux.fan. 10800 IN TXT "FromLinux, vaš blog posvećen slobodnom softveru" ad-dc.desdelinux.fan. 10800 U blogu 192.168.10.3.desdelinux.fan. 10800 U 192.168.10.7 dns.desdelinux.fan. 10800 U NA 192.168.10.5 server datoteka.desdelinux.fan. 10800 U 192.168.10.4 ftpserveru.desdelinux.fan. 10800 U 192.168.10.8 LAGER.desdelinux.fan. 3600 U TXT-u"31b7228ddd3a3b73be2fda9e09e601f3e9"LAGER.desdelinux.fan.   3600 U e-poruci 192.168.10.30.desdelinux.fan. 10800 U 192.168.10.9 proxyweb.desdelinux.fan. 10800 IN A 192.168.10.6 suse-desktop.desdelinux.fan. 3600 U TXT-u"31b78d287769160c93e6dca472e9b46d73" suse-desktop.desdelinux.fan. 3600 U A 192.168.10.33 sysadmin.desdelinux.fan. 10800 U NA 192.168.10.1
desdelinux.fan. 10800 U SOA dns.desdelinux.fan. root.dns.desdelinux.fan. 6 86400 3600 604800 10800

U gornjem izlazu istaknuli smo dalje podebljano u TTL -u sekundama za računare s IP adresama koje dodjeljuje DHCP usluga oni koji imaju eksplicitnu deklaraciju TTL 3600 koju daje DHCP. Fiksne IP adrese vode se prema $ TTL od 3H -3 sata = 10800 sekundi - deklarisanom u SOA zapisu svake datoteke zone.

Oni mogu na isti način provjeriti zonu obrnutog.

[root @ dns ~] # dig 10.168.192.in-addr.arpa axfr

Ostale izuzetno zanimljive naredbe su:

[root@dns ~]# named-journalprint /var/named/dynamic/db.desdelinux.fan.jnl
[root @ dns ~] # named-journalprint /var/named/dynamic/db.10.168.192.in-addr.arpa.jnl
[root @ dns ~] # journalctl -f

Ručna izmjena datoteka zona

Nakon što DHCP uđe u igru ​​dinamičkog ažuriranja datoteka zona na pod nazivomAko u bilo kojem trenutku trebamo ručno izmijeniti datoteku zone, moramo provesti sljedeći postupak, ali ne prije nego što saznamo malo više o radu uslužnog programa rndc za kontrolu poslužitelja imena.

[root @ dns ~] # man rndc
....
       zamrzavanje [zona [klasa [pogled]]]
           Obustavite ažuriranja u dinamičkoj zoni. Ako nije navedena zona, tada su sve zone suspendirane. To omogućava ručno uređivanje zone koja se obično ažurira dinamičkim ažuriranjem. Također uzrokuje da se promjene u datoteci dnevnika sinhroniziraju u glavnu datoteku. Svi pokušaji dinamičkog ažuriranja bit će odbijeni dok je zona zamrznuta.

       otapanje [zona [klasa [pogled]]]
           Omogućite ažuriranja zamrznute dinamičke zone. Ako nije navedena nijedna zona, tada su omogućene sve smrznute zone. To uzrokuje da server ponovo učita zonu s diska i ponovo omogućava dinamička ažuriranja nakon završetka učitavanja. Nakon odmrzavanja zone, dinamička ažuriranja više neće biti odbijena. Ako se zona promijenila i koristi se opcija ixfr-from-razlike, tada će se datoteka dnevnika ažurirati tako da odražava promjene u zoni. U suprotnom, ako se zona promijenila, uklonit će se sve postojeće datoteke dnevnika. ....

Šta, jesi li mislio da ću prepisati cijeli priručnik?... komad i idu autom. Ostalo prepuštam vama. 

U osnovi:

  • rndc zamrzavanje [zona [klasa [pogled]]], obustavlja dinamičko ažuriranje zone. Ako jedan nije naveden, svi će se zamrznuti. Komanda omogućava ručno uređivanje smrznute zone ili svih zona. Svako dinamičko ažuriranje bit će odbijeno dok je zamrznuto.
  • rndc taljenje [zona [klasa [pogled]]], omogućava dinamičko ažuriranje prethodno zamrznute zone. DNS server ponovo učitava zonsku datoteku s diska, a dinamička ažuriranja su ponovo omogućena nakon završetka ponovnog učitavanja.

Da li treba voditi računa kada ručno uređujemo datoteku zone? Isto kao da smo ga kreirali, ne zaboravljajući povećati serijski broj za 1 ili serijski prije spremanja datoteke s konačnim promjenama.

Primjer:

[root @ dns ~] # rndc zamrzavanje desdelinux.fan

[root@dns ~]# nano /var/named/dynamic/db.desdelinux.fan
Datoteku zone modificiram iz bilo kojeg razloga, neophodnog ili ne. Sačuvam promjene

[root @ dns ~] # rndc odmrzavanje desdelinux.fan
Započeto je ponovno učitavanje i otopljavanje zone. Provjerite zapisnike da biste vidjeli rezultat.

[root @ dns ~] # journalctl -f
Jan 29 14:06:46 dns named[2257]: zona odmrzavanja 'desdelinux.fan/IN': uspjeh
29. januar 14:06:46 dns named[2257]: zona desdelinux.fan/IN: zonski serijski (6) nepromijenjen. zona možda neće uspjeti prenijeti na slave.
29. januar 14:06:46 dns named[2257]: zona desdelinux.fan/IN: učitan serijski 6

Greška u prethodnom izlazu, koja je na konzoli prikazana crvenom bojom, nastala je zbog činjenice da sam "zaboravio" povećati serijski broj za 1. Da sam pravilno slijedio postupak, izlaz bi bio:

[root @ dns ~] # journalctl -f
-- Dnevnici počinju u ned 2017 01:29:08 EST. -- 31. januar 32:29:14 dns named[06]: zona desdelinux.fan/IN: učitan serijski 6. januar 29. 14:10:01 dns systemd[1]: Započeta sesija 43 korisnika root. 29. januar 14:10:01 dns systemd[1]: Pokretanje sesije 43 korisnika root. 29. januar 14:10:01 dns CROND[2693]: (root) CMD (/usr/lib64/sa/sa1 1 1) 29. januar 14:10:45 dns named[2257]: primljena naredba kontrolnog kanala 'zamrzni desdelinux.fan' 29. januar 14:10:45 dns named[2257]: zona smrzavanja 'desdelinux.fan/IN': uspjeh 29. januar 14:10:58 dns named[2257]: primljena naredba kontrolnog kanala 'otopiti desdelinux.fan' 29. januar 14:10:58 dns named[2257]: zona odmrzavanja 'desdelinux.fan/IN': uspjeh Jan 29 14:10:58 dns named[2257]: zona desdelinux.fan/IN: datoteka dnevnika je zastarjela: uklanjanje datoteke dnevnika 29. januar 14:10:58 dns named[2257]: zona desdelinux.fan/IN: učitan serijski 7
  • Čitatelji, ponavljam da morate pažljivo pročitati izlaze naredbi. Za nešto su njegovi programeri potrošili toliko rada programirajući svaku naredbu, bez obzira koliko je jednostavna.

Resumen

Do sada smo se bavili implementacijom para DNS - DHCP, važnim i ključnim uslugama za dobre performanse naše MSP mreže, pozivajući se na dodjeljivanje dinamičkih adresa putem DHCP-a i razlučivanje imena računara i domena putem DNS-a.

Ozbiljno se nadamo da ste uživali u cijelom postupku kao i mi. Iako se čini teže korištenjem konzole, puno je lakše i poučnije implementirati uslugu u UNIX® / Linux uz njenu pomoć.

Oprošteno mi je za svako pogrešno tumačenje koncepata osmišljenih, stvorenih, napisanih, revidiranih, prepisanih i objavljenih na jeziku Šekspira, a ne Servantesa. 

Sledeća isporuka

Mislim da je malo više isto - s teorijskim dodacima o DNS zapisima - ali u Debianu. Ne možemo zaboraviti tu distribuciju, zar ne?


Dodaj kao preferirani izvor na Googleu