DNS i DHCP u CentOS 7 - SMB mreže

Opći indeks serije: Računalne mreže za mala i srednja poduzeća: Uvod

Pozdrav prijatelji! U ovom članku ćemo vidjeti kako implementirati važne mrežne usluge DNS-a i DHCP-a u CentOS Linuxu, točnije u verziji 7.2.

  • Neki se članci o DNS-u pozivaju na činjenicu da je implementacija ove usluge pomalo nejasna i teška. Ne slažem se sasvim 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 pokušati učiniti čitanje ovog posta što ugodnijim i ugodnijim..

Za one koji traže osnovne pojmove o obje usluge, toplo preporučujemo da započnete pretragu na Wikipediji, u španjolskoj i engleskoj verziji. Nije manje istina da su članci na engleskom gotovo uvijek cjelovitiji i koherentniji. Ipak, Wikipedia je vrlo dobro polazište.

Onima koji istinski žele učiti o DNS-u i BIND-u preporučuje se da pročitaju knjigu " OReilly – DNS and BIND 4. izdanje " koju su napisali Paul Albitz i Cricket Liu , ili kasnije izdanje koje sigurno postoji.

Već smo objavili članak o ovoj temi pod naslovom " DNS i DHCP u openSUSE 13.2 Harlequin – SME mreže " za one koji preferiraju grafičko okruženje. Međutim, u budućnosti ćete naići na članke o ovoj temi - ali ne i na druge - napisane uz opsežno korištenje emulatora terminala ili konzole. Drugim riječima, u klasičnom stilu koji koriste UNIX®/Linux sistemski administratori.

Ako želite saznati više o temi naslova ovog članka, " Mreže malih i srednjih poduzeća ", možete posjetiti stranicu " Mreže malih i srednjih poduzeća: Prvi virtualni rez " na istom blogu . Tamo ćete pronaći poveznice na mnoge druge objavljene članke.

  • Nakon završetka instalacije operativnog sustava CentOS 7 s 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 sustava

Opći podaci domene i DNS poslužitelja

Naziv domene: desdelinux.ventilator
Naziv DNS poslužitelja: dns.desdelinux.ventilator
IP adresa: 192.168.10.5
Maska podmreže: 255.255.255.0

Instalacija

Počinjemo s novom ili čistom instalacijom operativnog sustava CentOS 7, kao što je opisano u prethodnom članku " CentOS 7 Hypervisor I – SME mreže ". Potrebno je napraviti samo sljedeće promjene:

  • u Slika 22 «ODABIR SOFTVERA«, Preporučujemo odabir u lijevom stupcu«Osnovno okruženje»Opcija koja odgovara«Infrastrukturni poslužitelj«, Dok je u desnom stupcu«Dodaci za odabrano okruženje»Označite potvrdni okvir«DNS poslužitelj imena«. DHCP poslužitelj ćemo instalirati kasnije.
  • Sjetimo se deklaracije dodatnih spremišta kao što je prikazano u Slika 23, 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.
  • Napokon, u Slika 13 «NAZIV MREŽE I EKIPE», moramo promijeniti vrijednosti prema općim parametrima deklarirane domene i DNS poslužitelja, ne zaboravljajući navesti ime hosta - u ovom slučaju «DNS«- nakon dovrš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

Zaista je malo i vrlo očitih promjena koje moramo napraviti u odnosu na prethodni članak.

Početne provjere i prilagodbe

Nakon što instaliramo operativni sustav, moramo pregledati najmanje sljedeće datoteke, a za to započinjemo sesiju putem SSH-a s našeg računala sistemski administrator.desdelinux.ventilator:

buzz @ sysadmin: ~ $ ssh 192.168.10.5
[e-pošta zaštićena]Lozinka korisnika: Zadnja prijava: subota, 28. siječnja 2017. u 09:48:05 s 192.168.10.1
[buzz @ dns ~] $

Gore navedena radnja može potrajati duže nego što je uobičajeno, a uglavnom je to zbog činjenice da još uvijek nemamo DNS na LAN-u. Kasnije ponovno provjerite radi li DNS.

[buzz @ dns ~] $ mačka / itd / domaćini
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 nameserver 127.0.0.1

Glavne konfiguracije odražavaju naše odabire. Imajte na umu da je čak i na Red Hat 7 – CentOS 7 poslužitelju NetworkManager prema zadanim postavkama konfiguriran za upravljanje 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) Aktivno: neaktivno (mrtvo)

[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đer omogućuje spajanje i odspajanje mrežnih sučelja pomoću klasičnih naredbi `ifup` i `ifdown` . Pokrenimo sljedeće naredbe u konzoli poslužitelja:

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

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

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

[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 korijen korijena 1664 9. prosinca 2015. CentOS-Base.repo -rw-r - r--. 1 korijen korijena 1309 9. prosinca 2015. CentOS-CR.repo -rw-r - r--. 1 korijen korijena 649 9. prosinca 2015. CentOS-Debuginfo.repo -rw-r - r--. 1 korijen korijena 290 prosinca 9 2015 CentOS-fasttrack.repo -rw-r - r--. 1 korijen korijena 630 9. prosinca 2015. CentOS-Media.repo -rw-r - r--. 1 korijen korijena 1331 9. prosinca 2015. CentOS-Izvori.repo -rw-r - r--. 1 korijen korijena 1952. 9. prosinca 2015. CentOS-Vault.repo

Zdravo je čitati sadržaj originalnih deklaracijskih datoteka repozitorija koje preporučuje CentOS. Promjene koje ovdje radimo su zbog činjenice da nemamo pristup Internetu, a radimo s lokalnim repozitorijima preuzetima s WWW Villagea, od strane kolega koji nam malo olakšavaju život. 

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

[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 su dodaci: najbrže ogledalo, langpacks Čišćenje spremišta: centos-base centos-updates Čišćenje svega

[root @ dns yum.repos.d] # ažuriranje yum-a
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 "Nema označenih paketa za ažuriranje" označava da su, deklariranjem najnovijih dostupnih repozitorija tijekom instalacije, instalirani najnoviji paketi.

O kontekstu SELinux-a i vatrozidu

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

Ako je neki čitatelj odabrao sigurnosnu politiku tijekom postupka instalacije, kao što je prikazano na slici 06 referentnog članka " CentOS 7 Hypervisor I – SME mreže " korištenog za instalaciju ovog DNS-DHCP poslužitelja, i utvrdi da ne zna kako pravilno konfigurirati SELinux i CentOS Firewall, predlažemo da pokrene sljedeće:

Izmijenite datoteku /etc/sysconfig/selinux i promijenite SELINUX=enforcing u SELINUX=disable

[root @ dns ~] # nano / etc / sysconfig / selinux
# Ova datoteka kontrolira stanje SELinux-a u sustavu. # 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 vatrozida usluge
Preusmjeravanje na / bin / systemctl stop firewalld.service

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

Ako implementirate DNS poslužitelj okrenut prema internetu, NE biste trebali slijediti gornje upute. Umjesto toga, ispravno konfigurirajte SELinux kontekst i vatrozid. Pogledajte "Konfiguriranje poslužitelja s GNU/Linuxom" autora Joela Barriosa Dueñasa ili dokumentaciju za CentOS/Red Hat.

Konfiguriramo BIND - named

  • El imenik /usr/share/doc/bind-9.9.4/ Sadrži dobru količinu dokumentacije koju preporučujemo konzultirati 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, DNS usluga instalirana putem BIND paketa naziva se named ( Name Daemon ). U CentOS-u 7, instalirana je onemogućena prema zadanim postavkama, kao što je prikazano u izlazu sljedeće naredbe, koja navodi da je njezino stanje " onemogućeno " i da je to stanje unaprijed definirano od strane dobavljača – vendor preset . Imajte na umu da je BIND 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; onesposobljen; unaprijed postavljeno: onemogućeno) Aktivno: neaktivno (mrtvo)

[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 (trčanje) od Sub 2017-01-28 13:22:38 EST; Prije 5 minuta Proces: 1990 ExecStart = / usr / sbin / named -u named $ 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. siječnja 13:22:45 dns named [1993]: pogreška (mreža nedostupna) rješavanje './NS/IN': 2001: 500: 2f :: f # 53 28. siječnja 13:22:47 dns imenovana [1993]: pogreška (mreža nedostupna) rješavanje './ DNSKEY / IN ': 2001: 500: 3 :: 42 # 53 28. siječnja 13: 22: 47 dns imenovan [1993]: pogreška (mreža nedostupna) rješavanje' ./NS/IN ': 2001: 500: 3 :: 42 # 53 28. siječnja 13:22:47 dns imenovan [1993]: pogreška (mreža nedostupna) rješavanje './DNSKEY/IN': 2001: 500: 2d :: d # 53 28. siječnja 13:22:47 dns imenovana [1993] ]: pogreška (mreža nedostupna) u rješavanju './NS/IN': 2001: 500: 2d :: d # 53 28. siječnja 13:22:47 dns imenovana [1993]: pogreška (mreža nedostupna) rješavanje './DNSKEY/ IN ': 2001: dc3 :: 35 # 53 28. siječnja 13:22:47 dns imenovan [1993]: rješavanje pogreške (mreža nedostupna)' ./NS/IN ': 2001: dc3 :: 35 # 53 28. siječnja 13: 22:47 dns imenovan [1993]: pogreška (mreža nedostupna) rješavanje './DNSKEY/IN': 2001: 7fe :: 53 # 53 28. siječnja 13:22:47 dns imenovana [1993]: pogreška (mreža nedostupna) res olving './NS/IN': 2001: 7fe :: 53 # 53 28. siječnja 13 22:48:1993 dns imenovan [XNUMX]: managed-keys-zone: Nije moguće dohvatiti DNSKEY set '.': isteklo vrijeme čekanja

[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 (trčanje) od Sub 2017-01-28 13:29:41 EST; Prije 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 named $ 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 (code = exited, status = 0 / USPJEH) Glavni PID: 1463 (imenovan) CGroup: /system.slice/named.service └─1463 / usr / sbin / named -u named 28. siječnja 13:29:41 dns named [1463]: managed-keys-zone: datoteka dnevnika je zastarjela: uklanjanje datoteke dnevnika 28. siječnja 13:29:41 dns pod nazivom [1463]: managed-keys-zone: loaded serial 2. siječnja 28 13:29:41 dns imenovan [1463]: zona 0.in-addr.arpa/IN: učitana serijska postava 0 28. siječnja 13:29:41 dns imenovana [1463]: zona localhost.localdomain / IN: učitana serijska linija 0. siječnja 28:13:29 dns named [41]: zone 1463.in-addr.arpa/IN: loaded serial 1.0.0.127 0. januara 28:13:29 dns named [41]: zone 1463 .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čitan serijski 0 28. januara 13:29:41 dns imenovan [1463]: zone localhost / IN: učitan serijski 0 28. januara 13 : 29: 41 dns imenovan [1463]: učitane su sve zone 28. siječnja 13:29:41 dns imenovane [1463]: pokrenut je 28. siječnja 13:29:41 dns systemd [1]: Započeta domena internetskog imena Berkeley (DNS).

Nakon što prvi put omogućimo i pokrenemo named servis, izlaz naredbe `systemctl status named` prikazuje pogreške. Kada ponovno pokrenemo servis, named prema zadanim postavkama stvara sve konfiguracijske datoteke potrebne za ispravan rad. Stoga, kada ponovno pokrenemo naredbu `systemctl status named` , više se ne prikazuju pogreške.

  • Dragi, skupi i zahtjevni Čitatelju: ako želiš saznati -barem- koji put vodi do kraja zečje rupe, molim te, mirno pročitaj detaljne rezultate svake naredbe.  Sigurno će vam se članak činiti malo dugačak, ali nećete poreći da dobiva na objašnjenju i jasnoći.

Izmjenjujemo datoteku /etc/named.conf

Mnogi komentari čitatelja izražavaju - i nisam jedini koji to govori - naviku koju održavatelji različitih Linux distribucija imaju da smještaju datoteke konfiguracije sustava u mape s različitim nazivima ovisno o distribuciji. U pravu su. Ali što mi, obični korisnici tih distribucija, možemo učiniti? Prilagoditi se! 😉

Usput, u FreeBSD-u, klonu UNIX®-a "The Origin", datoteka se nalazi u /usr/local/etc/namedb/named.conf ; dok se u Debianu, osim što je podijeljena u četiri datoteke named.conf, named.conf.options, named.conf.default-zones i named.conf.local , nalazi i u mapi /etc/bind/ . Oni koji žele znati gdje je openSUSE smješta trebali bi pročitati " DNS i DHCP u openSUSE 13.2 Harlequin – SME mreže ". Čitatelji su u pravu! 😉

I kao što uvijek radimo: prije nego što bilo što izmijenimo, spremamo izvornu konfiguracijsku datoteku pod drugim imenom.

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

Radi lakšeg snalaženja, umjesto generiranja TSIG ključa za dinamička ažuriranja DNS-a putem DHCP-a, kopiramo isti rndc.key kao i 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 =="; };

Da bi imenovani korisnik mogao čitati novo 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 korijen nazvan 77 28. siječnja 16:36 /etc/dhcp.key -rw-r -----. 1 korijen nazvan 77 28. siječnja 13:22 /etc/rndc.key

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

Konačno smo izmijenili datoteku /etc/named.conf . Promjene ili dodaci koje smo napravili, u usporedbi s originalom, označeni su podebljano . Imajte na umu da ih ima samo nekoliko.

[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. //

// Popis kontrole pristupa koji izjavljuje koje će se mreže moći savjetovati
// moj poslužitelj imenovan
acl pogledao {
 127.0.0.0 / 8;
 192.168.10.0 / 24;
};

mogućnosti {
 // Izjavljujem da imenovani demon također sluša sučelje
 // eth0 koji ima IP: 192.168.10.5
    priključak za preslušavanje 53 {127.0.0.1; 192.168.10.5; };
    port za slušanje na v6 53 {:: 1; }; direktorij "/ var / named"; dump-datoteka "/var/named/data/cache_dump.db"; statistička datoteka "/var/named/data/named_stats.txt"; memstatistička datoteka "/var/named/data/named_mem_stats.txt";

 // Izjava o špediterima
 // špediteri {
 // 0.0.0.0;
 // 1.1.1.1;
 //};
    // prvi naprijed;

    // Dopuštam upite samo za moj zaglibljeni ACL
    dopusti-upit { mired; }; // Za provjeru naredbom dig desdelinux.fan axfr // samo sa SysAdmin radne stanice i lokalnog hosta // Nemamo slave DNS poslužitelje. Ne treba nam...do sada.
 dopusti-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čini, vaš će poslužitelj postati dio velikih napada DNS pojačanja. Implementacija BCP38 unutar vaše mreže uvelike bi smanjila takvu površinu napada * /
    // Želimo AUTHORITY poslužitelj za naš LAN - SME
    rekurzija br;

    dnssec-enable yes; dnssec-provjera valjanosti; / * Put do ISC DLV ključa * / bindkeys-file "/etc/named.iscdlv.key"; upravljani-ključevi-direktorij "/ var / named / dynamic"; pid-datoteka "/run/named/named.pid"; datoteka ključa sesije "/run/named/session.key"; }; bilježenje {channel default_debug {datoteka "data / named.run"; dinamika ozbiljnosti; }; }; zona "." IN {tip nagovještaj; 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, vrsti, mjestu i dopuštenju ažuriranja
// zona DNS zapisa // Obje zone su GOSPODARSKE
zona"desdelinux.fan" {
 tip majstor;
 datoteka "dinamički/db.desdelinux.ventilator";
 allow-update {ključ dhcp-ključ; };
};

zona "10.168.192.in-addr.arpa" {
 tip majstor;
 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 prethodna naredba ne vraća ništa, sintaksa je u redu. Međutim, ako pokrenemo 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 glavne datoteke dynamic/db.desdelinux.fan failed: datoteka nije pronađena zona desdelinux.fan/IN: nije učitan zbog grešaka. _zadano/desdelinux.fan/IN: datoteka nije pronađena zona 10.168.192.in-addr.arpa/IN: učitavanje iz glavne 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 pogreškama koje se javljaju jer još nismo stvorili DNS zapisne zone za svoju domenu.

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

Stvaramo datoteku Direct Zone desdelinux.ventilator

...ali ne bez prvo malo teorije. 

Kao predložak za stvaranje datoteke podataka zone možemo koristiti ili /var/named/named.empty ili /usr/share/doc/bind-9.9.4/sample/var/named/named.empty . Oba su identična.

[root @ dns ~] # mačka /var/naimenovano/imenovano.prazno 
$ 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

Vrijeme života - Vrijeme je da se živi TTL SOA zapis

Odvojimo trenutak da objasnimo TTL – Time to Live – SOA – zapisa Start of Authority za glavnu zonu. Razumijevanje njihovog značenja korisno je kada želimo izmijeniti bilo koju od njihovih vrijednosti.

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

Serijski : Serijski broj podataka zone. Svaki put kada ručno mijenjamo DNS zapis u zoni, moramo povećati ovaj broj za 1, posebno ako imamo podređene ili sekundarne poslužitelje. Svaki put kada sekundarni ili podređeni DNS poslužitelj kontaktira svoj glavni poslužitelj, on traži serijski broj podataka glavnog poslužitelja. Ako je serijski broj podređenog poslužitelja niži, tada su podaci za tu zonu na podređenom poslužitelju zastarjeli i podređeni poslužitelj izvodi prijenos zone kako bi ih ažurirao.

osvježi : Govori podređenom poslužitelju vremenski interval u kojem treba provjeriti jesu li njegovi podaci ažurni u odnosu na glavnog poslužitelja.

retry : Ako glavni poslužitelj nije dostupan - recimo zato što se razbolio - za podređenog poslužitelja nakon vremenskog intervala osvježavanja , retry govori podređenom poslužitelju koliko dugo treba čekati prije nego što ponovno pokuša kontaktirati svog glavnog poslužitelja.

Istek : Ako podređeni poslužitelj ne može kontaktirati svoj glavni poslužitelj tijekom određenog vremenskog intervala , tada je odnos podređene i glavne zone prekinut i podređeni poslužitelj nema drugog izbora nego isteći dotičnu zonu. Istek zone od strane podređenog DNS poslužitelja znači da će prestati odgovarati na DNS upite povezane s tom zonom jer su dostupni podaci prestari da bi bili korisni.

  • Navedeno nas neizravno uči i opterećeno velikim zdravim razumom - najmanje uobičajenim osjetilima - da ako nam za rad našeg malog i srednjeg poduzetništva nisu potrebni poslužni DNS poslužitelji, nećemo ga implementirati, osim ako nisu nužno potrebni. Pokušajmo uvijek ići od jednostavnog ka složenom.

minimalno : U verzijama prije BIND-a 8.2 , posljednji SOA zapis također označava zadano vrijeme trajanja i negativno vrijeme predmemoriranja za zonu. Ovo vrijeme odnosi se na sve negativne odgovore koje je dao autoritativni poslužitelj za zonu.

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

[root@dns ~]# nano /var/named/dynamic/db.desdelinux.ventilator
$TTL 3H @ U SOA dns.desdelinux.ventilator. root.dns.desdelinux.ventilator. (1; serijski 1D; osvježi 1H; ponovni pokušaj 1W; istek 3H); minimum ili ; Negativno vrijeme predmemoriranja do života; @ U NS dns.desdelinux.ventilator. @ IN MX 10 e-poštom.desdelinux.ventilator. @ IN TXT "FromLinux, vaš blog posvećen slobodnom softveru" ; sysadmin U 192.168.10.1 ad-dc U 192.168.10.3 fileserver U 192.168.10.4 dns U 192.168.10.5 proxyweb U 192.168.10.6 blog U 192.168.10.7 ftpserver U 192.168.10.8. 192.168.10.9 pošta IN A XNUMX

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

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

Stvaramo datoteku Reverse Zone 10.168.192.in-addr.arpa

  • SOA zapis ove zone jednak je onom izravne zone bez razmatranja MX zapisa..
[root @ dns ~] # nano /var/named/dynamic/db.10.168.192.in-addr.arpa
$TTL 3H @ U SOA dns.desdelinux.ventilator. root.dns.desdelinux.ventilator. (1; serijski 1D; osvježi 1H; ponovni pokušaj 1W; istek 3H); minimum ili ; Negativno vrijeme predmemoriranja do života; @ U NS dns.desdelinux.ventilator. ; 1 IN PTR sistemski administrator.desdelinux.ventilator. 3 IN PTR ad-dc.desdelinux.ventilator. 4 IN PTR poslužitelj datoteka.desdelinux.ventilator. 5 U PTR dns.desdelinux.ventilator. 6 IN PTR proxyweb.desdelinux.ventilator. 7 IN PTR blog.desdelinux.ventilator. 8 U PTR ftpserveru.desdelinux.ventilator. 9 U PTR pošti.desdelinux.ventilator.

[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

  • Sve dok ne budemo sigurni da imenovane datoteke za konfiguraciju named.conf i njegove zonske datoteke nisu ispravno konfigurirane, predlažemo da ne ponovno 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 serijska 1 zona 10.168.192.in-addr.arpa/IN: učitana serijska 1

Sve trenutne imenovane konfiguracije

Radi jasnoće, i iako će članak postati dugačak, donosimo cjeloviti 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čitane serijske 1 opcije { bindkeys-file "/etc/named.iscdlv.key"; datoteka ključa sesije "/run/named/session.key"; imenik "/var/named"; dump-file "/var/named/data/cache_dump.db"; priključak 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"; datoteka statistike "/var/named/data/named_stats.txt"; dnssec-omogući da; dnssec-provjera valjanosti da; rekurzija ne; dozvoli-upit { "gledano"; }; dopusti-prijenos { 192.168.10.1/32; }; }; acl "gledano" { 127.0.0.0/8; 192.168.10.0/24; }; bilježenje { kanal "default_debug" { datoteka "data/named.run"; dinamička ozbiljnost; }; }; ključ "dhcp-ključ" { algoritam "hmac-md5"; tajni "OI7Vs+TO83L7ghUm2xNVKg=="; }; zona "." IN { upišite savjet; datoteka "named.ca"; }; zona "localhost.localdomain" IN { type master; datoteka "named.localhost"; dopusti ažuriranje { "ništa"; }; }; zona "localhost" IN { type master; datoteka "named.localhost"; dopusti ažuriranje { "ništa"; }; }; 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 { master tipa; datoteka "named.loopback"; dopusti ažuriranje { "ništa"; }; }; zona "1.0.0.127.in-addr.arpa" IN { type master; datoteka "named.loopback"; dopusti ažuriranje { "ništa"; }; }; zona "0.in-addr.arpa" IN { type master; datoteka "named.empty"; dopusti ažuriranje { "ništa"; }; }; zona"desdelinux.fan" { tip master; datoteka "dinamički/db.desdelinux.fan"; dopusti ažuriranje { ključ "dhcp-ključ"; }; }; zona "10.168.192.in-addr.arpa" { tip master; datoteka "dinamički/db.10.168.192.in-addr.arpa "; ALOW-UPDATE {KEY" DHCP-KEY "; CZH/RSTIOO257G3NFNFL8MTJRKXOX BFDAUEVPQUEHG6NZWAJQ7VNMVDXP/VHL9M/QZXKJF29/EFUCP0GAD X8RS6CXPOY58LSVPVJR0ZSWZZZ0APAZVN8DLZEHEHEHEHEHE A 0HZCTMJJPJ2LBQF37DSV9DOBQZGUL496SGICGOYL5YQDXFZ2RELS QAGEU+ipadttj6ASRTAUB6GRCLMQRAMRLKBP68DFWHYB0N1KNNULQ QXA +Uk9ihz7="; };
  • Slijedom postupka izmjene imenovan.konf Prema našim potrebama i provjeri, te stvaranju svake datoteke zone i provjeri, sumnjamo da ćemo se morati suočiti s velikim konfiguracijskim problemima. Na kraju shvatimo da je to dječačka igra s mnogo koncepata i nesretnom sintaksom. 

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

Ponovno pokrećemo imenovani i provjeravamo njegov status

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

Ako se u izlazu posljednje naredbe pojave bilo kakve pogreške, trebali biste ponovno pokrenuti named.service i ponovno provjeriti njegov status . Ako su pogreške nestale, usluga je uspješno pokrenuta. U suprotnom, trebali biste pažljivo pregledati sve izmijenjene i kreirane datoteke 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) Aktivno: aktivan (trčanje) od ned 2017-01-29 10:05:32 EST; Prije 2 min 57 s Proces: 1777 ExecStop=/bin/sh -c /usr/sbin/rndc stop > /dev/null 2>&1 || /bin/kill -TERM $MAINPID (code=exited, status=0/SUCCESS) Proces: 1788 ExecStart=/usr/sbin/named -u named $OPTIONS (code=exited, status=0/SUCCESS) Proces: 1786 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/SUCCESS) Glavni PID: 1791 (named) CGroup: /system.slice/named.service └─1791 /usr/sbin/named -u named 29. siječnja 10:05:32 dns named [1791]: zona 1.0.0.127.in-addr.arpa/IN: učitan serijski 0. siječnja 29 10:05:32 dns named[1791]: zona 10.168.192.in-addr.arpa/IN: učitan serijski 1. siječnja 29 10:05:32 dns imenovan [1791]: 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čitan serijski 0 29. siječnja 10:05:32 dns named[1791]: zona desdelinux.fan/IN: učitani serijski 1. siječnja 29 10:05:32 dns named[1791]: zona localhost.localdomain/IN: učitani serijski 0. 29. siječnja 10:05:32 dns named[1791]: zona localhost/IN: učitano serijski 0 29. siječnja 10:05:32 dns named[1791]: sve zone su učitane
29. siječnja 10:05:32 dns imenovan [1791]: trčanje
29. siječnja 10:05:32 dns systemd [1]: Započela je domena internetskog imena Berkeley (DNS). 29. siječnja 10:05:32 dns imenovan [1791]: zona 10.168.192.in-addr.arpa/IN: slanje obavijesti (serijski 1)

Provjere

Provjere se mogu izvoditi na istom poslužitelju ili na stroju povezanom na LAN. Radije ih radimo iz ekipe sistemski administrator.desdelinux.ventilator na što smo dali izričito dopuštenje za obavljanje zonskih transfera. Datoteka / Etc / resolv.conf tog tima je sljedeće:

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

buzz@sysadmin:~$ dig desdelinux.ventilator axfr
; <<>> DiG 9.9.5-9+deb8u1-Debian <<>> desdelinux.fan axfr ;; globalne opcije: +cmd
desdelinux.ventilator. 10800 U SOA dns.desdelinux.ventilator. root.dns.desdelinux.ventilator. 1 86400 3600 604800 10800
desdelinux.ventilator. 10800 U NS dns.desdelinux.ventilator.
desdelinux.ventilator. 10800 U MX 10 e-poštom.desdelinux.ventilator.
desdelinux.ventilator. 10800 U TXT-u "FromLinux, vaš blog posvećen slobodnom softveru" ad-dc.desdelinux.ventilator. 10800 U 192.168.10.3 blogu.desdelinux.ventilator. 10800 U 192.168.10.7 dns.desdelinux.ventilator. 10800 IN NA 192.168.10.5 poslužitelj datoteka.desdelinux.ventilator. 10800 U 192.168.10.4 ftpserveru.desdelinux.ventilator. 10800 IN A 192.168.10.8 mail.desdelinux.ventilator. 10800 U 192.168.10.9 proxywebu.desdelinux.ventilator. 10800 U 192.168.10.6 sistemski administrator.desdelinux.ventilator. 10800 U DO 192.168.10.1
desdelinux.ventilator. 10800 U SOA dns.desdelinux.ventilator. root.dns.desdelinux.ventilator. 1 86400 3600 604800 10800 ;; Vrijeme upita: 0 msec ;; POSLUŽITELJ: 192.168.10.5#53(192.168.10.5) ;; KADA: Ned, 29. siječnja 11:44:18 EST 2017. ;; XFR veličina: 13 zapisa (1 poruka, 385 bajtova)

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 U NS dns.desdelinux.ventilator. 1.10.168.192.in-addr.arpa. 10800 IN PTR sistemski administrator.desdelinux.ventilator. 3.10.168.192.in-addr.arpa. 10800 IN PTR ad-dc.desdelinux.ventilator. 4.10.168.192.in-addr.arpa. 10800 IN PTR poslužitelj datoteka.desdelinux.ventilator. 5.10.168.192.in-addr.arpa. 10800 U PTR dns.desdelinux.ventilator. 6.10.168.192.in-addr.arpa. 10800 IN PTR proxyweb.desdelinux.ventilator. 7.10.168.192.in-addr.arpa. 10800 IN PTR blog.desdelinux.ventilator. 8.10.168.192.in-addr.arpa. 10800 IN PTR ftpserver.desdelinux.ventilator. 9.10.168.192.in-addr.arpa. 10800 U PTR pošti.desdelinux.ventilator. 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 msec ;; POSLUŽITELJ: 192.168.10.5#53(192.168.10.5) ;; KADA: Ned, 29. siječnja 11:44:57 EST 2017. ;; XFR veličina: 11 zapisa (1 poruka, 352 bajta)

buzz@sysadmin:~$ dig IN SOA desdelinux.ventilator
buzz@sysadmin:~$ dig IN MX desdelinux.fan buzz@sysadmin:~$ dig IN TXT desdelinux.ventilator
buzz @ sysadmin: ~ $ host dns
dns.desdelinux.fan ima adresu 192.168.10.5
buzz @ sysadmin: ~ $ host sysadmin
sistemski administrator.desdelinux.fan ima adresu 192.168.10.1 ... I sve ostale provjere koje trebamo
  • Do sada imamo osnovu za DNS poslužitelj na našoj SME mreži. Nadamo se da ste uživali u cijelom postupku, koji je bio prilično jednostavan, zar ne? 

Instaliramo i konfiguriramo 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 ovisnosti =============================================== ====================================================== ==================================== Arhitektura paketa Verzija spremišta Veličina =========== ================================================== ====================================================== ====================== Instaliranje: dhcp x86_64 12: 4.2.5-42.el7.centos-base 511k Sažetak transakcije ==== ================================================== ================================================== ============================ Instaliraj 1 paket Ukupna veličina preuzimanja: 511k Instalirana veličina: 1.4 M Je li ovo u redu [god / 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 Uspješno testiranje transakcije Pokretanje 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
# # Konfiguracijska datoteka DHCP poslužitelja. # pogledajte /usr/share/doc/dhcp*/dhcpd.conf.example # pogledajte stranicu priručnika dhcpd.conf(5) # ddns-update-style interim; ddns-ažuriranja uključena; ddns-ime domene "desdelinux.fan."; ddns-rev-domainname "in-addr.arpa."; ignoriraj klijentska ažuriranja; autoritativno; opcija ip-forwarding isključena; opcija domain-name "desdelinux.fan"; # opcija ntp-servers 0.pool.ntp.org, 1.pool.ntp.org, 2.pool.ntp.org, 3.pool.ntp.org; uključi "/etc/dhcp.key" zona desdelinux.ventilator. { 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 usmjerivači 192.168.10.1; opcija subnet-mask 255.255.255.0; opcija emitirana 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 internetskih sustava DHCP poslužitelj 4.2.5. Copyright 2004-2013 Konzorcij internetskih sustava. Sva prava pridrž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 datoteci za konfiguraciju

[root @ dns ~] # systemctl omogući dhcpd
Izrađena 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ćen; tvornička postavka: onemogućeno) 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 ..." CGroup: /system.slice/dhcpd.service └─2381 / usr / sbin / dhcpd -f -cf /etc/dhcp/dhcpd.conf -user dhcpd -group dhcpd --no-pid 29. siječnja 12:04:59 dns dhcpd [2381]: Internet Systems Consortium DHCP Server 4.2.5 29. siječnja 12 : 04: 59 dns dhcpd [2381]: Copyright 2004-2013 Internet Systems Consortium. 29. siječnja 12:04:59 dns dhcpd [2381]: Sva prava pridržana. 29. siječnja 12:04:59 dns dhcpd [2381]: Za informacije posjetite https://www.isc.org/software/dhcp/ 29. siječnja 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. siječnja 12:04:59 dns dhcpd [2381]: Napisao je 0 zakupa u datoteku zakupa. 29. siječnja 12:04:59 dns dhcpd [2381]: Slušanje na LPF / eth0 / 52: 54: 00: 12: 17: 04 / redlocal 29. siječnja 12:04:59 dns dhcpd [2381]: slanje na LPF / eth0 / 52: 54: 00: 12: 17: 04 / redlocal 29. siječnja 12:04:59 dns dhcpd [2381]: Slanje na Socketu / rezervni / rezervni-net 29. januara 12:04:59 dns systemd [1]: pokrenuto DHCPv4 poslužitelj Daemon.

Što još treba učiniti?

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

buzz @ sysadmin: ~ $ domaćin sedam
sedam.desdelinux.fan ima adresu 192.168.10.30

buzz@sysadmin:~$ domaćin sedam.desdelinux.ventilator
sedam.desdelinux.fan ima adresu 192.168.10.30

buzz@sysadmin:~$ dig IN TXT sedam.desdelinux.ventilator
.... ;; ODJELJAK PITANJA: ;sedam.desdelinux.ventilator. U TXT ;; ODJELJAK ODGOVORA: sedam.desdelinux.ventilator. 3600 IN TXT"31b7228ddd3a3b73be2fda9e09e601f3e9"....

Preimenujemo tim "sedam" u "LAGER" i ponovno pokrećemo sustav. Nakon ponovnog pokretanja novog LAGER-a provjeravamo:

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

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

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

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

buzz@sysadmin:~$ dig IN TXT lager.desdelinux.ventilator
.... ;; ODJELJAK PITANJA: ;lager.desdelinux.ventilator. U TXT ;; ODJELJAK ODGOVORA: lager.desdelinux.ventilator. 3600 IN TXT"31b7228ddd3a3b73be2fda9e09e601f3e9"....

Što se tiče klijenta suse-desktop:

buzz @ sysadmin: ~ $ host suse-dektop
Domaći 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.ventilator
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č naziva domene suse-desktop.desdelinux.ventilator.

buzz @ sysadmin: ~ $ host 192.168.10.30
30.10.168.192.in-addr.arpa pokazivač naziva domene LAGER.desdelinux.ventilator.
buzz @ sysadmin: ~ $ dig -x 192.168.10.33
.... ;; ODJELJAK PITANJA: ;33.10.168.192.in-addr.arpa. U PTR ;; ODJELJAK ODGOVORA: 33.10.168.192.in-addr.arpa. 3600 IN PTR suse-desktop.desdelinux.ventilator. ;; ODJELJAK NADLEGA: 10.168.192.in-addr.arpa. 10800 U NS dns.desdelinux.ventilator. ;; DODATNI ODJELJAK: dns.desdelinux.ventilator. 10800 IN DO 192.168.10.5 ....

buzz@sysadmin:~$ dig IN TXT suse-desktop.desdelinux.ventilator....
;koristi radnu površinu.desdelinux.ventilator. U TXT ;; ODJELJAK ODGOVORA: suse-desktop.desdelinux.ventilator. 3600 IN TXT "31b78d287769160c93e6dca472e9b46d73"

;; ODJELJAK ZA VLAST:
desdelinux.ventilator. 10800 U NS dns.desdelinux.ventilator. ;; DODATNI ODJELJAK: dns.desdelinux.ventilator. 10800 U DO 192.168.10.5
....

Izvršimo i sljedeće naredbe

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

U prethodnom rezultatu, podebljano smo istaknuli TTL - ove (u sekundama) za uređaje s IP adresama koje je dodijelila DHCP usluga, a koji imaju eksplicitnu deklaraciju TTL-a od 3600 koju daje DHCP. Statičke IP adrese regulirane su TTL-om od 3H (3 sata = 10800 sekundi) deklariranim u SOA zapisu svake zonske datoteke.

Na isti način mogu provjeriti i reverznu zonu.

[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 preuzme dinamičko ažuriranje zonskih datoteka imenovanog poslužitelja , ako ikada trebamo ručno izmijeniti zonsku datoteku, moramo izvršiti sljedeći postupak, ali ne prije nego što naučimo malo više o tome kako uslužni program rndc radi za kontrolu imenskog poslužitelja.

[root @ dns ~] # čovjek rndc
....
       zamrzavanje [zona [klasa [pogled]]]
           Obustavite ažuriranja u dinamičkoj zoni. Ako nije navedena zona, tada će se sve zone suspendirati. To omogućuje ručno uređivanje zone koja se obično ažurira dinamičkim ažuriranjem. Također uzrokuje sinhronizaciju promjena u datoteci dnevnika s glavnom datotekom. Svi pokušaji dinamičkog ažuriranja bit će odbijeni dok je zona zamrznuta.

       otapanje [zona [klasa [pogled]]]
           Omogućite ažuriranja smrznute dinamičke zone. Ako nije navedena nijedna zona, tada su omogućene sve smrznute zone. To uzrokuje da poslužitelj ponovno učita zonu s diska i ponovno omogućuje 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 si mislio da ću prepisati cijeli priručnik?... komadić i idu autom. Ostalo prepuštam vama. 

u osnovi:

  • rndc smrzavanje [zona [klasa [pogled]]], obustavlja dinamičko ažuriranje zone. Ako jedan nije naveden, svi će biti zamrznuti. Naredba omogućuje ručno uređivanje smrznute zone ili svih zona. Svako dinamičko ažuriranje bit će odbijeno dok je zamrznuto.
  • rndc odmrzavanje [zona [klasa [pogled]]], omogućuje dinamičko ažuriranje prethodno zamrznute zone. DNS poslužitelj ponovno učita zonsku datoteku s diska, a dinamička ažuriranja ponovno su omogućena nakon završetka ponovnog učitavanja.

Koje mjere opreza treba poduzeti prilikom ručnog uređivanja zonske datoteke? Isto kao i prilikom njenog stvaranja, s tim da se serijski broj mora povećati za 1 prije spremanja datoteke s konačnim promjenama.

primjer:

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

[root@dns ~]# nano /var/named/dynamic/db.desdelinux.ventilator
Datoteku zone mijenjam iz bilo kojeg razloga, nužnog ili ne. Spremam promjene

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

[root @ dns ~] # journalctl -f
29. siječnja 14:06:46 dns named[2257]: zona odmrzavanja 'desdelinux.navijač/IN': uspjeh
29. siječnja 14:06:46 dns named[2257]: zona desdelinux.ventilator/IN: zona serijska (6) nepromijenjena. zona možda neće uspjeti prenijeti na robove.
29. siječnja 14:06:46 dns named[2257]: zona desdelinux.ventilator/IN: učitan serijski 6

Pogreška u prethodnom izlazu, koja se na konzoli pojavljuje crveno, posljedica je č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:31:32 EST. -- 29. siječnja 14:06:46 dns named[2257]: zona desdelinux.fan/IN: učitan serijski 6. siječnja 29. 14:10:01 dns systemd[1]: Pokrenuta sesija 43 korijenskog korisnika. 29. siječnja 14:10:01 dns systemd[1]: Pokretanje sesije 43 korisnika root. 29. siječnja 14:10:01 dns CROND[2693]: (root) CMD (/usr/lib64/sa/sa1 1 1) 29. siječnja 14:10:45 dns named[2257]: primljena naredba kontrolnog kanala 'zamrzni' desdelinux.fan' 29. siječnja 14:10:45 dns named[2257]: zona smrzavanja 'desdelinux.fan/IN': uspjeh 29. siječnja 14:10:58 dns named[2257]: primljena naredba kontrolnog kanala 'thaw desdelinux.fan' 29. siječnja 14:10:58 dns named[2257]: zona odmrzavanja 'desdelinux.fan/IN': uspjeh 29. siječnja 14:10:58 dns named[2257]: zona desdelinux.fan/IN: datoteka dnevnika je zastarjela: uklanjanje datoteke dnevnika 29. siječnja 14:10:58 dns named[2257]: zona desdelinux.ventilator/IN: učitan serijski 7
  • Čitatelji, ponavljam da morate pažljivo pročitati izlaze naredbi. Za nešto su njezini programeri potrošili toliko rada programirajući svaku naredbu, bez obzira na to koliko je jednostavna.

Rezime

Do sada smo se pozabavili provedbom dvojaca DNS - DHCP, važnim i ključnim uslugama za dobar rad naše MSP mreže, referirajući se na dodjeljivanje dinamičkih adresa putem DHCP-a i razrješavanje imena računala i domena putem DNS-a.

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

Oprošteno mi je svako pogrešno tumačenje pojmova osmišljenih, stvorenih, napisanih, revidiranih, ponovno napisanih i objavljenih na jeziku Shakespearea, a ne Cervantesa. 

Sljedeća dostava

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