DNS și DHCP în Debian 8 „Jessie” - Rețele SMB

Indice general al seriei: Rețele de calculatoare pentru IMM-uri: Introducere

Bună prieteni!. După câteva articole anterioare despre numele domeniului și DHCP publicat în "DNS și DHCP în openSUSE 13.2 'Arlequin'" și "DNS și DHCP pe CentOS 7«, Ambele din serie Rețele IMM-uri, trebuie să configurăm aceste servicii în Debian.

Repetăm ​​că un bun punct de plecare pentru a afla despre conceptele teoretice de DNS și DHCP este Wikipedia.

Instalarea sistemului de operare

Vom începe de la instalarea de bază a unui server cu sistemul de operare Debian 8 „Jessie” fără a instala niciun mediu grafic sau alt program. O mașină virtuală cu 512 megaocteți RAM și un hard disk de 20 gigaocteți este mai mult decât suficient.

În timpul procesului de instalare -de preferință în modul text- și urmând ordinea ecranelor, am ales următorii parametri:

  • limbă: Spaniolă - spaniolă
  • Țara, teritoriul sau zona: SUA
  • Harta tastelor de utilizat: Engleza americana
  • Configurați rețeaua manual:
    • Adresa IP: 192.168.10.5
    • Netmask: 255.255.255.0
    • Gateway: 192.168.10.1
    • Adrese de nume de server: 127.0.0.1
    • Numele mașinii: dns
    • Numele domeniului: desdelinux.ventilator
  • Parola super utilizator: Parola dvs. (apoi cereți confirmarea)
  • Numele complet pentru noul utilizator: Debian First OS Buzz
  • Numele de utilizator al contului: zumzet
  • Alegeți o parolă pentru noul utilizator: Parola dvs. (apoi cereți confirmarea)
  • Selectați fusul orar: Est
  • Metoda de partiționare: Ghidat - utilizați întregul disc
    • Alegeți discul pe partiție: Discul virtual 1 (vda) - Dispozitiv Virto Block de 21.5 GB
    • Schema de partiționare: toate fișierele dintr-o singură partiție (recomandată pentru începători).
    • Finalizați partiționarea și scrieți modificările pe disc
    • Doriți să scrieți modificările pe discuri?
  • Doriți să analizați un alt CD sau DVD?:
  • Doriți să utilizați o replică ad?:
  • Doriți să participați la sondajul de utilizare a pachetelor?:
  • Alegeți programele de instalat:
    [] Mediul desktop Debian
    [*] Utilități de sistem standard
  • Doriți să instalați încărcătorul de încărcare GRUB în înregistrarea principală de încărcare?
    • / dev / vda
  • "Instalare completă":

După părerea mea modestă, instalarea Debian este simplă. Este necesar doar să răspundeți la întrebări cu privire la opțiunile predefinite și la alte informații. Îndrăznesc chiar să spun că este mai ușor să urmezi pașii anteriori decât printr-un videoclip, de exemplu. Când citesc nu pierd concentrare. O altă problemă este să vizionez, să citesc, să interpretez și să dau videoclipul înainte și înapoi, când pierd sau nu înțeleg bine un sens important. O foaie scrisă de mână sau un fișier text simplu copiat pe mobil, va servi perfect ca un ghid eficient.

Setări inițiale

După finalizarea instalării de bază și prima repornire, procedăm la declararea depozitelor de programe.

Când editați fișierul surse.list, comentăm toate intrările existente în mod implicit, deoarece vom lucra numai cu depozite locale. Conținutul final al fișierului - cu excepția liniilor comentate - ar fi:

root @ dns: ~ # nano /etc/apt/sources.list
deb http://192.168.10.1/repos/jessie/debian/ jessie main contrib deb http://192.168.10.1/repos/jessie/debian-security/ jessie / updates main contrib

Actualizăm sistemul

root @ dns: ~ # aptitude update
root @ dns: ~ # aptitude upgrade
root @ dns: ~ # reboot

Instalăm SSH pentru a accesa de la distanță

root @ dns: ~ # aptitude install ssh

Pentru a permite utilizatorului să înceapă o sesiune la distanță prin SSH rădăcină -Din numai LAN Enterprise- îi modificăm fișierul de configurare:

root @ dns: ~ # nano / etc / ssh / sshd_config
.... PermitRootLogin da ....

root @ dns: ~ # systemctl reporniți ssh.service
root @ dns: ~ # systemctl status ssh.service

Începem o sesiune la distanță prin SSH în „dns” de pe mașina „sysadmin”:

buzz @ sysadmin: ~ $ rm .ssh / known_hosts buzz @ sysadmin: ~ $ ssh root@192.168.10.5 ... root@192.168.10.5's password: ... root @ dns: ~ #

Fișierele principale de configurare

Fișierele principale ale configurației sistemului vor fi în conformitate cu selecțiile noastre din timpul instalării:

root @ dns: ~ # cat / etc / hosts
127.0.0.1   localhost
192.168.10.5    dns.desdelinux.fan  dns

# The following lines are desirable for IPv6 capable hosts
::1     localhost ip6-localhost ip6-loopback
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters

root @ dns: ~ # cat /etc/resolv.conf 
căutare desdelinux.fan
nameserver 127.0.0.1

root @ dns: ~ # hostname
dns

root @ dns: ~ # hostname -f
dns.desdelinux.ventilator

root @ dns: ~ # cat / etc / network / interfaces
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

source /etc/network/interfaces.d/*

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
allow-hotplug eth0
iface eth0 inet static
    address 192.168.10.5
    netmask 255.255.255.0
    network 192.168.10.0
    broadcast 192.168.10.255
    gateway 192.168.10.1
    # dns-* options are implemented by the resolvconf package, if installed
    dns-nameservers 127.0.0.1
    dns-search desdelinux.ventilator

Instalăm pachete de super experiență

root @ dns: ~ # aptitude install htop mc deborphan

Curățarea pachetelor descărcate, dacă există

root @ dns: ~ # aptitude install -f root @ dns: ~ # aptitude purge ~ c root @ dns: ~ # aptitude clean root @ dns: ~ # aptitude autoclean

Instalăm BIND9

  • ÎNAINTE de a instala BIND recomandăm cu tărie vizitați pagina Tipuri de înregistrări DNS pe Wikipedia, atât în ​​versiunile sale în spaniolă, cât și în engleză. Aceste tipuri de registre sunt cele pe care le vom folosi în configurația fișierelor Zones, atât Direct, cât și Reverse. Este foarte educativ să știm cu ce avem de-a face.
  • de asemenea noi sugerăm Citește urmatoarele Cerere de comentarii RFC - Cereri de comentarii, care sunt strâns legate de o funcționare sănătoasă a serviciului DNS, în special în ceea ce privește recursiunea la serverele rădăcină:
    • RFC 1912, 5735, 6303 și BCP 32: referitoare la localhost
    • RFC 1912, 6303: Zona de stil pentru adresa IPhost localhost
    • RFC 1912, 5735 și 6303: În legătură cu rețeaua locală - Rețeaua «Aceasta»
    • RFC 1918, 5735 și 6303: Rețele de utilizare privată
    • RFC 6598: Spațiu de adresă partajat
    • RFC 3927, 5735 și 6303: Link-local / APIPA
    • RFC 5735 și 5736: Atribuțiile protocolului Internet Engineering Task Force
    • RFC 5735, 5737 și 6303: TEST-NET- [1-3] pentru documentare
    • RFC 3849 și 6303: Gama de exemple IPv6 pentru documentare
    • BCP 32: Nume de domenii pentru documentare și testare
    • RFC 2544 și 5735: Testarea benchmark-ului routerului
    • RFC 5735: IANA rezervat - Vechiul spațiu de clasă E.
    • RFC 4291: Adrese IPv6 neatribuite
    • RFC 4193 și 6303: ULA IPv6
    • RFC 4291 și 6303: IPv6 Link Local
    • RFC-urile 3879 și 6303: Adrese de site-uri depreciate IPv6
    • RFC 4159: IP6.INT este învechit

Instalare

root @ dns: ~ # aptitude search bind9
p bind9 - Internet Domain Name Server p bind9-doc - Documentație pentru BIND i bind9-host - Versiunea „gazdă” la pachet cu BIND 9.X p bind9utils - Utilități pentru BIND p gforge-dns-bind9 - instrument de dezvoltare colaborativă - management DNS (folosind Bind9) i A libbind9-90 - Biblioteca partajată BIND9 utilizată de BIND

Încercați și să alergați aptitude search ~ dbind9

root @ dns: ~ # aptitude install bind9

root @ dns: ~ # systemctl reporniți bind9.service

root @ dns: ~ # systemctl status bind9.service
● bind9.service - BIND Domain Name Server Încărcat: încărcat (/lib/systemd/system/bind9.service; activat) Drop-In: /run/systemd/generator/bind9.service.d └─50-insserv.conf- $ named.conf
   Activ: activ (funcționare) de vineri 2017-02-03 10:33:11 EST; Acum 1 s Docs: man: named (8) Proces: 1460 ExecStop = / usr / sbin / rndc stop (cod = ieșit, status = 0 / SUCCES) PID principal: 1465 (numit) CGroup: /system.slice/bind9.service └─1465 / usr / sbin / named -f -u bind 03 februarie 10:33:11 dns numit [1465]: zonă goală automată: 8.BD0.1.0.0.2.IP6.ARPA 03 februarie 10:33:11 dns denumit [1465]: ascultare canal de comandă pe 127.0.0.1 # 953 03 februarie 10:33:11 dns numit [1465]: ascultare canal de comandă pe :: 1 # 953 03 februarie 10:33:11 dns numit [1465]: gestionat -keys-zone: încărcat serial 2 februarie 03 10:33:11 dns numit [1465]: zona 0.in-addr.arpa/IN: încărcat serial 1 februarie 03 10:33:11 dns numit [1465]: zone localhost / IN: încărcat serial 2 februarie 03 10:33:11 dns numit [1465]: zona 127.in-addr.arpa/IN: încărcat serial 1 februarie 03 10:33:11 dns numit [1465]: zona 255.in -addr.arpa/IN: încărcat serial 1 februarie 03 10:33:11 dns numit [1465]: toate zonele încărcate 03 februarie 10:33:11 dns numit [1465]: rulare Sugestie: Unele linii au fost elipsate, utilizați -l a arăta integral.

Fișiere de configurare instalate de BIND9

Într-un mod ușor diferit de configurarea serviciului DNS în CentOS și openSUSE, în Debian sunt create următoarele fișiere în director / etc / bind:

root @ dns: ~ # ls -l / etc / bind /
total 52 -rw-r - r-- 1 rădăcină rădăcină 2389 30 iunie 2015 bind.keys -rw-r - r-- 1 rădăcină rădăcină 237 30 iun 2015 0 db.1 -rw-r - r-- 271 rădăcină rădăcină 30 2015 iunie 127 db.1 -rw-r - r-- 237 rădăcină rădăcină 30 2015 iunie 255 db.1 -rw-r - r-- 353 rădăcină rădăcină 30 2015 iunie 1 db.empty -rw- r - r-- 270 rădăcină rădăcină 30 2015 iunie 1 db.local -rw-r - r-- 3048 rădăcină rădăcină 30 2015 iunie 1 db.root -rw-r - r-- 463 legătură rădăcină 30 2015 iunie 1 named.conf -rw-r - r-- 490 root bind 30 2015 iun 1 165 named.conf.default-zones -rw-r - r-- 30 root bind 2015 1 iun 890 3 named.conf.local -rw -r - r-- 10 legătură rădăcină 32 1 februarie 77:3 named.conf.options -rw-r ----- 10 legare legare 32 1 februarie 1317:30 rndc.key -rw-r - r- - 2015 rădăcină rădăcină 1918 XNUMX iunie XNUMX zones.rfcXNUMX

Toate fișierele de mai sus sunt în text simplu. Dacă vrem să cunoaștem semnificația și conținutul fiecăruia dintre ele, o putem face folosind comenzile mai puțin o pisică, care este o bună practică.

Documentație însoțitoare

În agenda de adrese / usr / share / doc / bind9 noi vom avea:

root @ dns: ~ # ls -l / usr / share / doc / bind9
total 56 -rw-r - r-- 1 rădăcină rădăcină 5927 30 iunie 2015 copyright -rw-r - r-- 1 rădăcină rădăcină 19428 30 2015 iunie 1 changelog.Debian.gz -rw-r - r-- 11790 rădăcină rădăcină 27 2014 ianuarie 1 FAQ.gz -rw-r - r-- 396 rădăcină rădăcină 30 2015 iunie 1 NEWS.Debian.gz -rw-r - r-- 3362 rădăcină rădăcină 30 2015 iun 1 README.Debian. gz -rw-r - r-- 5840 rădăcină rădăcină 27 2014 ianuarie XNUMX README.gz

În documentația anterioară vom găsi materiale de studiu abundente pe care le recomandăm să le citiți ÎNAINTE să configurați BIND și chiar ÎNAINTE să căutați pe Internet articole legate de BIND și DNS în general.. Vom citi conținutul unora dintre aceste fișiere:

Întrebări frecvente o Fîn mod necesar AContactate Qîntrebări despre BIND 9

  1. Întrebări despre compilare și instalare - Întrebări despre compilare și instalare
  2. Întrebări de configurare și configurare - Întrebări despre configurare și reglare
  3. Întrebări privind operațiunile - Întrebări despre operațiune
  4. Intrebari generale - Anchete generale
  5. Întrebări specifice sistemului de operare - Întrebări specifice despre fiecare sistem de operare
    1. HPUX
    2. Linux
    3. ferestre din
    4. FreeBSD
    5. Solaris
    6. Apple Mac OSX

ȘTIRI.Debian.gz

ȘTIRI.Debian pe scurt ne spune că parametrii permite-interogare-cache y permite-recursivitate sunt activate în mod implicit pentru ACL-uri încorporate în BIND -construit-in- 'localnets„Și“localhost'. De asemenea, ne informează că modificările implicite au fost făcute pentru a face serverele cache mai puțin atractive pentru un atac de către spoofing din rețelele externe.

Pentru a verifica ce este scris în paragraful anterior, dacă de la o mașină din rețea 192.168.10.0/24 que es la de nuestro ejemplo, realizamos una petición DNS sobre el dominio desdelinux.net, y al mismo tiempo en el propio servidor dns.desdelinux.ventilator executăm tail -f / var / log / syslog vom obține următoarele:

buzz @ sysadmin: ~ $ dig localhost
.... ;; OPT PSEUDOSECȚIE :; EDNS: versiune: 0, steaguri:; udp: 4096 ;; SECȚIUNEA ÎNTREBARE :; localhost. ÎN A ;; SECȚIUNEA DE RĂSPUNS: localhost. 604800 ÎN A 127.0.0.1 ;; SECȚIUNEA AUTORITĂȚII: localhost. 604800 IN NS localhost. ;; SECȚIUNE SUPLIMENTARĂ: localhost. 604800 ÎN AAAA :: 1

buzz@sysadmin:~$ dig desdelinux. Net
....
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;desdelinux.net.            IN  A
....
root @ dns: ~ # tail -f / var / log / syslog ....
Feb  4 13:04:31 dns named[1602]: error (network unreachable) resolving 'desdelinux.net/A/IN': 2001:7fd::1#53
Feb  4 13:04:31 dns named[1602]: error (network unreachable) resolving 'desdelinux.net/A/IN': 2001:503:c27::2:30#53
....

Rezultatul syslog este mult mai lung datorită căutării serverelor rădăcină de către BIND. Desigur, dosarul /etc/resolv.conf în echipă administrator de sistem.desdelinux.ventilator indică DNS 192.168.10.5.

Din executarea comenzilor anterioare putem trage mai multe concluzii a priori:

  • BIND este configurat în mod implicit ca un server de cache funcțional fără a fi nevoie de configurații ulterioare și răspunde la întrebările DNS pentru localnets și localhost
  • Recursivitate - Recursivitate este activat pentru localnets și localhost
  • Nu este încă un server autoritar
  • Spre deosebire de CentOS, unde a trebuit să declarăm parametrul «Port de ascultare 53 {127.0.0.1; 192.168.10.5; }; » pentru a asculta în mod explicit cererile DNS prin interfața de rețea 192.168.10.5 DNS în sine, în Debian nu este necesar deoarece acceptă cereri DNS pentru localnets și localhost Mod implicit. Examinați conținutul fișierului /etc/bind/named.conf.options și vor vedea că nu există nicio declarație ascultă.
  • Interogările IPv4 și IPv6 sunt activate

Dacă doar citind și interpretând -un tablou așa cum spunem în Cuba- arhiva ȘTIRI.Debian.gz Am ajuns la concluzii interesante care ne permit să aflăm puțin mai multe despre filosofia de configurare implicită a echipei Debian în ceea ce privește BIND, ce alte aspecte interesante putem cunoaște dacă continuăm să citim fișierele documentației însoțitoare?.

README.Debian.gz

README.Debian ne informează - printre multe alte aspecte - că extensiile de securitate pentru sistemul de nume de domeniu - Extensii de securitate a sistemului de nume de domeniu o DNSSEC, sunt activate; și reafirmă că configurația implicită funcționează pentru majoritatea serverelor (servere frunze - servere frunze referindu-se la frunzele arborelui domeniului) fără a fi nevoie de intervenția utilizatorului.

  • DNSSEC conform Wikipedia: Extensiile de securitate a sistemului de nume de domeniu (DNSSEC) este un set de specificații ale Internet Engineering Task Force (IETF) pentru securizarea anumitor tipuri de informații furnizate de sistemul de nume nume de domeniu (DNS) utilizat în Internet Protocol (IP). Este un set de extensii la DNS care furnizează clienților DNS (sau rezolvatorilor) autentificarea sursei de date DNS, refuzul autentificat al existenței și integrității datelor, dar nu disponibilitatea sau confidențialitatea.

Despre el Schema de configurare ne spune că toate fișierele de configurare statică, fișierele de zonă pentru serverele rădăcină și zonele de redirecționare și inversare ale localhost sunt in / etc / bind.

Directorul de lucru al demonilor numit es / var / cache / bind astfel încât orice fișier tranzitoriu generat de numit cum ar fi bazele de date pentru care acționează ca server sclav, sunt scrise în sistemul de fișiere / var, care este locul lor.

Spre deosebire de versiunile anterioare ale pachetului BIND pentru Debian, fișierul numit.conf și db. * furnizate, acestea sunt etichetate ca fișiere de configurare. În așa fel încât, dacă avem nevoie de un server DNS care să acționeze în principal ca un server cache și care să nu fie autoritar pentru nimeni altcineva, îl putem folosi așa cum este instalat și configurat în mod implicit.

Dacă trebuie să implementați un DNS autorizat, vă sugerează să introduceți fișierele Master Zone în același director / etc / bind. Dacă complexitatea zonelor pentru care numit va fi autoritar necesită acest lucru, se recomandă crearea unei structuri subdirectoare, referindu-se la fișierele de zonă absolut din fișier numit.conf.

Orice fișier de zonă pentru care numit acționează ca serverul sclav trebuie să fie localizat în / var / cache / bind.

Fișierele de zonă supuse actualizărilor dinamice de către DHCP sau comandă n actualizare, ar trebui depozitat în / var / lib / bind.

Dacă sistemul de operare folosește aparatură, profilul instalat funcționează numai cu setările implicite BIND. Modificări ulterioare în configurația fișierului numit acestea pot necesita modificări la profilul apparmor. Vizitat https://wiki.ubuntu.com/DebuggingApparmor înainte de a completa un formular acuzând o bug în acel serviciu.

Există mai multe probleme asociate cu rularea Debian BIND într-o cușcă Chroot - închisoare chroot. Accesați http://www.tldp.org/HOWTO/Chroot-BIND-HOWTO.html pentru mai multe informații.

Alte informații

om numit, om numit.conf, om numit-checkconf, om numit-checkzone, man rndc, și așa mai departe

root @ dns: ~ # numit -v
BIND 9.9.5-9 + deb8u1-Debian (versiune extinsă de asistență)

root @ dns: ~ # numit -V
BIND 9.9.5-9 + deb8u1-Debian (versiune extinsă de asistență) construit de marca cu '--prefix = / usr' '--mandir = / usr / share / man' \ '--infodir = / usr / share / info' '--sysconfdir = / etc / bind' \ '- -localstatedir = / var '' --enable-threads '' --enable-largefile '\' --with-libtool '' --enable-shared '' --enable-static '\' --with-openssl = / usr '' --with-gssapi = / usr '' --with-gnu-ld '\' --with-geoip = / usr '' --with-atf = no '' --enable-ipv9 '' --enable-rrl '\' --enable-filter-aaaa '\' CFLAGS = -fno-strict-aliasing -fno-delete-null-pointer-checks -DDIG_SIGCHASE -O8 'compilat de GCC 50 folosind versiunea OpenSSL : OpenSSL 6k 2 ianuarie 4.9.2 folosind versiunea libxml1.0.1: 8

root @ dns: ~ # ps -e | grep numit
  408? 00:00:00 numit

root @ dns: ~ # ps -e | grep lega
  339? 00:00:00 rpcbind

root @ dns: ~ # ps -e | grep bind9
root @ dns: ~ #

root @ dns: ~ # ls / var / run / named /
named.pid session.key  
root @ dns: ~ # ls -l /var/run/named/named.pid 
-rw-r - r-- 1 bind bind 4 Feb 4 13:20 /var/run/named/named.pid

root @ dns: starea ~ # rndc
versiune: 9.9.5-9 + deb8u1-Debian CPU-uri găsite: 9 fire de lucru: 8 ascultători UDP pe interfață: 50 număr de zone: 1 nivel de depanare: 1 xfere în execuție: 1 xfere amânate: 100 interogări SOA în curs: 0 înregistrarea interogărilor este OPRIT clienți recursivi: 0/0/0 tcp clienți: serverul 0/0 este în funcțiune
  • Importanța consultării documentației instalate cu pachetul BIND9 este incontestabilă. înainte de oricare alta.

bind9-doc

root @ dns: ~ # aptitude install bind9-doc links2
root @ dns: ~ # dpkg -L bind9-doc

El paquete bind9-doc instalează, printre alte informații utile, Manualul de referință pentru administratorul BIND 9. Pentru a accesa manualul - în limba engleză - executăm:

root @ dns: ~ # links2 fișier: ///usr/share/doc/bind9-doc/arm/Bv9ARM.html
Manual de referință pentru administratorul BIND 9 Copyright (c) 2004-2013 Internet Systems Consortium, Inc. („ISC”) Copyright (c) 2000-2003 Internet Software Consortium.

Sperăm că vă place să citiți.

  • Fără a pleca de acasă, avem la îndemână o documentație oficială abundentă despre BIND și despre serviciul DNS în general.

Configurăm BIND în stil Debian

/etc/bind/named.conf "principalul"

root @ dns: ~ # nano /etc/bind/named.conf
// Acesta este fișierul principal de configurare pentru serverul DNS BIND numit.
//
// Vă rugăm să citiți /usr/share/doc/bind9/README.Debian.gz pentru informații despre
// structura fișierelor de configurare BIND în Debian, * ÎNAINTE * personalizați
// acest fișier de configurare.
//
// Dacă doar adăugați zone, vă rugăm să faceți asta în /etc/bind/named.conf.local

includeți „/etc/bind/named.conf.options”;
includeți „/etc/bind/named.conf.local”;
includeți „/etc/bind/named.conf.default-zones”;

Titlul comentat necesită traducere?

/etc/bind/named.conf.options

root @ dns: ~ # cp /etc/bind/named.conf.options /etc/bind/named.conf.options.original

root @ dns: ~ # nano /etc/bind/named.conf.options
opțiuni {director "/ var / cache / bind"; // Dacă există un firewall între dvs. și serverele de nume cu care doriți // să vorbiți, poate fi necesar să reparați firewall-ul pentru a permite // porturilor multiple să vorbească. Consultați http://www.kb.cert.org/vuls/id/800113 // Dacă ISP-ul dvs. a furnizat una sau mai multe adrese IP pentru // servere de nume stabile, probabil că doriți să le utilizați ca expeditori. // Decomentați următorul bloc și introduceți adresele înlocuind // substituentul all-0. // expeditori {// 0.0.0.0; //}; // ================================================ ===================== $ // Dacă BIND înregistrează mesaje de eroare despre cheia rădăcină expirată, // va trebui să vă actualizați cheile. Vezi https://www.isc.org/bind-keys // ================================== =================================== $

    // Nu vrem DNSSEC
        dnssec-enable nu;
        //dnssec-validare auto;

        auth-nxdomain nu; # conform cu RFC1035

 // Nu este nevoie să ascultăm adresele IPv6
        // listen-on-v6 {any; };
    listen-on-v6 {none; };

 // Pentru verificări de la localhost și sysadmin
    // mediante dig desdelinux.fan axfr
    // No tenemos DNS Esclavos... hasta ahora
 allow-transfer {localhost; 192.168.10.1; };
};

root @ dns: ~ # named-checkconf 
root @ dns: ~ #

/etc/bind/named.conf.local

În antetul comentat al acestui fișier, recomandă includerea zonelor indicate în RFC-1918 descrisă în dosar /etc/bind/zones.rfc1918. Includerea acestor zone la nivel local prevede că orice interogare referitoare la acestea nu merge în afara rețelei locale către serverele root, ceea ce are două avantaje semnificative:

  • Rezoluție locală mai rapidă pentru utilizatorii locali
  • Nu creează trafic inutil - sau fals - către serverele rădăcină.

Personal nu am o conexiune la Internet pentru a testa recursivitatea sau redirecționarea. Cu toate acestea, și întrucât nu am invalidat Recursiunea în fișierul named.conf.options - prin intermediul recursiunii nu; - putem include zonele menționate anterior și altele pe care le explic mai jos.

La instalarea BIND 9.9.7 pe sistemul de operare FreeBSD 10.0, care este și -și întâmplător- Software gratuit, fișierul de configurare /usr/local/etc/namedb/named.conf.sample Conține o serie întreagă de domenii care recomandă deservirea locală pentru a obține, de asemenea, avantajele menționate mai sus.

Pentru a nu modifica configurația originală BIND în Debian, vă sugerăm să creați fișierul /etc/bind/zones.rfcFreeBSD și includeți-l în /etc/bind/named.conf.local cu conținutul indicat mai jos și cu căile - căi la fișiere deja adaptate la Debian:

root @ dns: ~ # nano /etc/bind/zones.rfcFreeBSD
// Spațiu de adresă partajat (RFC 6598)
zone "64.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "65.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "66.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "67.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "68.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "69.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "70.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "71.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "72.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "73.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "74.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "75.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "76.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "77.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "78.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "79.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "80.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "81.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "82.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "83.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "84.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "85.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "86.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "87.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "88.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "89.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "90.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "91.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "92.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "93.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "94.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "95.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "96.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "97.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "98.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "99.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "100.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "101.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "102.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "103.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "104.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "105.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "106.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "107.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "108.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "109.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "110.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "111.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "112.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "113.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "114.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "115.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "116.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "117.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "118.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "119.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "120.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "121.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "122.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "123.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "124.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "125.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "126.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };
zone "127.100.in-addr.arpa" { type master; file "/etc/bind/db.empty"; };

// Link-local / APIPA (RFCs 3927, 5735 și 6303)
zona "254.169.in-addr.arpa" {tip master; fișierul „/etc/bind/db.empty”; };

// Alocări protocol IETF (RFC 5735 și 5736)
zona "0.0.192.in-addr.arpa" {tip master; fișierul „/etc/bind/db.empty”; };

// TEST-NET- [1-3] pentru documentație (RFC 5735, 5737 și 6303)
zona "2.0.192.in-addr.arpa" {tip master; fișierul „/etc/bind/db.empty”; }; zona "100.51.198.in-addr.arpa" {tip master; fișierul „/etc/bind/db.empty”; }; zona "113.0.203.in-addr.arpa" {tip master; fișierul „/etc/bind/db.empty”; };

// Exemplu IPv6 pentru documentație (RFC 3849 și 6303)
zona "8.bd0.1.0.0.2.ip6.arpa" {tip master; fișierul „/etc/bind/db.empty”; };

// Nume de domenii pentru documentare și testare (BCP 32)
zona "test" {tip master; fișierul „/etc/bind/db.empty”; }; zona "exemplu" {tip master; fișierul „/etc/bind/db.empty”; }; zona "invalid" {tip master; fișierul „/etc/bind/db.empty”; }; zone "example.com" {tip master; fișier „/etc/bind/db.empty”; }; zona "exemplu.net" {tip master; fișierul „/etc/bind/db.empty”; }; zone "example.org" {tip master; fișierul „/etc/bind/db.empty”; };

// Testarea benchmark-ului routerului (RFC-urile 2544 și 5735)
zona "18.198.in-addr.arpa" {tip master; fișierul „/etc/bind/db.empty”; }; zona "19.198.in-addr.arpa" {tip master; fișierul „/etc/bind/db.empty”; };

// IANA rezervat - Vechiul spațiu de clasă E (RFC 5735)
zona "240.in-addr.arpa" {tip master; fișierul „/etc/bind/db.empty”; }; zona "241.in-addr.arpa" {tip master; fișierul „/etc/bind/db.empty”; }; zona "242.in-addr.arpa" {tip master; fișierul „/etc/bind/db.empty”; }; zona "243.in-addr.arpa" {tip master; fișierul „/etc/bind/db.empty”; }; zona "244.in-addr.arpa" {tip master; fișierul „/etc/bind/db.empty”; }; zona "245.in-addr.arpa" {tip master; fișierul „/etc/bind/db.empty”; }; zona "246.in-addr.arpa" {tip master; fișierul „/etc/bind/db.empty”; }; zona "247.in-addr.arpa" {tip master; fișierul „/etc/bind/db.empty”; }; zona "248.in-addr.arpa" {tip master; fișierul „/etc/bind/db.empty”; }; zona "249.in-addr.arpa" {tip master; fișierul „/etc/bind/db.empty”; }; zona "250.in-addr.arpa" {tip master; fișierul „/etc/bind/db.empty”; }; zona "251.in-addr.arpa" {tip master; fișierul „/etc/bind/db.empty”; }; zona "252.in-addr.arpa" {tip master; fișierul „/etc/bind/db.empty”; }; zona "253.in-addr.arpa" {tip master; fișierul „/etc/bind/db.empty”; }; zona "254.in-addr.arpa" {tip master; fișierul „/etc/bind/db.empty”; };

// Adrese IPv6 neatribuite (RFC 4291)
zona "1.ip6.arpa" {tip master; fișierul „/etc/bind/db.empty”; }; zona "3.ip6.arpa" {tip master; fișierul „/etc/bind/db.empty”; }; zona "4.ip6.arpa" {tip master; fișierul „/etc/bind/db.empty”; }; zona "5.ip6.arpa" {tip master; fișierul „/etc/bind/db.empty”; }; zona "6.ip6.arpa" {tip master; fișierul „/etc/bind/db.empty”; }; zona "7.ip6.arpa" {tip master; fișierul „/etc/bind/db.empty”; }; zona "8.ip6.arpa" {tip master; fișierul „/etc/bind/db.empty”; }; zona "9.ip6.arpa" {tip master; fișierul „/etc/bind/db.empty”; }; zona "a.ip6.arpa" {tip master; fișierul „/etc/bind/db.empty”; }; zona "b.ip6.arpa" {tip master; fișier „/etc/bind/db.empty”; }; zona "c.ip6.arpa" {tip master; fișierul „/etc/bind/db.empty”; }; zona "d.ip6.arpa" {tip master; fișierul „/etc/bind/db.empty”; }; zona "e.ip6.arpa" {tip master; fișierul „/etc/bind/db.empty”; }; zona "0.f.ip6.arpa" {tip master; fișierul „/etc/bind/db.empty”; }; zona "1.f.ip6.arpa" {tip master; fișierul „/etc/bind/db.empty”; }; zona "2.f.ip6.arpa" {tip master; fișierul „/etc/bind/db.empty”; }; zona "3.f.ip6.arpa" {tip master; fișierul „/etc/bind/db.empty”; }; zona "4.f.ip6.arpa" {tip master; fișierul „/etc/bind/db.empty”; }; zona "5.f.ip6.arpa" {tip master; fișier „/etc/bind/db.empty”; }; zona "6.f.ip6.arpa" {tip master; fișierul „/etc/bind/db.empty”; }; zona "7.f.ip6.arpa" {tip master; fișierul „/etc/bind/db.empty”; }; zona "8.f.ip6.arpa" {tip master; fișierul „/etc/bind/db.empty”; }; zona "9.f.ip6.arpa" {tip master; fișierul „/etc/bind/db.empty”; }; zone "afip6.arpa" {tip master; fișier „/etc/bind/db.empty”; }; zona "bfip6.arpa" {tip master; fișierul „/etc/bind/db.empty”; }; zona "0.efip6.arpa" {tip master; fișierul „/etc/bind/db.empty”; }; zona "1.efip6.arpa" {tip master; fișierul „/etc/bind/db.empty”; }; zona "2.efip6.arpa" {tip master; fișierul „/etc/bind/db.empty”; }; zona "3.efip6.arpa" {tip master; fișierul „/etc/bind/db.empty”; }; zona "4.efip6.arpa" {tip master; fișierul „/etc/bind/db.empty”; }; zona "5.efip6.arpa" {tip master; fișier „/etc/bind/db.empty”; }; zona "6.efip6.arpa" {tip master; fișierul „/etc/bind/db.empty”; }; zona "7.efip6.arpa" {tip master; fișierul „/etc/bind/db.empty”; };

// IPLA ULA (RFC 6 și 4193)
zona "cfip6.arpa" {tip master; fișierul „/etc/bind/db.empty”; }; zona "dfip6.arpa" {tip master; fișierul „/etc/bind/db.empty”; };

// IPv6 Link Local (RFC 4291 și 6303)
zona "8.efip6.arpa" {tip master; fișierul „/etc/bind/db.empty”; }; zona "9.efip6.arpa" {tip master; fișierul „/etc/bind/db.empty”; }; zona "aefip6.arpa" {tip master; fișierul „/etc/bind/db.empty”; }; zona "befip6.arpa" {tip master; fișierul „/etc/bind/db.empty”; };

// Site-uri depreciate IPv6-Adrese locale (RFCs 3879 și 6303)
zona "cefip6.arpa" {tip master; fișier „/etc/bind/db.empty”; }; zona "defip6.arpa" {tip master; fișier „/etc/bind/db.empty”; }; zona "eefip6.arpa" {tip master; fișier „/etc/bind/db.empty”; }; zona "fefip6.arpa" {tip master; fișier „/etc/bind/db.empty”; };

// IP6.INT este depreciat (RFC 4159)
zona "ip6.int" {tip master; fișierul „/etc/bind/db.empty”; };

Deși am eliminat posibilitatea de a asculta cererile IPv6 în exemplul nostru, merită să includem zonele IPv6 în fișierul anterior pentru cei care au nevoie de ele.

Conținutul final al /etc/bind/named.conf.local este:

root @ dns: ~ # nano /etc/bind/named.conf.local
// // Faceți orice configurație locală aici // // Luați în considerare adăugarea zonelor 1918 aici, dacă acestea nu sunt utilizate în // organizația dvs.
includeți „/etc/bind/zones.rfc1918”; includeți „/etc/bind/zones.rfcFreeBSD”;

// Declarație privind numele, tipul, locația și permisiunea de actualizare
// din zonele de înregistrări DNS // Ambele zone sunt MASTERI
zone "desdelinux.fan" {
 tip master;
 file "/var/lib/bind/db.desdelinux.fan";
};

zona "10.168.192.in-addr.arpa" {
 tip master;
 fișier „/var/lib/bind/db.10.168.192.in-addr.arpa”;
};

root @ dns: ~ # named-checkconf root @ dns: ~ #

Creăm fișierele pentru fiecare zonă

Conținutul fișierelor din fiecare zonă poate fi copiat literal din articolul «DNS și DHCP pe CentOS 7«, Atâta timp cât suntem atenți să schimbăm directorul de destinație în / var / lib / bind:

[root@dns ~]# nano /var/lib/bind/db.desdelinux.ventilator
$TTL 3H
@   IN SOA  dns.desdelinux.fan. root.dns.desdelinux.fan. (
                                        1   ; serial
                                        1D  ; refresh
                                        1H  ; retry
                                        1W  ; expire
                                        3H )    ; minimum or
                                                ; Negative caching time to live
;
@               IN  NS  dns.desdelinux.fan.
@               IN  MX  10 mail.desdelinux.fan.
@       IN  TXT "DesdeLinux, su Blog dedicado al Software Libre"
;
sysadmin        IN  A   192.168.10.1
ad-dc           IN  A   192.168.10.3
fileserver  IN  A   192.168.10.4
dns             IN  A   192.168.10.5
proxyweb        IN  A   192.168.10.6
blog            IN  A   192.168.10.7
ftpserver   IN  A   192.168.10.8
mail            IN  A   192.168.10.9

[root @ dns ~] # nano /var/lib/bind/db.10.168.192.in-addr.arpa
$TTL 3H
@   IN SOA  dns.desdelinux.fan. root.dns.desdelinux.fan. (
                                        1   ; serial
                                        1D  ; refresh
                                        1H  ; retry
                                        1W  ; expire
                                        3H )    ; minimum or
                                                ; Negative caching time to live
;
@               IN  NS  dns.desdelinux.fan.
;
1   IN  PTR     sysadmin.desdelinux.fan.
3   IN  PTR     ad-dc.desdelinux.fan.
4   IN  PTR     fileserver.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   IN  PTR     mail.desdelinux.ventilator.

Verificăm sintaxa fiecărei zone

root@dns:~# named-checkzone desdelinux.fan /var/lib/bind/db.desdelinux.ventilator 
zonă desdelinux.fan/IN: loaded serial 1
OK

root @ dns: ~ # named-checkzone 10.168.192.in-addr.arpa /var/lib/bind/db.10.168.192.in-addr.arpa 
zona 10.168.192.in-addr.arpa/IN: serial încărcat 1 OK

Verificarea setărilor generale BIND

root @ dns: ~ # named-checkconf -zp
  • Urmând procedura de modificare a numit.conf În funcție de nevoile noastre, verificăm și creăm fiecare fișier de zonă și verificăm, ne îndoim că va trebui să ne confruntăm cu probleme majore de configurare. În cele din urmă ne dăm seama că este un joc de băieți, cu multe concepte și sintaxă agitată.

Verificările au dat rezultate satisfăcătoare, de aceea putem reporni BIND - numit.

Repornim BIND-ul și verificăm starea acestuia

[root @ dns ~] # systemctl reporniți bind9.service
[root @ dns ~] # systemctl status bind9.service
● bind9.service - BIND Domain Name Server Încărcat: încărcat (/lib/systemd/system/bind9.service; activat) Drop-In: /run/systemd/generator/bind9.service.d └─50-insserv.conf- $ named.conf Activ: activ (rulează) de la Duminică 2017 02:05:07 EST; Acum 45s Docs: man: named (03) Proces: 5 ExecStop = / usr / sbin / rndc stop (cod = ieșit, status = 8 / SUCCES) PID principal: 1345 (numit) CGroup: /system.slice/bind0.service └─1350 / usr / sbin / named -f -u bind Feb 9 1350:05:07 dns named [45]: zone 03.f.ip1350.arpa/IN: serial încărcat 1 Feb 6 1:05:07 dns named [45]: zone afip03.arpa/IN: încărcat serial 1350 februarie 6 1:05:07 dns numit [45]: zone localhost / IN: încărcat serial 03 februarie 1350 2:05:07 dns numit [45]: test de zonă / IN: încărcat serial 03 februarie 1350 1:05:07 dns numit [45]: exemplu zonă / IN: încărcat serial 03 februarie 1350 1:05:07 dns numit [45]: zonă 03.efip1350.arpa/IN: încărcat serial 5 Feb 6 1:05:07 dns numit [45]: zona bfip03.arpa/IN: încărcat serial 1350 Feb 6 1:05:07 dns numit [45]: zona ip03.int/IN: încărcat serial 1350 Feb 6 1:05:07 dns numit [45]: toate zonele încărcate 03 februarie 1350:05:07 dns numit [45]: rulează

Dacă primim orice fel de eroare la ieșirea ultimei comenzi, trebuie să repornim numit.serviciu și verificați din nou Starea. Dacă erorile au dispărut, serviciul a început cu succes. În caz contrar, trebuie să efectuăm o revizuire amănunțită a tuturor fișierelor modificate și create și să repetăm ​​procedura.

Verificări

Verificările pot fi executate pe același server sau pe o mașină conectată la LAN. Preferăm să le facem din echipă administrator de sistem.desdelinux.ventilator cărora le-am dat permisiunea expresă de a face transferuri de zonă. Fișierul /etc/resolv.conf din acea echipă este următorul:

buzz @ sysadmin: ~ $ cat /etc/resolv.conf 
# Generated by NetworkManager
search desdelinux.fan
nameserver 192.168.10.5

buzz@sysadmin:~$ dig desdelinux.fan axfr
; <<>> DiG 9.9.5-9+deb8u1-Debian <<>> desdelinux.fan axfr
;; global options: +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.ventilator.
desdelinux.fan.     10800   IN  MX  10 mail.desdelinux.ventilator.
desdelinux.fan.     10800   IN  TXT "DesdeLinux, su Blog dedicado al Software Libre"
ad-dc.desdelinux.fan.   10800   IN  A   192.168.10.3
blog.desdelinux.fan.    10800   IN  A   192.168.10.7
dns.desdelinux.fan. 10800   IN  A   192.168.10.5
fileserver.desdelinux.fan. 10800 IN A   192.168.10.4
ftpserver.desdelinux.fan. 10800 IN  A   192.168.10.8
mail.desdelinux.fan.    10800   IN  A   192.168.10.9
proxyweb.desdelinux.fan. 10800  IN  A   192.168.10.6
sysadmin.desdelinux.fan. 10800  IN  A   192.168.10.1
desdelinux.fan.     10800   IN  SOA dns.desdelinux.fan. root.dns.desdelinux.fan. 1 86400 3600 604800 10800
;; Query time: 1 msec
;; SERVER: 192.168.10.5#53(192.168.10.5)
;; CÂND: Duminică 05 Februarie 07:49:01 EST 2017
;; Dimensiune XFR: 13 înregistrări (mesaje 1, octeți 385)

buzz @ sysadmin: ~ $ dig 10.168.192.in-addr.arpa axfr
; <<>> DiG 9.9.5-9+deb8u1-Debian <<>> 10.168.192.in-addr.arpa axfr
;; global options: +cmd
10.168.192.in-addr.arpa. 10800  IN  SOA dns.desdelinux.fan. root.dns.desdelinux.fan. 1 86400 3600 604800 10800
10.168.192.in-addr.arpa. 10800  IN  NS  dns.desdelinux.fan.
1.10.168.192.in-addr.arpa. 10800 IN PTR sysadmin.desdelinux.fan.
3.10.168.192.in-addr.arpa. 10800 IN PTR ad-dc.desdelinux.fan.
4.10.168.192.in-addr.arpa. 10800 IN PTR fileserver.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 IN PTR mail.desdelinux.fan.
10.168.192.in-addr.arpa. 10800  IN  SOA dns.desdelinux.fan. root.dns.desdelinux.fan. 1 86400 3600 604800 10800
;; Query time: 1 msec
;; SERVER: 192.168.10.5#53(192.168.10.5)
;; CÂND: Duminică 05 Februarie 07:49:47 EST 2017
;; Dimensiune XFR: 11 înregistrări (mesaje 1, octeți 333)

buzz@sysadmin:~$ dig IN SOA desdelinux.ventilator
buzz@sysadmin:~$ dig IN MX desdelinux.fan
buzz@sysadmin:~$ dig IN TXT desdelinux.ventilator

buzz @ sysadmin: ~ $ host proxyweb
proxyweb.desdelinux.fan has address 192.168.10.6

buzz @ sysadmin: ~ $ host ftpserver
ftpserver.desdelinux.fan has address 192.168.10.8

buzz @ sysadmin: ~ $ host 192.168.10.9
9.10.168.192.in-addr.arpa domain name pointer mail.desdelinux.ventilator.

... Și orice alte verificări de care avem nevoie.

Instalăm și configurăm DHCP

Pe Debian, serviciul DHCP este furnizat de pachet server-isc-dhcp:

root @ dns: ~ # aptitude search isc-dhcp
i isc-dhcp-client - client DHCP pentru obținerea automată a unei adrese IP p isc-dhcp-client-dbg - server ISC DHCP pentru atribuirea automată a adresei IP (depanare client) i isc-dhcp-common - fișiere comune utilizate de toate pachete isc-dhcp p isc-dhcp-dbg - ISC DHCP server pentru atribuirea automată a adresei IP (simbol de depanare p isc-dhcp-dev - API pentru accesarea și modificarea serverului DHCP și a stării clientului p isc-dhcp-relay - ISC DHCP relay daemon p isc-dhcp-relay-dbg - server ISC DHCP pentru atribuirea automată a adresei IP (depanare releu) p isc-dhcp-server - server ISC DHCP pentru atribuirea automată a adreselor IP p isc-dhcp-server-dbg - server ISC DHCP pentru atribuire automată a adresei IP (depanare server) p isc-dhcp-server-ldap - Server DHCP care folosește LDAP ca backend

root @ dns: ~ # aptitude install isc-dhcp-server

După instalarea pachetului, -omniprezent- systemd se plânge că nu a putut porni serviciul. În Debian, trebuie să declarăm în mod explicit peste ce interfață de rețea va închiria adrese IP și să răspundă la solicitări server-isc-dhcp:

root @ dns: ~ # nano / etc / default / isc-dhcp-server
.... # Pe ce interfețe ar trebui să servească serverul DHCP (dhcpd) cererile DHCP? # Separați mai multe interfețe cu spații, de ex. "Eth0 eth1".
INTERFACES = "eth0"

Documentație instalată

root @ dns: ~ # ls -l / usr / share / doc / isc-dhcp-server /
total 44 -rw-r - r-- 1 rădăcină rădăcină 1235 14 dec 2014 1 copyright -rw-r - r-- 26031 rădăcină rădăcină 13 2015 februarie 2 changelog.Debian.gz drwxr-xr-x 4096 rădăcină rădăcină 5 februarie 08 10:1 exemple -rw-r - r-- 592 rădăcină rădăcină 14 2014 Dec 1 NEWS.Debian.gz -rw-r - r-- 1099 rădăcină rădăcină 14 2014 Dec XNUMX README.Debian

Tasta TSIG „cheie dhcp”

Se recomandă generarea cheii TSIG o Semnătura tranzacției - Trăscumpărare SIGnatură, pentru autentificarea actualizărilor DNS dinamice de către DHCP. După cum am văzut în articolul precedent «DNS și DHCP pe CentOS 7«Considerăm că generarea acelei chei nu este atât de esențială, mai ales atunci când ambele servicii sunt instalate pe același server. Cu toate acestea, oferim procedura generală pentru generarea automată a acestuia:

root @ dns: ~ # dnssec-keygen -a HMAC-MD5 -b 128 -r / dev / urandom -n USER dhcp-key
Tasta Kdhcp. +157 + 11088

root @ dns: ~ # cat Kdhcp-key. +157 + 11088.private 
Private-key-format: v1.3 Algoritm: 157 (HMAC_MD5) Cheie: TEqfcx2FUMYBQ1hA1ZGelA == Bits: AAA = Creat: 20170205121618 Publicare: 20170205121618 Activare: 20170205121618

root @ dns: ~ # nano dhcp.key
cheie dhcp-cheie {
        algoritmul hmac-md5;
        secret "TEqfcx2FUMYBQ1hA1ZGelA ==";
};

root @ dns: ~ # install -o root -g bind -m 0640 dhcp.key /etc/bind/dhcp.key root @ dns: ~ # install -o root -g root -m 0640 dhcp.key / etc / dhcp /dhcp.key root @ dns: ~ # ls -l /etc/bind/*.key
-rw-r ----- 1 root bind 78 5 februarie 08:21 /etc/bind/dhcp.key -rw-r ----- 1 bind bind 77 4 februarie 11:47 / etc / bind / rndc .cheie
root @ dns: ~ # ls -l /etc/dhcp/dhcp.key 
-rw-r ----- 1 rădăcină rădăcină 78 5 februarie 08:21 /etc/dhcp/dhcp.key

Actualizarea zonelor BIND folosind tasta dhcp

root @ dns: ~ # nano /etc/bind/named.conf.local
//
// Do any local configuration here
//

// Consider adding the 1918 zones here, if they are not used in your
// organization
include "/etc/bind/zones.rfc1918";
include "/etc/bind/zones.rfcFreeBSD";
include "/etc/bind/dhcp.key";

// Declaración del nombre, tipo, ubicación, y permiso de actualización
// de las Zonas de Registros DNS
// Ambas Zonas son MAESTRAS
zone "desdelinux.fan" {
    type master;
    file "/var/lib/bind/db.desdelinux.fan";
 allow-update {cheie dhcp-cheie; };
}; zona "10.168.192.in-addr.arpa" {tip master; fișier „/var/lib/bind/db.10.168.192.in-addr.arpa”;
 allow-update {cheie dhcp-cheie; };
};
root @ dns: ~ # named-checkconf 
root @ dns: ~ #

Configurăm serverul isc-dhcp

root @ dns: ~ # mv /etc/dhcp/dhcpd.conf /etc/dhcp/dhcpd.conf.original
root @ dns: ~ # nano /etc/dhcp/dhcpd.conf
ddns-update-style interim;
ddns-updates on;
ddns-domainname "desdelinux.fan.";
ddns-rev-domainname "in-addr.arpa.";
ignore client-updates;

authoritative;

option ip-forwarding off;
option domain-name "desdelinux.fan";

include "/etc/dhcp/dhcp.key";

zone desdelinux.fan. {
        primary 127.0.0.1;
        key dhcp-key;
}
zone 10.168.192.in-addr.arpa. {
        primary 127.0.0.1;
        key dhcp-key;
}

shared-network redlocal {
        subnet 192.168.10.0 netmask 255.255.255.0 {
                option routers 192.168.10.1;
                option subnet-mask 255.255.255.0;
                option broadcast-address 192.168.10.255;
                option domain-name-servers 192.168.10.5;
                option netbios-name-servers 192.168.10.5;
                range 192.168.10.30 192.168.10.250;
        }
}
# FIN dhcpd.conf

Verificăm fișierul dhcpd.conf

root @ dns: ~ # dhcpd -t
Internet Systems Consortium DHCP Server 4.3.1 Copyright 2004-2014 Internet Systems Consortium. Toate drepturile rezervate. Pentru informații, vă rugăm să vizitați https://www.isc.org/software/dhcp/ Fișier de configurare: /etc/dhcp/dhcpd.conf Fișier bază de date: /var/lib/dhcp/dhcpd.leases fișier PID: / var / run /dhcpd.pid

Repornim BIND și pornim serverul isc-dhcp

root @ dns: ~ # systemctl reporniți bind9.service 
root @ dns: ~ # systemctl status bind9.service 

root @ dns: ~ # systemctl start isc-dhcp-server.service
root @ dns: ~ # systemctl status isc-dhcp-server.service 
● isc-dhcp-server.service - LSB: server DHCP Încărcat: încărcat (/etc/init.d/isc-dhcp-server) Activ: activ (rulează) de la Duminică 2017 02:05:08 EST; Acum 41s Proces: 45 ExecStop = / etc / init.d / isc-dhcp-server stop (cod = ieșit, stare = 6 / SUCCES) Proces: 2039 ExecStart = / etc / init.d / isc-dhcp-server start ( cod = ieșit, stare = 0 / SUCCES) CGroup: /system.slice/isc-dhcp-server.service └─2049 / usr / sbin / dhcpd -q -cf /etc/dhcp/dhcpd.conf -pf / var / run / dhcpd.pid eth0 2057 Feb 0:05:08 dns dhcpd [41]: A scris 43 leasing în leasing file. 2056 februarie 0:05:08 dns dhcpd [41]: Serviciu de pornire a serverului. 43 februarie 2057:05:08 dns isc-dhcp-server [41]: Pornirea serverului ISC DHCP: dhcpd.

Verificări cu clienții

Am început un client cu sistemul de operare Windows 7, cu numele «LAGER».

buzz @ sysadmin: ~ $ host lager
LAGER.desdelinux.fan has address 192.168.10.30

buzz@sysadmin:~$ dig in txt lager.desdelinux.ventilator

Schimbăm numele acelui client în „șapte” și repornim clientul

buzz @ sysadmin: ~ $ host lager
;; conexiunea a expirat; nu a putut fi accesat niciun server

bâzâit@sysadmin: ~ $ host seven
Șapte.desdelinux.fan has address 192.168.10.30
buzz @ sysadmin: ~ $ host 192.168.10.30
30.10.168.192.in-addr.arpa domain name pointer seven.desdelinux.ventilator.

buzz@sysadmin:~$ dig in txt seven.desdelinux.ventilator

Am redenumit clientul Windows 7 înapoi la „win7”

buzz @ sysadmin: ~ $ host seven
;; conexiunea a expirat; nu a putut fi accesat niciun server

buzz @ sysadmin: ~ $ host win7
win7.desdelinux.fan has address 192.168.10.30
buzz @ sysadmin: ~ $ host 192.168.10.30
30.10.168.192.in-addr.arpa domain name pointer win7.desdelinux.ventilator.

buzz@sysadmin:~$ dig in txt win7.desdelinux.ventilator
; <<>> DiG 9.9.5-9+deb8u1-Debian <<>> in txt win7.desdelinux.fan
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 11218
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 2

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;win7.desdelinux.fan.       IN  TXT

;; ANSWER SECTION:
win7.desdelinux.fan.    3600    IN  TXT "31b7228ddd3a3b73be2fda9e09e601f3e9"

;; AUTHORITY SECTION:
desdelinux.fan.     10800   IN  NS  dns.desdelinux.fan.

;; ADDITIONAL SECTION:
dns.desdelinux.fan. 10800   IN  A   192.168.10.5

;; Query time: 0 msec
;; SERVER: 192.168.10.5#53(192.168.10.5)
;; WHEN: Sun Feb 05 09:13:20 EST 2017
;; MSG SIZE  rcvd: 129

buzz@sysadmin:~$ dig desdelinux.fan axfr
; <<>> DiG 9.9.5-9+deb8u1-Debian <<>> desdelinux.fan axfr
;; global options: +cmd
desdelinux.fan.     10800   IN  SOA dns.desdelinux.fan. root.dns.desdelinux.fan. 8 86400 3600 604800 10800
desdelinux.fan.     10800   IN  NS  dns.desdelinux.ventilator.
desdelinux.fan.     10800   IN  MX  10 mail.desdelinux.ventilator.
desdelinux.fan.     10800   IN  TXT "DesdeLinux, su Blog dedicado al Software Libre"
ad-dc.desdelinux.fan.   10800   IN  A   192.168.10.3
blog.desdelinux.fan.    10800   IN  A   192.168.10.7
dns.desdelinux.fan. 10800   IN  A   192.168.10.5
fileserver.desdelinux.fan. 10800 IN A   192.168.10.4
ftpserver.desdelinux.fan. 10800 IN  A   192.168.10.8
mail.desdelinux.fan.    10800   IN  A   192.168.10.9
proxyweb.desdelinux.fan. 10800  IN  A   192.168.10.6
sysadmin.desdelinux.fan. 10800  IN  A   192.168.10.1
win7.desdelinux.fan. 3600 IN  TXT "31b7228ddd3a3b73be2fda9e09e601f3e9"
win7.desdelinux.fan. 3600    IN  A   192.168.10.30
desdelinux.fan.     10800   IN  SOA dns.desdelinux.fan. root.dns.desdelinux.fan. 8 86400 3600 604800 10800
;; Query time: 2 msec
;; SERVER: 192.168.10.5#53(192.168.10.5)
;; WHEN: Sun Feb 05 09:15:13 EST 2017
;; XFR size: 15 records (messages 1, bytes 453)

În rezultatul de mai sus, am evidențiat pe îndrăzneţ lor TTL -în câteva secunde- pentru computerele cu adrese IP acordate de serviciul DHCP, cele care au o declarație explicită a TTL 3600 dată de DHCP. IP-urile fixe sunt ghidate de $ TTL de 3H -3 ore = 10800 secunde- declarat în înregistrarea SOA a fiecărui fișier de zonă.

Pot verifica zona inversă în același mod.

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

Alte comenzi extrem de interesante sunt:

[root@dns ~]# named-journalprint /var/lib/bind/db.desdelinux.fan.jnl
del desdelinux.fan.     10800   IN  SOA dns.desdelinux.fan. root.dns.desdelinux.fan. 1 86400 3600 604800 10800
add desdelinux.fan.     10800   IN  SOA dns.desdelinux.fan. root.dns.desdelinux.fan. 2 86400 3600 604800 10800
add LAGER.desdelinux.fan.   3600    IN  A   192.168.10.30
add LAGER.desdelinux.fan.   3600    IN  TXT "31b7228ddd3a3b73be2fda9e09e601f3e9"
del desdelinux.fan.     10800   IN  SOA dns.desdelinux.fan. root.dns.desdelinux.fan. 2 86400 3600 604800 10800
del LAGER.desdelinux.fan.   3600    IN  A   192.168.10.30
add desdelinux.fan.     10800   IN  SOA dns.desdelinux.fan. root.dns.desdelinux.fan. 3 86400 3600 604800 10800
del desdelinux.fan.     10800   IN  SOA dns.desdelinux.fan. root.dns.desdelinux.fan. 3 86400 3600 604800 10800
del LAGER.desdelinux.fan.   3600    IN  TXT "31b7228ddd3a3b73be2fda9e09e601f3e9"
add desdelinux.fan.     10800   IN  SOA dns.desdelinux.fan. root.dns.desdelinux.fan. 4 86400 3600 604800 10800
del desdelinux.fan.     10800   IN  SOA dns.desdelinux.fan. root.dns.desdelinux.fan. 4 86400 3600 604800 10800
add desdelinux.fan.     10800   IN  SOA dns.desdelinux.fan. root.dns.desdelinux.fan. 5 86400 3600 604800 10800
add seven.desdelinux.fan.   3600    IN  A   192.168.10.30
add seven.desdelinux.fan.   3600    IN  TXT "31b7228ddd3a3b73be2fda9e09e601f3e9"
del desdelinux.fan.     10800   IN  SOA dns.desdelinux.fan. root.dns.desdelinux.fan. 5 86400 3600 604800 10800
del seven.desdelinux.fan.   3600    IN  A   192.168.10.30
add desdelinux.fan.     10800   IN  SOA dns.desdelinux.fan. root.dns.desdelinux.fan. 6 86400 3600 604800 10800
del desdelinux.fan.     10800   IN  SOA dns.desdelinux.fan. root.dns.desdelinux.fan. 6 86400 3600 604800 10800
del seven.desdelinux.fan.   3600    IN  TXT "31b7228ddd3a3b73be2fda9e09e601f3e9"
add desdelinux.fan.     10800   IN  SOA dns.desdelinux.fan. root.dns.desdelinux.fan. 7 86400 3600 604800 10800
del desdelinux.fan.     10800   IN  SOA dns.desdelinux.fan. root.dns.desdelinux.fan. 7 86400 3600 604800 10800
add desdelinux.fan.     10800   IN  SOA dns.desdelinux.fan. root.dns.desdelinux.fan. 8 86400 3600 604800 10800
add win7.desdelinux.fan.    3600    IN  A   192.168.10.30
add win7.desdelinux.fan.    3600    IN  TXT "31b7228ddd3a3b73be2fda9e09e601f3e9"

[root @ dns ~] # named-journalprint /var/lib/bind/db.10.168.192.in-addr.arpa.jnl
del 10.168.192.in-addr.arpa. 10800  IN  SOA dns.desdelinux.fan. root.dns.desdelinux.fan. 1 86400 3600 604800 10800
add 10.168.192.in-addr.arpa. 10800  IN  SOA dns.desdelinux.fan. root.dns.desdelinux.fan. 2 86400 3600 604800 10800
add 30.10.168.192.in-addr.arpa. 3600 IN PTR LAGER.desdelinux.fan.
del 10.168.192.in-addr.arpa. 10800  IN  SOA dns.desdelinux.fan. root.dns.desdelinux.fan. 2 86400 3600 604800 10800
del 30.10.168.192.in-addr.arpa. 3600 IN PTR LAGER.desdelinux.fan.
add 10.168.192.in-addr.arpa. 10800  IN  SOA dns.desdelinux.fan. root.dns.desdelinux.fan. 3 86400 3600 604800 10800
del 10.168.192.in-addr.arpa. 10800  IN  SOA dns.desdelinux.fan. root.dns.desdelinux.fan. 3 86400 3600 604800 10800
add 10.168.192.in-addr.arpa. 10800  IN  SOA dns.desdelinux.fan. root.dns.desdelinux.fan. 4 86400 3600 604800 10800
add 30.10.168.192.in-addr.arpa. 3600 IN PTR seven.desdelinux.fan.
del 10.168.192.in-addr.arpa. 10800  IN  SOA dns.desdelinux.fan. root.dns.desdelinux.fan. 4 86400 3600 604800 10800
del 30.10.168.192.in-addr.arpa. 3600 IN PTR seven.desdelinux.fan.
add 10.168.192.in-addr.arpa. 10800  IN  SOA dns.desdelinux.fan. root.dns.desdelinux.fan. 5 86400 3600 604800 10800
del 10.168.192.in-addr.arpa. 10800  IN  SOA dns.desdelinux.fan. root.dns.desdelinux.fan. 5 86400 3600 604800 10800
add 10.168.192.in-addr.arpa. 10800  IN  SOA dns.desdelinux.fan. root.dns.desdelinux.fan. 6 86400 3600 604800 10800
add 30.10.168.192.in-addr.arpa. 3600 IN PTR win7.desdelinux.ventilator.

[root @ dns ~] # journalctl -f

Modificarea manuală a fișierelor Zone

După ce DHCP intră în jocul actualizării dinamice a fișierelor de zonă BIND, dacă trebuie vreodată să modificăm manual un fișier de zonă, trebuie să efectuăm următoarea procedură, dar nu înainte de a ști puțin mai multe despre funcționarea zonei. utilitate rndc -man rndc- pentru controlul numit.

  • rndc freeze [zonă [clasa [vizualizare]]], suspendă actualizarea dinamică a unei zone. Dacă nu este specificat unul, toate vor îngheța. Comanda permite editarea manuală a zonei înghețate sau a tuturor zonelor. Orice actualizare dinamică va fi refuzată când este înghețată.
  • rndc dezgheț [zonă [clasa [vizualizare]]], permite actualizări dinamice pe o zonă înghețată anterior. Serverul DNS reîncarcă fișierul de zonă de pe disc, iar actualizările dinamice sunt reactivate după finalizarea reîncărcării.

Precauții care trebuie luate atunci când edităm manual un fișier de zonă? La fel ca și când am fi creat-o, fără a uita să mărim numărul de serie cu 1 sau de serie înainte de a salva fișierul cu modificările finale.

Înghețăm zonele

Deoarece vom face modificări în zonele de redirecționare și inversare în timp ce DNS și DHCP rulează, cel mai sănătos lucru este să înghețe zonele DNS:

[root @ dns ~] # rndc freeze

Zonă desdelinux.ventilator conține următoarele înregistrări:

[root@dns ~]# cat /var/lib/bind/db.desdelinux.ventilator
$ORIGIN .
$TTL 10800      ; 3 hours
desdelinux.fan          IN SOA  dns.desdelinux.fan. root.dns.desdelinux.fan. (
                                8; serial
                                86400      ; refresh (1 day)
                                3600       ; retry (1 hour)
                                604800     ; expire (1 week)
                                10800      ; minimum (3 hours)
                                )
                        NS      dns.desdelinux.fan.
                        MX      10 mail.desdelinux.fan.
                        TXT     "DesdeLinux, su Blog dedicado al Software Libre"
$ORIGIN desdelinux.fan.
ad-dc                   A       192.168.10.3
blog                    A       192.168.10.7
dns                     A       192.168.10.5
fileserver              A       192.168.10.4
ftpserver               A       192.168.10.8
mail                    A       192.168.10.9
proxyweb                A       192.168.10.6
sysadmin                A       192.168.10.1
$TTL 3600       ; 1 hour
win7                    A       192.168.10.30
                        TXT     "31b7228ddd3a3b73be2fda9e09e601f3e9"

Să adăugăm serverul «perete de țărm»Cu IP 192.168.10.10:

root@dns:~# nano /var/lib/bind/db.desdelinux.ventilator
$ORIGIN .
$TTL 10800  ; 3 hours
desdelinux.fan      IN SOA  dns.desdelinux.fan. root.dns.desdelinux.fan. (
                9; serial
                86400      ; refresh (1 day)
                3600       ; retry (1 hour)
                604800     ; expire (1 week)
                10800      ; minimum (3 hours)
                )
            NS  dns.desdelinux.fan.
            MX  10 mail.desdelinux.fan.
            TXT "DesdeLinux, su Blog dedicado al Software Libre"
$ORIGIN desdelinux.fan.
ad-dc           A   192.168.10.3
blog            A   192.168.10.7
dns         A   192.168.10.5
fileserver      A   192.168.10.4
ftpserver       A   192.168.10.8
mail            A   192.168.10.9
proxyweb        A   192.168.10.6
pardoseală A 192.168.10.10
sysadmin A 192.168.10.1 $ TTL 3600; 1 oră win7 A 192.168.10.30 TXT "31b7228ddd3a3b73be2fda9e09e601f3e9"

Ar trebui să modificăm și zona inversă:

root @ dns: ~ # nano /var/lib/bind/db.10.168.192.in-addr.arpa
$ORIGIN .
$TTL 10800      ; 3 hours
10.168.192.in-addr.arpa IN SOA  dns.desdelinux.fan. root.dns.desdelinux.fan. (
                                7; serial
                                86400      ; refresh (1 day)
                                3600       ; retry (1 hour)
                                604800     ; expire (1 week)
                                10800      ; minimum (3 hours)
                                )
                        NS      dns.desdelinux.fan.
$ORIGIN 10.168.192.in-addr.arpa.
1                       PTR     sysadmin.desdelinux.fan.
3                       PTR     ad-dc.desdelinux.fan.
$TTL 3600       ; 1 hour
30                      PTR     win7.desdelinux.fan.
$TTL 10800      ; 3 hours
4                       PTR     fileserver.desdelinux.fan.
5                       PTR     dns.desdelinux.fan.
6                       PTR     proxyweb.desdelinux.fan.
7                       PTR     blog.desdelinux.fan.
8                       PTR     ftpserver.desdelinux.fan.
9                       PTR     mail.desdelinux.ventilator.
10                      PTR     shorewall.desdelinux.ventilator.

Dezghețăm și reîncarcăm zonele

[root @ dns ~] # rndc dezgheț

root @ dns: ~ # journalctl -f
-- Logs begin at dom 2017-02-05 06:27:10 EST. --
feb 05 12:00:29 dns named[1996]: received control channel command 'thaw'
feb 05 12:00:29 dns named[1996]: thawing all zones: success
feb 05 12:00:29 dns named[1996]: zone 10.168.192.in-addr.arpa/IN: journal file is out of date: removing journal file
feb 05 12:00:29 dns named[1996]: zone 10.168.192.in-addr.arpa/IN: loaded serial 7
feb 05 12:00:29 dns named[1996]: zone desdelinux.fan/IN: journal file is out of date: removing journal file
feb 05 12:00:29 dns named[1996]: zone desdelinux.fan/IN: loaded serial 9

buzz @ sysadmin: ~ $ host shorewall
shorewall.desdelinux.fan has address 192.168.10.10

buzz @ sysadmin: ~ $ host 192.168.10.10
10.10.168.192.in-addr.arpa domain name pointer shorewall.desdelinux.ventilator.

buzz@sysadmin:~$ dig desdelinux.fan axfr

buzz @ sysadmin: ~ $ dig 10.168.192.in-addr.arpa axfr

root @ dns: ~ # journalctl -f
....
feb 05 12:03:05 dns named[1996]: client 192.168.10.1#37835 (desdelinux.fan): transfer of 'desdelinux.fan/IN': AXFR started
feb 05 12:03:05 dns named[1996]: client 192.168.10.1#37835 (desdelinux.fan): transfer of 'desdelinux.fan/IN': AXFR ended
feb 05 12:03:20 dns named[1996]: client 192.168.10.1#46905 (10.168.192.in-addr.arpa): transfer of '10.168.192.in-addr.arpa/IN': AXFR started
feb 05 12:03:20 dns named[1996]: client 192.168.10.1#46905 (10.168.192.in-addr.arpa): transfer of '10.168.192.in-addr.arpa/IN': AXFR ended

Rezumat

Până acum avem un server DNS Caché în funcțiune, care acceptă recursiunea, care este autoritară pentru zonă desdelinux.ventilator, și care permite DHCP să actualizeze zonele de redirecționare și inversare cu numele computerelor și IP pe care le acordă.

Acest articol și cele două precedente «DNS și DHCP în openSUSE 13.2 'Arlequin'" și "DNS și DHCP pe CentOS 7»Sunt practic unul. Veți găsi concepte generale despre DNS și DHCP și particularități ale fiecărei distribuții în fiecare dintre ele. Ei sunt Punct de intrare la subiect și o bază pentru dezvoltări mai complexe.

Nu vom ezita să insistăm - încă o dată - asupra importanței citirii documentației tehnice care este instalată implicit cu fiecare pachet, ÎNAINTE să configurați orice detaliu. O spunem din propria noastră experiență.

Următoarea livrare

Este probabil „Microsoft® Active Directory + BIND”


23 comentarii, lasă-le pe ale tale

Lasă comentariul tău

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *

*

*

  1. Responsabil pentru date: Miguel Ángel Gatón
  2. Scopul datelor: Control SPAM, gestionarea comentariilor.
  3. Legitimare: consimțământul dvs.
  4. Comunicarea datelor: datele nu vor fi comunicate terților decât prin obligație legală.
  5. Stocarea datelor: bază de date găzduită de Occentus Networks (UE)
  6. Drepturi: în orice moment vă puteți limita, recupera și șterge informațiile.

  1.   şopârlă el a spus

    Ce tutorial pe care l-ați trimis partener, nu știu de unde vine atâta capacitate de detaliu și ordine în subiecte la fel de complexe ca acestea.

    Cele mai sincere felicitări ale mele, o onoare să vă pot citi

  2.   bafo el a spus

    Trebuie să vă spun că tutorialele pe care le publicați sunt HOSTIA, le iubesc.
    Aștept mereu următorul tău capitol.
    Când ați terminat, îl veți pune într-un pdf? Este o documentație care după părerea mea este foarte valoroasă, merită să fie bine păstrată.
    Vă mulțumesc foarte mult și un mare salut.
    Bafo.

  3.   Federico el a spus

    Bafo: Vă mulțumesc foarte mult pentru evaluare și comentariu. Cea mai bună răsplată pentru timpul, munca și efortul pe care îl dedic fiecărui tutor este comentariul. Fie că este pozitiv sau negativ, dar este semnul că nu trece neobservat. Cred că o mulțime de cititori descarcă și salvează sau marcează. Dar nu pot presupune acest lucru decât în ​​funcție de numărul de vizite. Păcat că nu mulți comentează, deși știu că problemele cu care mă ocup sunt fundamental pentru Sysadmins. Salutări și vouă și vă voi aștepta în următoarele articole.

  4.   Federico el a spus

    Șopârlă: Vă mulțumesc pentru evaluarea dvs. onestă pe care o voi ține cont mereu.

  5.   artus el a spus

    Cum ar fi configurația dacă am două interfețe de rețea în cazul legării
    Mulțumesc și felicitări pentru material.

  6.   Federico el a spus

    Artus: Vă mulțumim pentru comentariu și felicitări.
    Răspunsul la întrebarea dvs. merită un articol separat despre utilizarea vizualizărilor - Vizualizări în BIND.

    În cazul în care aveți o zonă delegată sub responsabilitatea dvs. și doriți să aveți un singur BIND pentru a participa la interogări interne din LAN și interogări externe de pe Internet - cu BIND protejat de un firewall, desigur - utilizarea Vizualizări.

    Vizualizările, de exemplu, vă permit să prezentați o configurație pentru rețeaua dvs. de IMM-uri și alta pentru Internet. Când nu configurăm nicio vizualizare în mod explicit, BIND creează implicit una singură care arată toate computerele care o consultă.

    Ca utilizare a vizualizărilor, îl consider un subiect avansat puede și scrieți un articol despre asta, înainte sau după mesajul promis anunțat la sfârșitul acestuia.

    Acum, dacă aveți două interfețe de rețea cu care se confruntă rețeaua IMM-urilor - formată de două rețele private - pentru orice motiv de proiectare, echilibru de încărcare, număr de echipamente sau altele și doriți să vă prezentați toate zonele în ambele rețele, puteți rezolvați cu declarație:

    ascultă {
    127.0.0.1;
    IP-Private-Interface1;
    IP-interfață-Private2;
    };

    În acest fel, BIND ascultă cererile de pe ambele interfețe.

    Dacă toate computerele dvs. sunt în rețeaua privată de clasă C 192.168.10.0/255.255.240.0 -până la 4094 de gazde-, de exemplu, puteți utiliza și instrucțiunea:

    ascultare {127.0.0.1; 192.168.10.0/20; };

    Și continuați să afișați o singură vizualizare tuturor computerelor conectate la rețeaua LAN privată.

    Sper că răspunsul meu scurt vă va ajuta. Salutări și succes.

    1.    artus el a spus

      Vă mulțumim pentru răspuns atât de curând. Vedeți că montez un server Debian cu versiunea 9 (Strech), are DNS, dhcp și squid ca proxy, pentru filtrele de conținut voi folosi e2guardian.

      Computerul are două interfețe de rețea, care vor permite computerelor de pe LAN să iasă pe Internet.
      router: 192.168.1.1
      eth0: 192.168.1.55 (prin această interfață va merge pe internet)
      eth1:192.168.100.1 (LAN)

      Ideea este că computerele pot accesa Internetul prin intermediul acestui server proxy, care va oferi, de asemenea, ips și dns computerelor din rețeaua internă.

      În acest caz, nu am nevoie ca serverul să asculte solicitările dns prin interfața eth0 (nu vreau să prezint zonele mele ambelor rețele, doar LAN-ului meu); deci dacă elimin private-interface-IP1, ar fi suficient?

      Mulțumesc din nou și salutări.

  7.   Edward Claus el a spus

    Foarte bun articol prietenul meu
    Ai legătura în vene, chiar dacă spui și gândești altfel 🙂
    Felicitări

  8.   Federico el a spus

    Artus: Eliminați interfața 192.168.1.55 din declarația de ascultare și mergeți. Sau declarați doar ascultarea {127.0.0.1; 192.168.100.1; }; si asta e. BIND va asculta numai pe acele interfețe.

    1.    artus el a spus

      Bine mulțumesc.

  9.   Federico el a spus

    Eduardo: prietenul meu, prefer încă dnsmasq pentru rețelele „mici” și va trebui să vedem cât de „mari” pot fi. 😉 Deși recunosc că serverul BIND + isc-dhcp este serverul BIND + isc-dhcp. 😉

  10.   Federico el a spus

    Eduardo: Am uitat să-ți spun că specialistul BIND ești tu, Maestră.

  11.   dhunter el a spus

    Ani folosind BIND și continuu să învăț cu scrierile voastre, vă mulțumesc mult Federico, cu această serie de tutoriale este demis un sysadmin. Mă întorc și repet, ideea de a cuprinde toate aceste cunoștințe într-un format portabil oficial nu este deloc rea, dă-i cap că ceva foarte bun poate ieși. Un salut.

  12.   Federico el a spus

    Prieten Dhunter: Comentariile tale sunt întotdeauna bine primite. A cuprinde totul este dificil și aproape imposibil, pentru că întotdeauna apare un subiect nou. Pe capitole, merge și este posibil. Unele articole ar trebui rescrise pentru a obține consistență în configurații. Nu promit nimic, dar vom vedea.

  13.   Ismael Alvarez Wong el a spus

    salut federico, aici sunt comentariile mele:
    1) Accentul pe care îl puneți pe „... citiți înainte de a configura BIND și chiar ÎNAINTE să căutați pe Internet articole legate de BIND și DNS ...” căutați-le pe propriul computer și toate acestea „... fără a pleca de acasă ...” cuvintele proprii.
    2) În această postare găsim mai multe teorii despre DNS care o completează pe cea prevăzută în cele două postări anterioare și este întotdeauna apreciată; de exemplu: DNSSEC (Domain Name System Security Extensions) și pentru ce este folosit; precum și schema de configurare BIND cu fișierele de configurare statice, fișierele de zonă pentru serverele rădăcină și zonele de redirecționare și inversare ale localhost din Debian.
    3) MARE sfatul de a nu dezactiva recursivitatea (folosind linia „recursivitatea nr;”) apoi includeți în fișierul de configurare /etc/bind/named.conf.local, fișierele zone / etc / bind / zones. rfc1918 și /etc/bind/zones.rfcFreeBSD pentru a preveni orice întrebări referitoare la acestea să părăsească rețeaua locală către serverele rădăcină.
    4) Spre deosebire de postarea anterioară despre CentOS 7, în acest post dacă cheia TSIG „cheie dhcp” este generată pentru actualizări DNS dinamice de la DHCP; pentru a-l permite în fișierul /etc/bind/named.conf.local, includeți „permite-actualizați {cheia dhcp-cheie; }; » în configurația zonelor directe și inverse ale domeniului nostru.
    5) Marele detaliu (egal cu postarea anterioară din CentOS 7) a tot ceea ce ține de verificările funcționării DNS, DHCP și cu clienții.
    6) MARE sfatul utilizării comenzii „instalare” (dacă cum este scris, nu mă refer la opțiunea cu același nume care este folosită în alte comenzi), nu o știam, pentru că este un adevărat „3 în 1”, deoarece copierea grupurilor (cp), stabilirea proprietarilor (chown) și permisiunile (chmod).
    . În cele din urmă, răspunsul dvs. la Artus despre utilizarea Vizualizărilor în BIND este foarte bun, unul pentru LAN (rețea privată) și celălalt pentru Internet, astfel încât numai serviciile publice să poată fi consultate. Sperăm că mai târziu veți avea timp să pregătiți o postare, deoarece este un subiect de aplicație foarte practic pentru mulți administratori.
    Nimic din Federico că voi continua să fiu mai entuziasmat de seria PYMES și aștept cu nerăbdare următoarea postare „Microsoft Active Directory + BIND”

  14.   Federico el a spus

    Wong: Coleg și prieten, comentariile tale completează articolele mele și arată că sunt de înțeles. Comanda „instalare” are mult mai multe opțiuni. Interogare om instalat. Mulțumesc o mie pentru comentarii !!!

  15.   crespo88 el a spus

    Nu am citit încă comentariile, o voi face după ce mi-am precizat criteriile.
    Ați făcut și ați realizat multe, ne-ați dat o lumină, dar nu cea care se vede la „capătul tunelului” atunci când nu există nicio speranță + așa cum spunem de obicei; nu că degeaba, ai dat lumina completă pentru a putea spune „La final ne dăm seama că este un joc de băieți, cu multe concepte și sintaxă agitată”, așa cum explici în postare.
    POST TRUNK și împreună cu cele anterioare pentru câteva distrosuri mai faimoase. Ați respectat extinderea conceptelor și a teoriei care, de multe ori, ne afectează. Am citit în detaliu, calm și este imposibil să nu comentez și să mă simt COMPLET RECUNOSCUTOR pentru o astfel de dăruire și dăruire.
    Fără alte îndemnuri, cu toții vă dorim sănătate și să contribuiți în continuare; Vă mulțumim și norocul, economia, sănătatea (vă dorim dublu) și dragostea să vă însoțească (cu Sandra's, așa că mai mult, hahaha).
    Știu că comentariul depășește puțin conținutul postării, merge la cel personal pentru că suntem prieteni și admir livrarea ta altruistă. Nimeni NIMENI nu face ceea ce faceți pentru cei dintre noi care doresc să învețe din ce în ce mai mult și avem responsabilitatea de a gestiona rețelele de IMM-uri pe umerii noștri, nu este o sarcină ușoară.
    Sl2 toată lumea.

  16.   Federico el a spus

    crespo88: Vă mulțumesc foarte mult pentru evaluările dvs. despre acest articol și despre alte articole publicate. Unii cititori ar putea crede că eu dau totul, când nu este adevărat. Mă refer întotdeauna la un punct de intrare, chiar dacă exemplele sunt pe deplin funcționale. BIND este industria electronică, iar DHCP nu a rămas în urmă. Pentru a le cunoaște peste medie, trebuie să treci o diplomă postuniversitară la Universitatea din Helsinki, 😉

  17.   Miguel Guaramato placeholder image el a spus

    Mi se pare interesant și foarte important acest subiect. Sunt interesat de acest studiu despre administrarea rețelelor Linux și în special a serverelor: dns, dhcp dinamic și static și rețele virtuale, bin9, samba, servere de imprimare, ldap, supravegherea rețelei cu aplicații, monturi de baze de date pentru aplicațiile programatorilor și vlan etc. De aceea este important și aceste sfaturi sunt foarte bune cu practici și exemple.

  18.   Federico el a spus

    Buna miguel !!!
    Vă mulțumim pentru comentarii și sper că serialul vă va ajuta în ceea ce vă interesează. Salutari.

  19.   Jorge el a spus

    Vă mulțumesc foarte mult pentru articolul Federico, arată că știți despre debian. O imbratisare.

  20.   Federico el a spus

    Mulțumesc foarte mult Jorge, pentru comentariu. Sper că articolele mele vă vor ajuta.

  21.   Sala Pablo Raul Vargas el a spus

    Vă mulțumesc foarte mult pentru postarea care este bine documentată și ne îndeamnă să citim, să citim și să citim din nou. Acum, cu următoarea postare pe care urmează să o publicați, aș dori să țineți cont de punctele de convergență pe care le-ar avea:
    Microsoft Active Directory cu Samba4 ca Active Directory

    În plus, am vrut să consult următoarele:
    Cum ar fi implementarea Bind + Isc-dhcp în FW într-un dmz în care controlerul de domeniu ar fi în dmz cu un samba 4 AD