DNS in DHCP v CentOS 7 - SMB omrežja

Splošno kazalo serije: Računalniška omrežja za mala in srednje velika podjetja: Uvod

Živjo prijatelji! V tem članku si bomo ogledali, kako implementirati pomembne omrežne storitve DNS in DHCP v sistemu CentOS Linux, natančneje v različici 7.2.

  • Nekateri članki o DNS se sklicujejo na dejstvo, da je izvajanje te storitve nekoliko nejasno in težko. Ne strinjam se zelo s to izjavo. Raje bi rekel, da je nekoliko konceptualen in da imajo številne njegove konfiguracijske datoteke naporno sintakso. Na srečo imamo orodja za korak za korakom preverjanje skladnje vsake konfiguracijske datoteke, ki jo spremenimo. Zato bomo poskušali narediti branje tega prispevka čim bolj prijetno in prijetno..

Za tiste, ki iščejo osnovne koncepte obeh storitev, toplo priporočamo, da začnete iskati na Wikipediji, tako v španski kot angleški različici. Nič manj res ni, da so članki v angleščini skoraj vedno bolj popolni in skladni. Kljub temu je Wikipedia zelo dobro izhodišče.

Tistim, ki se resnično želijo naučiti več o DNS in BIND, priporočamo, da preberejo knjigo » OReilly – DNS and BIND 4th ed «, ki sta jo napisala Paul Albitz in Cricket Liu , ali kasnejšo izdajo, ki zagotovo obstaja.

Na to temo smo že objavili članek z naslovom » DNS in DHCP v openSUSE 13.2 Harlequin – omrežja za mala in srednje velika podjetja « za tiste, ki imajo raje grafično okolje. Vendar pa boste v prihodnje naleteli na članke na to temo – ne pa tudi na druge – napisane z obsežno uporabo emulatorja terminala ali konzole. Z drugimi besedami, v klasičnem slogu, ki ga uporabljajo sistemski skrbniki UNIX®/Linux.

Če želite izvedeti več o temi naslova tega članka » Omrežja malih in srednje velikih podjetij «, lahko obiščete stran » Omrežja malih in srednje velikih podjetij: Prvi virtualni rez « na istem blogu . Tam boste našli povezave do številnih drugih objavljenih člankov.

  • Po končani namestitvi operacijskega sistema CentOS 7 s paketi, ki jih priporočamo, el imenik /usr/share/doc/bind-9.9.4/ vsebuje veliko dokumentacije, za katero vam priporočamo, da se pred vstopom v internetno iskanje posvetujete, ne da bi prej vedeli, da lahko na dosegu roke in v svojem domu najdete tisto, kar iščete.

Namestitev osnovnega sistema

Splošni podatki domene in strežnika DNS

Domena: desdelinux.fan
Ime strežnika DNS: dns.desdelinux.fan
IP naslov: 192.168.10.5
Maska podomrežja: 255.255.255.0

Namestitev

Začnemo z novo oziroma čisto namestitvijo operacijskega sistema CentOS 7, kot je opisano v prejšnjem članku » CentOS 7 Hypervisor I – SME Networks «. Narediti moramo le naslednje spremembe:

  • V Imagen 22 «IZBOR PROGRAMSKE OPREME«, Priporočamo izbiro v levem stolpcu«Osnovno okolje»Možnost, ki ustrezaInfrastrukturni strežnik«, V desnem stolpcu«Vtičniki za izbrano okolje»Označite potrditveno polje«DNS imenski strežnik«. Strežnik DHCP bomo namestili kasneje.
  • Spomnimo se izjave dodatnih skladišč, kot je prikazano v Imagen 23, po nastavitvi «IME OMREŽJA IN EKIPE".
  • Slike, ki se nanašajo na particije, ki jih bomo ustvarili na trdem disku, so podane le kot vodila. Predelne stene lahko izbirate po lastni presoji, praksi in dobri presoji.
  • Končno v Slika 13 «IME OMREŽJA IN EKIPE», moramo spremeniti vrednosti glede na splošne parametre deklarirane domene in strežnika DNS, ne da bi pozabili navesti ime gostitelja - v tem primeru «dns«- po končani konfiguraciji omrežja. Pozitivno je ping -od drugega gostitelja- do navedenega naslova IP po aktivnem omrežju:

DNS in DHCP na CentOS

Resnično je zelo malo in zelo očitnih sprememb glede prejšnjega članka.

Začetni pregledi in prilagoditve

Po namestitvi operacijskega sistema moramo pregledati vsaj naslednje datoteke in za to začnemo sejo prek SSH iz našega računalnika sistemski skrbnik.desdelinux.fan:

buzz @ sysadmin: ~ $ ssh 192.168.10.5
[e-pošta zaščitena]Geslo uporabnika: Zadnja prijava: sob 28. jan 09:48:05 2017 iz 192.168.10.1
[buzz @ dns ~] $

Zgornja operacija lahko traja dlje kot običajno in je predvsem posledica dejstva, da v LAN-ju še nimamo DNS-ja. Pozneje ponovno preverite, ali DNS deluje.

[buzz @ dns ~] $ mačka / itd / gostitelji
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 ~] $ cat /etc/resolv.conf 
# Ustvarjeno z iskanjem NetworkManager desdelinux.fan imenski strežnik 127.0.0.1

Glavne konfiguracije odražajo naše izbire. Upoštevajte, da je NetworkManager tudi na strežniku Red Hat 7 – CentOS 7 privzeto konfiguriran za upravljanje omrežnih vmesnikov, žičnih ali brezžičnih (WiFi), povezav VPN, povezav PPPoE in vseh drugih omrežnih povezav.

[buzz @ dns ~] $ sudo systemctl status networkmanager
[sudo] geslo za buzz: ● networkmanager.service Loaded: not-found (Razlog: takšne datoteke ali imenika ni) Aktivno: neaktivno (mrtvo)

[buzz @ dns ~] $ sudo systemctl status NetworkManager
● NetworkManager.service - Network Manager naložen: naložen (/usr/lib/systemd/system/NetworkManager.service; omogočeno; prednastavitev prodajalca: omogočeno) Aktivno: aktivno (v teku) od sobote 2017-01-28 12:23:59 EST; Pred 12 minutami Glavni PID: 705 (NetworkManager) CGroup: /system.slice/NetworkManager.service └─705 / usr / sbin / NetworkManager --no-daemon

Red Hat – CentOS vam omogoča tudi povezovanje in prekinjanje omrežnih vmesnikov z uporabo klasičnih ukazov `ifup` in `ifdown` . V strežniški konzoli zaženimo naslednje ukaze:

[root @ dns ~] # ifdown eth0
Naprava 'eth0' je uspešno prekinjena.

[root @ dns ~] # ifup eth0
Povezava je bila uspešno aktivirana (aktivna pot D-Bus: / org / freedesktop / NetworkManager / ActiveConnection / 1)
  • Predlagamo ne spreminjajte privzetih nastavitev, ki jih ponuja CentOS 7 NetworkManager.

Dokončno prijavimo skladišča, ki jih bomo uporabljali, in po potrebi posodobimo operacijski sistem:

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

Zdravo je prebrati vsebino izvirnih deklaracijskih datotek skladišč, ki jih priporoča CentOS. Spremembe, ki jih izvajamo tukaj, so posledica dejstva, da nimamo dostopa do interneta in delamo z lokalnimi repozitoriji, ki so jih kolegi prenesli iz WWW Village, ki nam nekoliko olajšajo življenje. 

[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 vse
Naloženi vtičniki: najhitrejše ogledalo, jezikovni paketi Čiščenje repozitorijev: centos-base centos-updates Čiščenje vsega

[root @ dns yum.repos.d] # posodobitev yum
Naloženi vtičniki: najhitrejše zrcalo, centos-base langpacks | 3.4 kB 00:00 centos-posodobitve | 3.4 kB 00:00 (1/2): centos-osnova / primarni_db | 5.3 MB 00:00 (2/2): centos-posodobitve / primarni_db | 9.1 MB 00:00 Določanje najhitrejših ogledal Noben paket ni označen za posodobitev

Sporočilo »Za posodobitev ni označenih nobenih paketov« pomeni , da so bili z razglasitvijo najnovejših repozitorijev, ki so bili na voljo med namestitvijo, nameščeni najnovejši paketi.

O kontekstu SELinux in požarnem zidu

Ta članek se bomo osredotočili na izvajanje storitev DNS in DHCP, kar je njegov glavni cilj.

Če je bralec med namestitvijo izbral varnostni pravilnik, kot je prikazano na sliki 06 referenčnega članka » CentOS 7 Hypervisor I – SME Networks «, ki se uporablja za namestitev tega strežnika DNS-DHCP, in ugotovi, da ne ve, kako pravilno konfigurirati SELinux in požarni zid CentOS, predlagamo, da izvede naslednje:

Spremenite datoteko /etc/sysconfig/selinux in spremenite SELINUX=enforcing v SELINUX=disable

[root @ dns ~] # nano / etc / sysconfig / selinux
# Ta datoteka nadzoruje stanje SELinux v sistemu. # SELINUX = lahko zavzame eno od teh treh vrednosti: # prisiljevanje - uveljavljena je varnostna politika SELinux. # permissive - SELinux natisne opozorila, namesto da bi jih vsilil. # onemogočeno - Noben pravilnik SELinux ni naložen.
SELINUX = onemogočeno
# SELINUXTYPE = ima lahko eno od treh vrednosti: # ciljno - ciljni procesi so zaščiteni, # najmanj - sprememba ciljne politike. Samo izbrani procesi so pr $ # mls - Varnostna zaščita na več ravneh. SELINUXTYPE = ciljno usmerjen

Nato zaženite naslednje ukaze

[root @ dns ~] # setenforce 0
[root @ dns ~] # zaustavitev požarnega zidu storitve
Preusmeritev na / bin / systemctl stop firewalld.service

[root @ dns ~] # systemctl onemogoči požarni zid
Odstranjena simbolična povezava /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service. Odstranjena simbolična povezava /etc/systemd/system/basic.target.wants/firewalld.service.

Če implementirate strežnik DNS, ki je povezan z internetom, NE smete slediti zgornjim navodilom. Namesto tega pravilno konfigurirajte kontekst SELinux in požarni zid. Glejte »Konfiguriranje strežnikov z GNU/Linuxom« avtorja Joela Barriosa Dueñasa ali dokumentacijo za CentOS/Red Hat.

Konfiguriramo BIND - named

  • El imenik /usr/share/doc/bind-9.9.4/ Vsebuje veliko dokumentacije, za katero priporočamo, da se pred vstopom v internetno iskanje posvetujete, ne da bi prej vedeli, da lahko na dosegu roke in v svojem domu najdete tisto, kar iščete.

V mnogih distribucijah se storitev DNS, nameščena prek paketa BIND, imenuje named ( Name Daemon ). V sistemu CentOS 7 je privzeto nameščena onemogočena, kot je prikazano v izpisu naslednjega ukaza, ki navaja, da je njeno stanje » onemogočeno « in da je to stanje vnaprej določeno z njenim prodajalcem – vendor preset . Upoštevajte, da je BIND prosta programska oprema.

Omogočanje imenovane storitve

[root @ dns ~] # ime sistema systemctl
● named.service - Naložena domena internetnega imena Berkeley (DNS): naloženo (/usr/lib/systemd/system/named.service; onemogočena; prednastavitev prodajalca: onemogočena) Aktivno: neaktivno (mrtvo)

[root @ dns ~] # systemctl omogočeno imenovano
Ustvarjena je simbolna povezava od /etc/systemd/system/multi-user.target.wants/named.service do /usr/lib/systemd/system/named.service.

[root @ dns ~] # systemctl začetek imenovan

[root @ dns ~] # ime sistema systemctl
● named.service - Naložena domena internetnega imena Berkeley (DNS): naloženo (/usr/lib/systemd/system/named.service; omogočena; prednastavitev prodajalca: onemogočena)
   Aktivno: aktivno (tekoče) od sobote 2017-01-28 13:22:38 EST; Pred 5 minutami Proces: 1990 ExecStart = / usr / sbin / named -u z imenom $ OPTIONS (code = exited, status = 0 / USPEH) Proces: 1988 ExecStartPre = / bin / bash -c if [! "$ DISABLE_ZONE_CHECKING" == "da"]; potem / usr / sbin / named-checkconf -z /etc/named.conf; else echo "Preverjanje območnih datotek je onemogočeno"; fi (koda = izstopi, status = 0 / USPEH) Glavni PID: 1993 (imenovan) CGroup: /system.slice/named.service └─1993 / usr / sbin / named -u z imenom 28. januar 13:22:45 dns z imenom [1993]: napaka (omrežje nedosegljivo) pri reševanju './NS/IN': 2001: 500: 2f :: f # 53 28. januar 13:22:47 dns z imenom [1993]: napaka (omrežje nedosegljivo) reševanje './ DNSKEY / IN ': 2001: 500: 3 :: 42 # 53 28. januar 13:22:47 dns z imenom [1993]: napaka (omrežje nedosegljivo) razreševanje' ./NS/IN ': 2001: 500: 3 :: 42 # 53 28. januarja 13:22:47 dns z imenom [1993]: napaka (omrežje nedosegljivo) razreševanje './DNSKEY/IN': 2001: 500: 2d :: d # 53 28. januarja 13:22:47 dns z imenom [1993] ]: napaka (omrežje nedosegljivo) pri razrešitvi './NS/IN': 2001: 500: 2d :: d # 53 28. januar 13:22:47 dns z imenom [1993]: napaka (omrežje nedosegljivo) pri reševanju './DNSKEY/ IN ': 2001: dc3 :: 35 # 53 28. januar 13:22:47 dns z imenom [1993]: odpravljanje napake (omrežje nedosegljivo)' ./NS/IN ': 2001: dc3 :: 35 # 53 28. januar 13: 22:47 dns z imenom [1993]: napaka (omrežje nedosegljivo) razreševanje './DNSKEY/IN': 2001: 7fe :: 53 # 53 28. januarja 13:22:47 dns z imenom [1993]: napaka (omrežje nedosegljivo) res olving './NS/IN': 2001: 7fe :: 53 # 53 28. januar 13: 22: 48 dns z imenom [1993]: managed-keys-zone: DNSKEY set ni mogoče pridobiti '.': časovna omejitev je potekla

[root @ dns ~] z imenom # ponovni zagon systemctl

[root @ dns ~] # ime sistema systemctl
● named.service - Naložena domena internetnega imena Berkeley (DNS): naloženo (/usr/lib/systemd/system/named.service; omogočeno; prednastavitev prodajalca: onemogočena)
   Aktivno: aktivno (tekoče) od sobote 2017-01-28 13:29:41 EST; Pred 1s Proces: 1449 ExecStop = / bin / sh -c / usr / sbin / rndc stop> / dev / null 2> & 1 || / bin / kill -TERM $ MAINPID (code = exited, status = 0 / USPEH) Proces: 1460 ExecStart = / usr / sbin / named -u named $ OPTIONS (code = exited, status = 0 / SUCCESS) Proces: 1457 ExecStartPre = / bin / bash -c, če [! "$ DISABLE_ZONE_CHECKING" == "da"]; potem / usr / sbin / named-checkconf -z /etc/named.conf; else echo "Preverjanje območnih datotek je onemogočeno"; fi (koda = izstopi, status = 0 / USPEH) Glavni PID: 1463 (imenovan) CGroup: /system.slice/named.service └─1463 / usr / sbin / named -u imenovan 28. januar 13:29:41 dns imenovan [1463]: managed-keys-zone: datoteka dnevnika je zastarela: odstranjevanje datoteke dnevnika 28. januar 13:29:41 dns z imenom [1463]: managed-keys-zone: naložen serijski 2. januar 28 13:29:41 dns imenovan [1463]: cona 0.in-addr.arpa/IN: naložen serijski 0 28. januar 13:29:41 dns imenovan [1463]: cona localhost.localdomain / IN: naložen serijski 0 28. januar 13:29:41 dns imenovano [1463]: cona 1.0.0.127.in-addr.arpa/IN: naložen serijski 0 28. januar 13:29:41 dns z imenom [1463]: cona 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 .6.ip0.arpa / IN: naložen serijski 28 13. januar 29:41:1463 dns z imenom [0]: zone localhost / IN: naložen serijski 28 13. januar 29 : 41: 1463 dns z imenom [28]: vsa območja so bila naložena 13. januarja 29:41:1463 dns z imenom [28]: zagon 13. januarja 29:41:1 dns systemd [XNUMX]: Zagnana domena internetnega imena Berkeley (DNS).

Po prvem omogočanju in zagonu storitve named se v izpisu ukaza `systemctl status named` prikažejo napake. Ko storitev znova zaženemo, named privzeto ustvari vse konfiguracijske datoteke, ki jih potrebuje za pravilno delovanje. Zato se pri ponovnem zagonu ukaza `systemctl status named` napake ne prikažejo več.

  • Dragi, dragi in zahtevni bralec: če hočeš izvedeti - vsaj - katera pot vodi do konca zajčje luknje, prosim, mirno preberi podrobne izpise vsakega ukaza.  Zagotovo se vam bo članek zdel malo dolg, vendar ne boste zanikali, da pridobi na razlagi in jasnosti.

Spremenimo datoteko /etc/named.conf

Mnogi komentarji bralcev izražajo – in nisem edini, ki to pravi – navado, da vzdrževalci različnih distribucij Linuxa nameščajo konfiguracijske datoteke sistema v mape z različnimi imeni, odvisno od distribucije. Imajo prav. Kaj pa lahko storimo mi, navadni uporabniki teh distribucij? Prilagodimo se! 😉

Mimogrede, v FreeBSD, klonu UNIX® "The Origin", se datoteka nahaja v /usr/local/etc/namedb/named.conf ; medtem ko se v Debianu poleg tega, da je razdeljena na štiri datoteke named.conf, named.conf.options, named.conf.default-zones in named.conf.local , nahaja tudi v mapi /etc/bind/ . Tisti, ki želijo vedeti, kam jo openSUSE namesti, naj preberejo " DNS in DHCP v openSUSE 13.2 Harlequin – SME Networks ." Bralci imajo prav! 😉

In kot vedno: preden karkoli spremenimo, shranimo izvirno konfiguracijsko datoteko pod drugim imenom.

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

Za lažje delo namesto generiranja ključa TSIG za dinamične posodobitve DNS prek DHCP kopiramo isti rndc.key kot dhcp.key.

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

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

Da bi imenovani uporabnik lahko prebral novo kopirano datoteko, spremenimo njeno lastniško skupino:

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

Majhne podrobnosti, kot je prejšnja, so tisto, kar nas lahko obnore, ko poskušamo ugotoviti, kje je problem ... z nekaj več pridevniki, ki jih ne pišemo iz spoštovanja do Spoštljivega.

Končno smo spremenili datoteko /etc/named.conf . Spremembe ali dodatki, ki smo jih naredili v primerjavi z izvirnikom, so odebeljeni . Upoštevajte , da jih je le nekaj.

[root @ dns ~] # nano /etc/named.conf
// // named.conf // // Zagotavlja paket za vezavo Red Hat za konfiguracijo strežnika ISC BIND z imenom (8) DNS // kot strežnik imen samo za predpomnjenje (samo kot razreševalnik DNS lokalnega gostitelja). // // Glej / usr / share / doc / bind * / sample / na primer imenovane konfiguracijske datoteke. //

// Seznam za nadzor dostopa, v katerem je navedeno, katera omrežja se bodo lahko posvetovala
// moj strežnik z imenom
acl pogledal {
 127.0.0.0 / 8;
 192.168.10.0 / 24;
};

opcije {
 // Izjavljam, da imenovani demon posluša tudi vmesnik
 // eth0, ki ima IP: 192.168.10.5
    vrata za poslušanje 53 {127.0.0.1; 192.168.10.5; };
    Prisluhni-v6 vrata 53 {:: 1; }; imenik "/ var / named"; dump-datoteka "/var/named/data/cache_dump.db"; statistična datoteka "/var/named/data/named_stats.txt"; datoteka memstatistics "/var/named/data/named_mem_stats.txt";

 // Izjava o špediterjih
 // posredniki {
 // 0.0.0.0;
 // 1.1.1.1;
 //};
    // najprej naprej;

    // Dovolim poizvedbe samo za moj zapleteni ACL
    dovoli-poizvedba { mired; }; // Za preverjanje z ukazom dig desdelinux.fan axfr // samo z delovne postaje SysAdmin in lokalnega gostitelja // Nimamo podrejenih DNS strežnikov. Ne potrebujemo ga ... do zdaj.
 dovoli prenos {localhost; 192.168.10.1; };

    / * - Če gradite AVTORITATIVNI strežnik DNS, NE omogočite rekurzije. - Če gradite DUR strežnik RECURSIVE (caching), morate omogočiti rekurzijo. - Če ima vaš rekurzivni strežnik DNS javni naslov IP, MORATE omogočiti nadzor dostopa, da omejite poizvedbe na vaše zakonite uporabnike. Če tega ne storite, bo vaš strežnik postal del obsežnih napadov za ojačanje DNS. Izvedba BCP38 v vašem omrežju bi močno zmanjšala takšno površino napada / /
    // Želimo strežnik AUTHORITY za naš LAN - SME
    rekurzija št;

    dnssec-enable da; dnssec-validacija da; / * Pot do ključa ISC DLV * / bindkeys-file "/etc/named.iscdlv.key"; imenik upravljanih ključev "/ var / named / dynamic"; pid-datoteka "/run/named/named.pid"; datoteka ključa seje "/run/named/session.key"; }; beleženje {channel default_debug {datoteka "data / named.run"; dinamika resnosti; }; }; območje "." IN {tip namig; datoteka "named.ca"; }; vključujejo "/etc/named.rfc1912.zones"; vključite "/etc/named.root.key";

// Vključimo ključ TSIG za dinamične posodobitve DNS // po DHCP
vključujejo "/etc/dhcp.key";

// Izjava imena, vrste, lokacije in dovoljenja za posodobitev
// območij zapisov DNS // Obe coni sta MOJSTERI
cona"desdelinux.fan" {
 tip master;
 datoteka "dinamični/db.desdelinux.fan";
 allow-update {ključ dhcp-ključ; };
};

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

Preverimo skladnjo

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

Ker prejšnji ukaz ne vrne ničesar, je sintaksa v redu. Če pa zaženemo isti ukaz, vendar z možnostjo -z , bo izhod naslednji:

[root @ dns ~] # named-checkconf -z
cona localhost.localdomain/IN: naložena serijska 0 cona localhost/IN: naložena serijska 0 cona 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: naloženo serijsko območje 0 1.0.0.127.in-addr.arpa/IN: naloženo serijsko 0 območje 0.in-addr.arpa/IN: naloženo serijsko 0 območje desdelinux.fan/IN: nalaganje iz glavne datoteke dynamic/db.desdelinux.fan ni uspelo: datoteka ni bila najdena cona desdelinux.fan/IN: ni naložen zaradi napak. _privzeto/desdelinux.fan/IN: datoteka ni bila najdena cona 10.168.192.in-addr.arpa/IN: nalaganje iz glavne datoteke dynamic/db.10.168.192.in-addr.arpa ni uspelo: datoteka ni bila najdena cona 10.168.192.in- addr.arpa/IN: ni naložen zaradi napak. _default/10.168.192.in-addr.arpa/IN: datoteke ni mogoče najti

Seveda gre za napake, ki se pojavijo, ker za svojo domeno še nismo ustvarili območij za registracijo DNS.

  • Za več informacij o ukazu named-checkconf, teči človek z imenom-checkconf, preden poiščete kakršne koli druge informacije na internetu. Zagotavljam vam, da boste prihranili precej časa.

Ustvarimo datoteko Direct Zone desdelinux.fan

…vendar ne brez najprej malo teorije. 

Kot predlogo za ustvarjanje datoteke z območnimi podatki lahko uporabimo bodisi /var/named/named.empty bodisi /usr/share/doc/bind-9.9.4/sample/var/named/named.empty . Obe sta identični.

[root @ dns ~] # cat /var/named/named.empty 
$ TTL 3H @ IN SOA @ rname.invalid. (0; serijski 1D; osveži 1H; poskusi 1W; poteče 3H); minimalni ali negativni čas predpomnjenja za življenje NS @ A 127.0.0.1 AAAA :: 1

Čas življenja - Čas je za življenje TTL Zapis SOA

Vzemimo si trenutek in razložimo TTL – čas delovanja (Time to Live) – zapisa SOA – začetek avtoritete (Start of Authority) za glavno cono. Razumevanje njihovega pomena je koristno, kadar želimo spremeniti katero koli od njihovih vrednosti.

$TTL : Čas trajanja – Čas trajanja za vse zapise v datoteki, ki sledijo deklaraciji (vendar pred katero koli drugo deklaracijo $TTL) in nimajo eksplicitne deklaracije TTL.

Serijska številka : Serijska številka podatkov cone. Vsakič, ko ročno spremenimo zapis DNS v coni, moramo to številko povečati za 1, še posebej, če imamo podrejene ali sekundarne strežnike. Vsakič, ko sekundarni ali podrejeni strežnik DNS vzpostavi stik s svojim glavnim strežnikom, zahteva serijsko številko podatkov glavnega strežnika. Če je serijska številka podrejenega strežnika nižja, so podatki za to cono na podrejenem strežniku zastareli in podrejeni strežnik izvede prenos cone, da jo posodobi.

osveži : Podrejenemu strežniku pove časovni interval, v katerem naj preveri, ali so njegovi podatki posodobljeni glede na glavnega strežnika.

ponovni poskus : Če glavni strežnik po časovnem intervalu osveževanja ni na voljo podrejenemu strežniku – recimo zato, ker je zbolel –, ponovni poskus pove podrejenemu strežniku, koliko časa naj čaka, preden ponovno poskusi vzpostaviti stik z glavnim strežnikom.

Poteče : Če podrejeni strežnik ne more vzpostaviti stika z glavnim strežnikom v določenem časovnem intervalu , je razmerje med podrejenim in glavnim območjem prekinjeno in podrejeni strežnik nima druge izbire, kot da zadevno območje poteče. Poteče veljavnost območja s strani podrejenega strežnika DNS, kar pomeni, da se bo prenehal odzivati ​​na poizvedbe DNS, povezane s tem območjem, ker so razpoložljivi podatki prestari, da bi bili uporabni.

  • Zgornje nas uči posredno in obremenjeno z veliko zdravo pametjo - najmanj splošno razumom - da če za delovanje našega MSP ne potrebujemo podrejenih strežnikov DNS, jih ne izvajamo, razen če so nujno potrebni. Vedno poskusimo iti od preprostega k kompleksnemu.

minimum : V različicah pred BIND 8.2 zadnji zapis SOA označuje tudi privzeti čas trajanja in negativni čas trajanja predpomnjenja za cono. Ta čas se nanaša na vse negativne odgovore, ki jih je za cono dal avtoritativni strežnik.

Datoteka območja /var/named/dynamic/db.desdelinux.fan

[root@dns ~]# nano /var/named/dynamic/db.desdelinux.fan
$TTL 3H @ V SOA dns.desdelinux.fan. root.dns.desdelinux.fan. (1; serijski 1D; osvežitev 1H; ponovni poskus 1W; potek 3H); najmanj ali ; Negativni življenjski čas predpomnjenja; @ IN NS dns.desdelinux.fan. @ IN MX 10 email.desdelinux.fan. @ IN TXT "FromLinux, vaš spletni dnevnik, posvečen brezplačni programski opremi"; sysadmin V A 192.168.10.1 ad-dc V A 192.168.10.3 datotečni strežnik V A 192.168.10.4 dns V A 192.168.10.5 proxyweb V A 192.168.10.6 blog V A 192.168.10.7 ftpserver V A 192.168.10.8. 192.168.10.9 pošta IN A XNUMX

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

[root@dns ~]# poimenovano-kontrolno območje desdelinux.fan /var/named/dynamic/db.desdelinux.fan
cona desdelinux.fan/IN: naložen serijski 1 OK

Ustvarimo datoteko Reverse Zone 10.168.192.in-addr.arpa

  • Zapis SOA v tej coni je enak zapisu v neposredni coni, ne da bi upoštevali zapis MX..
[root @ dns ~] # nano /var/named/dynamic/db.10.168.192.in-addr.arpa
$TTL 3H @ V SOA dns.desdelinux.fan. root.dns.desdelinux.fan. (1; serijski 1D; osvežitev 1H; ponovni poskus 1W; potek 3H); najmanj ali ; Negativni življenjski čas predpomnjenja; @ IN NS dns.desdelinux.fan. ; 1 IN PTR sistemski skrbnik.desdelinux.fan. 3 IN PTR ad-dc.desdelinux.fan. 4 V datotečnem strežniku PTR.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 V 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 
cona 10.168.192.in-addr.arpa/IN: naložen serijski 1 OK

Pred ponovnim zagonom imenovanega preverimo njegovo konfiguracijo

  • Dokler nismo prepričani, da konfiguracijske datoteke poimenovanega named.conf in njegove conske datoteke niso pravilno konfigurirane, priporočamo, da imenovanega demona ne zaženete znova. Če to storimo in kasneje spremenimo datoteko območja, moramo serijsko številko spremenjene cone povečati za 1.
  • Poglejmo "." na koncu imen domen in gostiteljev.
[root @ dns ~] # named-checkconf 
[root @ dns ~] # named-checkconf -z
cona localhost.localdomain/IN: naložena serijska 0 cona localhost/IN: naložena serijska 0 cona 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: naloženo serijsko območje 0 1.0.0.127.in-addr.arpa/IN: naloženo serijsko 0 območje 0.in-addr.arpa/IN: naloženo serijsko 0 območje desdelinux.fan/IN: naloženo serijsko 1 območje 10.168.192.in-addr.arpa/IN: naloženo serijsko 1

Vse trenutne imenovane konfiguracije

Zaradi jasnosti in čeprav bo članek postal dolg, navajamo celoten izpis ukaza named-checkconf -zp :

[root @ dns ~] # named-checkconf -zp
cona localhost.localdomain/IN: naložena serijska 0 cona localhost/IN: naložena serijska 0 cona 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: naloženo serijsko območje 0 1.0.0.127.in-addr.arpa/IN: naloženo serijsko 0 območje 0.in-addr.arpa/IN: naloženo serijsko 0 območje desdelinux.fan/IN: naložena serijska 1 cona 10.168.192.in-addr.arpa/IN: naložene serijske 1 možnosti { bindkeys-file "/etc/named.iscdlv.key"; datoteka ključa seje "/run/named/session.key"; imenik "/var/named"; dump-file "/var/named/data/cache_dump.db"; vrata za poslušanje 53 { 127.0.0.1/32; 192.168.10.5/32; }; poslušanje-v6 vrata 53 { ::1/128; }; imenik upravljanih ključev "/var/named/dynamic"; memstatistic-file "/var/named/data/named_mem_stats.txt"; pid-datoteka "/run/named/named.pid"; statistična datoteka "/var/named/data/named_stats.txt"; dnssec-omogoči da; dnssec-validacija da; rekurzija ne; dovoli-poizvedba { "ogledano"; }; dovoli-prenos { 192.168.10.1/32; }; }; acl "gledal" { 127.0.0.0/8; 192.168.10.0/24; }; beleženje { kanal "default_debug" { datoteka "data/named.run"; dinamična resnost; }; }; ključ "dhcp-ključ" { algoritem "hmac-md5"; skrivnost "OI7Vs+TO83L7ghUm2xNVKg=="; }; območje "." IN { tip namig; datoteka "named.ca"; }; cona "localhost.localdomain" IN { type master; datoteka "named.localhost"; dovoli posodobitev { "brez"; }; }; cona "localhost" IN { type master; datoteka "named.localhost"; dovoli posodobitev { "brez"; }; }; cona "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 { vrsta master; datoteka "named.loopback"; dovoli posodobitev { "brez"; }; }; cona "1.0.0.127.in-addr.arpa" IN { type master; datoteka "named.loopback"; dovoli posodobitev { "brez"; }; }; cona "0.in-addr.arpa" IN { type master; datoteka "named.empty"; dovoli posodobitev { "brez"; }; }; cona"desdelinux.fan" { type master; datoteka "dynamic/db.desdelinux.fan"; dovoli posodobitev { ključ "dhcp-ključ"; }; }; cona "10.168.192.in-addr.arpa" { tip master; datoteka "dynamic/db.10.168.192.in-addr.arpa "; allow-update { key "dhcp-key"; }; }; managed-keys { "." initial-key 257 3 8 "AwEAAagAIKlVZrpC6Ia7gEzahOR+9W29euxhJhVVLOyQbSEW0O8gcCjF FVQUTf6v58fLjwBd0YI0EzrAcQqBGCzh/RStIoO8g 0NfnfL2MTJRkxoX bfDaUeVPQuYEhg37NZWAJQ9VnMVDxP/VHL496M/QZxkjf5/Efucp2gaD F6dsV6DoBQzgul68sGIcGOYl0OyQdXfZ1relS Qageu+ipAdTTJ9AsRTAoub7ONGcLmqrAmRLKBP6dfwhYB3N5knNnulq QxA +Uk2ihz8="; };
  • Po postopku spreminjanja named.conf Glede na naše potrebe in preverjanje ter ustvarjanje vsake datoteke območja in preverjanje dvomimo, da se bomo morali soočiti z večjimi težavami s konfiguracijo. Na koncu se zavedamo, da gre za fantovsko igro z veliko koncepti in razburljivo sintakso. 

Preverjanja so vrnila zadovoljive rezultate, zato lahko ponovno zaženemo BIND – z imenom.

Imenovani znova zaženemo in preverimo njegovo stanje

[root @ dns ~] # systemctl znova zaženite named.service
[root @ dns ~] # systemctl status named.service

Če se v izpisu zadnjega ukaza pojavijo kakršne koli napake, morate znova zagnati storitev named.service in ponovno preveriti njeno stanje . Če napak ni več, se je storitev uspešno zagnala. V nasprotnem primeru morate natančno pregledati vse spremenjene in ustvarjene datoteke ter ponoviti postopek.

Pravilni izhod stanja mora biti:

[root @ dns ~] # systemctl status named.service
● named.service - Naložena domena internetnega imena (DNS) Berkeley: naloženo (naloženo (/usr/lib/systemd/system/named.service; omogočeno; prednastavitev ponudnika: onemogočeno) Aktivno: aktiven (teče) od ned 2017-01-29 10:05:32 EST; Pred 2min 57s 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" ]; nato /usr/sbin/named-checkconf -z /etc/named.conf; else echo "Preverjanje datotek območja je onemogočeno"; fi (code=exited, status=0/SUCCESS) Glavni PID: 1791 (named) CGroup: /system.slice/named.service └─1791 /usr/sbin/named -u named 29. januar 10:05:32 dns named [1791]: cona 1.0.0.127.in-addr.arpa/IN: naložena serijska številka 0. 29. jan. 10:05:32 ime dns [1791]: cona 10.168.192.in-addr.arpa/IN: naložena serijska številka 1. jan. 29 10:05:32 ime DNS [1791]: cona 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 : naložen serijski 0 29. jan 10:05:32 ime dns [1791]: območje desdelinux.fan/IN: naložen serijski Jan 1 29 10:05:32 dns named [1791]: cona localhost.localdomain/IN: naložen serijski Jan 0 29 10:05:32 dns named [1791]: cona localhost/IN: naloženo serijski 0 29. jan 10:05:32 dns imenovan [1791]: vsa območja naložena
29. januar 10:05:32 dns z imenom [1791]: tek
29. januar 10:05:32 dns systemd [1]: Zagnala domeno internetnega imena Berkeley (DNS). 29. januar 10:05:32 dns z imenom [1791]: cona 10.168.192.in-addr.arpa/IN: pošiljanje obvestil (serijska 1)

Pregledi

Preverjanja lahko izvajate na istem strežniku ali na računalniku, ki je povezan v LAN. Raje jih delamo iz ekipe sistemski skrbnik.desdelinux.fan kateremu smo izrecno dovolili opravljati prenose z območja. Datoteka / Etc / resolv.conf te ekipe je naslednje:

buzz @ sysadmin: ~ $ cat /etc/resolv.conf 
# Ustvarjeno z iskanjem NetworkManager desdelinux.fan imenski strežnik 192.168.10.5

buzz@sysadmin:~$ dig desdelinux.fan axfr
; <<>> DiG 9.9.5-9+deb8u1-Debian <<>> desdelinux.fan axfr ;; globalne možnosti: +cmd
desdelinux.fan. 10800 IN SOA dns.desdelinux.fan. root.dns.desdelinux.fan. 1 86400 3600 604800 10800
desdelinux.fan. 10800 IN NS dns.desdelinux.fan.
desdelinux.fan. 10800 V MX 10 e-pošti.desdelinux.fan.
desdelinux.fan. 10800 IN TXT "FromLinux, vaš blog, posvečen brezplačni programski opremi" ad-dc.desdelinux.fan. 10800 V blogu 192.168.10.3.desdelinux.fan. 10800 V A 192.168.10.7 dns.desdelinux.fan. 10800 IN NA 192.168.10.5 datotečni strežnik.desdelinux.fan. 10800 IN 192.168.10.4 ftpserver.desdelinux.fan. 10800 IN A 192.168.10.8 pošta.desdelinux.fan. 10800 IN 192.168.10.9 proxyweb.desdelinux.fan. 10800 IN A 192.168.10.6 sistemski skrbnik.desdelinux.fan. 10800 IN NA 192.168.10.1
desdelinux.fan. 10800 IN SOA dns.desdelinux.fan. root.dns.desdelinux.fan. 1 86400 3600 604800 10800 ;; Čas poizvedbe: 0 msec ;; STREŽNIK: 192.168.10.5#53(192.168.10.5) ;; KDAJ: nedelja, 29. januar ob 11:44:18 EST 2017 ;; Velikost XFR: 13 zapisov (1 sporočilo, 385 bajtov)

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 možnosti: +cmd 10.168.192.in-addr.arpa. 10800 IN 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 sistemski skrbnik.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 datotečni strežnik.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 V PTR pošti.desdelinux.fan. 10.168.192.in-addr.arpa. 10800 IN 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 ;; Čas poizvedbe: 0 msec ;; STREŽNIK: 192.168.10.5#53(192.168.10.5) ;; KDAJ: nedelja, 29. januar ob 11:44:57 EST 2017 ;; Velikost XFR: 11 zapisov (1 sporočilo, 352 bajtov)

buzz@sysadmin:~$ kopati SOA desdelinux.fan
buzz@sysadmin:~$ dig IN MX desdelinux.fan buzz@sysadmin:~$ dig IN TXT desdelinux.fan
buzz @ sysadmin: ~ $ gostitelj dns
dns.desdelinux.fan ima naslov 192.168.10.5
buzz @ sysadmin: ~ $ gostitelj sysadmin
sistemski skrbnik.desdelinux.fan ima naslov 192.168.10.1 ... In vsa druga preverjanja, ki jih potrebujemo
  • Zaenkrat imamo osnovo za DNS strežnik v našem omrežju MSP. Upamo, da ste uživali v celotnem postopku, ki je bil precej preprost, kajne? 

Namestimo in konfiguriramo DHCP

[root @ dns ~] # yum namestite dhcp
Naloženi vtičniki: najhitrejše zrcalo, centos-base langpacks | 3.4 kB 00:00:00 centos-posodobitve | 3.4 kB 00:00:00 Hitrost nalaganja zrcala iz predpomnjene datoteke gostitelja Reševanje odvisnosti -> Izvajanje preizkusa transakcije ---> Paket dhcp.x86_64 12: 4.2.5-42.el7.centos mora biti nameščen -> Razreševanje odvisnosti ukinjene razrešene odvisnosti =============================================== =================================================== ==================================== Velikost repozitorija arhitekture paketov =========== =================================================== =================================================== ====================== Namestitev: dhcp x86_64 12: 4.2.5-42.el7.centos-base 511k Povzetek transakcije ==== =================================================== =================================================== ============================ Namesti 1 paket Skupna velikost prenosa: 511k Velikost namestitve: 1.4 M Ali je to v redu [y / d / N]: y Prenašanje paketov: dhcp-4.2.5-42.el7.centos.x86_64.rpm | 511 kB 00:00:00 Izvajanje preverjanja transakcije Izvajanje preizkusa transakcije Preizkus transakcije je uspel Zagon transakcije Namestitev: 12: dhcp-4.2.5-42.el7.centos.x86_64 1/1 Preverjanje: 12: dhcp-4.2.5-42. el7.centos.x86_64 1/1 Nameščeno: dhcp.x86_64 12: 4.2.5-42.el7.centos Končano!

[root @ dns ~] # nano /etc/dhcp/dhcpd.conf
# # Konfiguracijska datoteka strežnika DHCP. # glejte /usr/share/doc/dhcp*/dhcpd.conf.example # glejte stran priročnika dhcpd.conf(5) # ddns-update-style interim; ddns-posodobitve vklopljene; ddns-ime-domene "desdelinux.fan."; ddns-rev-ime-domene "in-addr.arpa."; prezri posodobitve odjemalca; avtoritativno; možnost ip-forwarding izklopljena; možnost ime-domene "desdelinux.fan"; # možnost ntp-servers 0.pool.ntp.org, 1.pool.ntp.org, 2.pool.ntp.org, 3.pool.ntp.org; vključi "/etc/dhcp.key" cona desdelinux.fan. { primarni 127.0.0.1; ključ dhcp-ključ; } območje 10.168.192.in-addr.arpa. { primarni 127.0.0.1; ključ dhcp-ključ; } skupno omrežje redlocal { podomrežje 192.168.10.0 omrežna maska ​​255.255.255.0 { možnost usmerjevalniki 192.168.10.1; možnost podomrežna maska ​​255.255.255.0; možnost oddajni naslov 192.168.10.255; možnost strežniki domenskih imen 192.168.10.5; možnost netbios-name-servers 192.168.10.5; območje 192.168.10.30 192.168.10.250; } } # KONEC dhcpd.conf

[root @ dns ~] # dhcpd -t
Internet Systems Consortium DHCP Server 4.2.5 Copyright 2004-2013 Internet Systems Consortium. Vse pravice pridržane. Za informacije obiščite https://www.isc.org/software/dhcp/ Ne iščite LDAP, ker ldap-server, ldap-port in ldap-base-dn niso bili določeni v konfiguracijski datoteki

[root @ dns ~] # systemctl omogoči dhcpd
Ustvarjena je simbolna povezava 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 - Naložen demon strežnika DHCPv4: naložen (/usr/lib/systemd/system/dhcpd.service; omogočeno; prednastavitev prodajalca: onemogočeno) Aktivno: aktivno (v teku) od doma 2017-01-29 12:04:59 ITS T; Pred 23 leti Dokumenti: man: dhcpd (8) man: dhcpd.conf (5) Glavni PID: 2381 (dhcpd) Stanje: "Pošiljanje paketov ..." Skupina: /system.slice/dhcpd.service └─2381 / usr / sbin / dhcpd -f -cf /etc/dhcp/dhcpd.conf -user dhcpd -group dhcpd --no-pid 29. januar 12:04:59 dns dhcpd [2381]: Internet Systems Consortium DHCP Server 4.2.5 29. januar 12 : 04: 59 dns dhcpd [2381]: Copyright 2004-2013 Internet Systems Consortium. 29. januar 12:04:59 dns dhcpd [2381]: Vse pravice pridržane. 29. januar 12:04:59 dns dhcpd [2381]: Za informacije obiščite https://www.isc.org/software/dhcp/ 29. januar 12:04:59 dns dhcpd [2381]: LDAP ne išče od ldap -server, ldap-port in ldap-base-dn niso bili določeni v konfiguracijski datoteki 29. januarja 12:04:59 dns dhcpd [2381]: 0 datotek za zakup je zapisal v zakup. 29. januar 12:04:59 dns dhcpd [2381]: Poslušanje na LPF / eth0 / 52: 54: 00: 12: 17: 04 / redlocal 29. januar 12:04:59 dns dhcpd [2381]: Pošiljanje na LPF / eth0 / 52: 54: 00: 12: 17: 04 / redlocal 29. januar 12:04:59 dns dhcpd [2381]: Pošiljanje v vtičnico / rezervni / nadomestni-net 29. januar 12:04:59 dns systemd [1]: Začelo DHCPv4 strežniški demon.

Kaj je še treba storiti?

Preprosto. Zaženite Windows 7 ali drugega odjemalca z brezplačno programsko opremo in začnite testirati in preverjati. To smo storili z dvema strankama: sedem.desdelinux.fan y suse-desktop.desdelinux.fan. Pregledi so bili naslednji:

buzz @ sysadmin: ~ $ gostitelj sedem
sedem.desdelinux.fan ima naslov 192.168.10.30

buzz@sysadmin:~$ gostitelj sedem.desdelinux.fan
sedem.desdelinux.fan ima naslov 192.168.10.30

buzz@sysadmin:~$ dig IN TXT sedem.desdelinux.fan
.... ;; VPRAŠANJE: ;sedem.desdelinux.fan. V TXT ;; ODDELEK ZA ODGOVORE: sedem.desdelinux.fan. 3600 IN TXT"31b7228ddd3a3b73be2fda9e09e601f3e9"....

Ekipo "sedem" preimenujemo v "LAGER" in ponovno zaženemo. Po ponovnem zagonu novega LAGERja preverimo:

buzz @ sysadmin: ~ $ gostitelj sedem
Sedem gostiteljev ni mogoče najti: 5 (ZAVRNJENO)

buzz@sysadmin:~$ gostitelj sedem.desdelinux.fan
Gostitelj sedmi.desdelinux.fan ni bilo mogoče najti: 3 (NXDOMAIN)

buzz@sysadmin: ~ $ gostiteljski lager
lager.desdelinux.fan ima naslov 192.168.10.30

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

buzz@sysadmin:~$ dig IN TXT lager.desdelinux.fan
.... ;; VPRAŠANJE: ;lager.desdelinux.fan. V TXT ;; ODDELEK ZA ODGOVOR: lager.desdelinux.fan. 3600 IN TXT"31b7228ddd3a3b73be2fda9e09e601f3e9"....

Glede odjemalca suse-desktop:

buzz @ sysadmin: ~ $ gostitelj suse-dektop
Gostitelja suse-dektop ni mogoče najti: 5 (ZAVRNJENO)

buzz @ sysadmin: ~ $ gostitelj suse-namizje
suse-desktop.desdelinux.fan ima naslov 192.168.10.33

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

buzz @ sysadmin: ~ $ gostitelj 192.168.10.33
33.10.168.192.in-addr.arpa kazalec imena domene suse-desktop.desdelinux.fan.

buzz @ sysadmin: ~ $ gostitelj 192.168.10.30
30.10.168.192.in-addr.arpa kazalec imena domene VEČJI.desdelinux.fan.
buzz @ sysadmin: ~ $ dig -x 192.168.10.33
.... ;; RAZDELEK VPRAŠANJA: ;33.10.168.192.in-addr.arpa. V PTR ;; ODDELEK ODGOVOROV: 33.10.168.192.in-addr.arpa. 3600 IN PTR suse-namizni računalnik.desdelinux.fan. ;; ODDELEK OBLASTI: 10.168.192.in-addr.arpa. 10800 IN NS dns.desdelinux.fan. ;; DODATNI RAZDELEK: dns.desdelinux.fan. 10800 IN DO 192.168.10.5 ....

buzz@sysadmin:~$ dig IN TXT suse-desktop.desdelinux.oboževalec....
;uporabi namizje.desdelinux.fan. V TXT ;; ODDELEK ZA ODGOVORE: suse-desktop.desdelinux.fan. 3600 IN TXT "31b78d287769160c93e6dca472e9b46d73"

;; ODDELEK ORGANA:
desdelinux.fan. 10800 IN NS dns.desdelinux.fan. ;; DODATNI RAZDELEK: dns.desdelinux.fan. 10800 IN DO 192.168.10.5
....

Zaženimo tudi naslednje ukaze

[root@dns ~]# dig desdelinux.fan axfr
; <<>> DiG 9.9.4-RedHat-9.9.4-29.el7_2.4 <<>> desdelinux.fan axfr ;; globalne možnosti: +cmd
desdelinux.fan. 10800 IN SOA dns.desdelinux.fan. root.dns.desdelinux.fan. 6 86400 3600 604800 10800
desdelinux.fan. 10800 IN NS dns.desdelinux.fan.
desdelinux.fan. 10800 V MX 10 e-pošti.desdelinux.fan.
desdelinux.fan. 10800 IN TXT "FromLinux, vaš blog, posvečen brezplačni programski opremi" ad-dc.desdelinux.fan. 10800 V blogu 192.168.10.3.desdelinux.fan. 10800 V A 192.168.10.7 dns.desdelinux.fan. 10800 IN NA 192.168.10.5 datotečni strežnik.desdelinux.fan. 10800 IN 192.168.10.4 ftpserver.desdelinux.fan. 10800 V 192.168.10.8 LAGER.desdelinux.fan. 3600 IN TXT"31b7228ddd3a3b73be2fda9e09e601f3e9"LAGER.desdelinux.fan.   3600 V e-pošti 192.168.10.30.desdelinux.fan. 10800 IN 192.168.10.9 proxyweb.desdelinux.fan. 10800 IN A 192.168.10.6 suse-desktop.desdelinux.fan. 3600 IN TXT"31b78d287769160c93e6dca472e9b46d73" suse-desktop.desdelinux.fan. 3600 IN A 192.168.10.33 sistemski skrbnik.desdelinux.fan. 10800 IN NA 192.168.10.1
desdelinux.fan. 10800 IN SOA dns.desdelinux.fan. root.dns.desdelinux.fan. 6 86400 3600 604800 10800

V prejšnjem izpisu smo s krepko pisavo označili TTL (v sekundah) za naprave z naslovi IP, ki jih dodeli storitev DHCP, in ki imajo izrecno deklarirano vrednost TTL 3600 , ki jo zagotavlja DHCP. Statične IP-je ureja vrednost TTL 3H (3 ure = 10800 sekund), deklarirana v zapisu SOA vsake conske datoteke.

Na enak način lahko preverijo tudi vzvratno območje.

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

Drugi izredno zanimivi ukazi so:

[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

Ročno spreminjanje datotek z območji

Ko DHCP prevzame dinamično posodabljanje conskih datotek imenovanega strežnika , moramo v primeru ročnega spreminjanja conske datoteke izvesti naslednji postopek, vendar ne prej, kot se naučimo malo več o tem, kako deluje pripomoček rndc za nadzor imenskega strežnika.

[root @ dns ~] # man rndc
....
       zamrznitev [cona [razred [pogled]]]
           Začasna ustavitev posodobitev dinamičnega območja. Če območje ni določeno, so vsa območja začasno ustavljena. To omogoča ročno urejanje območja, ki se običajno posodablja z dinamično posodobitvijo. Prav tako povzroči, da se spremembe v datoteki dnevnika sinhronizirajo z glavno datoteko. Vsi poskusi dinamične posodobitve bodo zavrnjeni, medtem ko je območje zamrznjeno.

       odtajanje [cona [razred [pogled]]]
           Omogočite posodobitve zamrznjenega dinamičnega območja. Če območje ni določeno, so omogočena vsa zamrznjena območja. To povzroči, da strežnik ponovno naloži območje z diska in znova omogoči dinamične posodobitve po zaključku nalaganja. Ko se območje otopi, dinamične posodobitve ne bodo več zavrnjene. Če se je območje spremenilo in se uporablja možnost ixfr-from-razlike, bo datoteka dnevnika posodobljena tako, da odraža spremembe v območju. V nasprotnem primeru bo, če se bo območje spremenilo, odstranjena vsa obstoječa datoteka dnevnika. ....

Kaj si mislil, da bom prepisal cel priročnik?... kos in gredo z avtom. Ostalo prepuščam tebi. 

V bistvu:

  • rndc zamrznitev [cona [razred [pogled]]], začasno ustavi dinamično posodobitev območja. Če ena ni določena, bodo vse zamrznjene. Ukaz omogoča ročno urejanje zamrznjene cone ali vseh con. Vsaka dinamična posodobitev bo zavrnjena, ko bo zamrznjena.
  • rndc taljenje [cona [razred [ogled]]], omogoča dinamične posodobitve na prej zamrznjenem območju. DNS strežnik znova naloži zonsko datoteko z diska, dinamične posodobitve pa se znova omogočijo po končanem vnovičnem nalaganju.

Katere previdnostne ukrepe je treba upoštevati pri ročnem urejanju conske datoteke? Enako kot pri njenem ustvarjanju, pri čemer ne pozabimo povečati serijske številke za 1, preden shranimo datoteko s končnimi spremembami.

Primer:

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

[root@dns ~]# nano /var/named/dynamic/db.desdelinux.fan
Datoteko območja spremenim iz kakršnega koli razloga, potrebnega ali ne. Spremembe shranim

[root @ dns ~] # rndc otoplitev desdelinux.fan
Začelo se je ponovno nalaganje in odtajanje cone. Preverite dnevnike, da vidite rezultat.

[root @ dns ~] # journalctl -f
29. januar 14:06:46 dns named [2257]: območje odmrzovanja 'desdelinux.fan/IN': uspeh
29. januar 14:06:46 ime dns [2257]: območje desdelinux.fan/IN: conska serija (6) nespremenjena. območje morda ne bo uspelo prenesti na podrejene.
29. januar 14:06:46 ime dns [2257]: območje desdelinux.fan/IN: naložen serijski 6

Napaka v prejšnjem izhodu, ki je na konzoli prikazana rdeče, je posledica tega, da sem "pozabil" povečati serijsko številko za 1. Če bi pravilno sledil postopku, bi bil izhod:

[root @ dns ~] # journalctl -f
-- Dnevniki se začnejo ob ned 2017-01-29 08:31:32 EST. -- 29. januar 14:06:46 dns named[2257]: cona desdelinux.fan/IN: naložen serijski Jan 6 29 14:10:01 dns systemd[1]: Začeta seja 43 uporabnika root. 29. januar 14:10:01 dns systemd[1]: Zagon seje 43 korenskega uporabnika. 29. jan 14:10:01 dns CROND[2693]: (root) CMD (/usr/lib64/sa/sa1 1 1) 29. jan 14:10:45 dns named [2257]: prejet ukaz nadzornega kanala 'zamrzni desdelinux.fan' 29. januar 14:10:45 dns named[2257]: zamrzovalno območje 'desdelinux.fan/IN': uspeh, 29. januar 14:10:58 dns named [2257]: prejet ukaz nadzornega kanala 'thaw' desdelinux.fan' 29. januar 14:10:58 dns named [2257]: območje odmrzovanja 'desdelinux.fan/IN': uspeh 29. januar 14:10:58 dns named [2257]: cona desdelinux.fan/IN: dnevniška datoteka je zastarela: odstranjevanje dnevniške datoteke 29. januar 14:10:58 dns named [2257]: cona desdelinux.fan/IN: naložen serijski 7
  • Bralci, ponavljam, da morate natančno prebrati izhode ukazov. Za nekaj so njegovi razvijalci toliko dela porabili za programiranje vsakega ukaza, ne glede na to, kako preprost je.

Povzetek

Doslej smo obravnavali izvajanje para DNS - DHCP, pomembnih in ključnih storitev za dobro delovanje našega omrežja MSP, in sicer pri dodeljevanju dinamičnih naslovov prek DHCP ter razrešitvi računalniških in domenskih imen prek DNS.

Resnično upamo, da ste uživali v celotnem postopku, kot smo mi. Čeprav se zdi, da je uporaba konzole težja, je z njeno pomočjo storitev v sistemu UNIX® / Linux veliko lažje in poučnejše.

Oprostite mi za kakršno koli napačno razlago konceptov, ki so bili mišljeni, ustvarjeni, napisani, revidirani, prepisani in objavljeni v jeziku Shakespeara, ne Cervantesa. 

Naslednja dostava

Mislim, da je malo več istega - s teoretičnimi dodatki o zapisih DNS - vendar v Debianu. Te distribucije ne moremo pozabiti, kajne?


Dodaj kot prednostni vir v Googlu