Ambele mașini trebuie să fie instalate.
dnssec-keygen -a hmac-md5 -b 128 -n USER dnsupdater
Vom trece la configurarea serverului în directorul cu fișiere de configurare bind9 (de obicei, fie / etc / bind. / Etc / namedb. / Var / nume)
Am creat serverul pe Linux, acolo a fost directorul / etc / bind, o voi folosi în acest tutorial.
Creați un fișier dnskeys.conf în directorul / etc / bind, apoi introduceți datele despre cheia noastră generată pe mașina client
dnsupdater. IN CHEIE 0 3 157 YmEIxrGd1w1dT6Kyo9CQtQ ==
Acesta este modul în care arată cheia noastră, avem nevoie doar de o parte după figura 157, și anume YmEIxrGd1w1dT6Kyo9CQtQ == (este diferit de fiecare dată, veți avea alta)
În fișierul /etc/bind/dnskeys.conf, scrieți următoarele (înlocuiți numele cheii și secretul cu dvs.)
cheie dnsupdater <
algoritmul hmac-md5;
secret "YmEIxrGd1w1dT6Kyo9CQtQ ==";
>;
Apoi introduceți fișierul /etc/bind/named.conf la sfârșitul fișierului
Apoi rulați comanda rndc reload pentru a aplica setările.
Un digresiune mic, dacă ați instalat sistemul de operare Ubuntu sau Debian, sau ați utilizat deja AppArmor, atunci trebuie să-l reconfigureze, deoarece utilizatorul este de lucru pe serverul bind9 DNS nu are permisiuni de scriere la directorul cu fișierele de configurare / etc / bind. iar actualizarea zonei la distanță necesită doar abilitatea de a scrie în acest director de la legarea utilizatorului. Pentru a rezolva aceasta, puteți edita fișierul de configurare apparmor pentru a limita legarea, îl puteți găsi în directorul /etc/apparmor.d/. numele fișierului usr.sbin.named. Editați fișierul așa cum se arată în exemplul de mai jos.
Valoare implicită:
/ etc / bind / ** r,
Ar trebui să fie:
/ etc / bind / ** rw,
După aceea, reporniți apparmor și bind9.
Acum, serverul este gata să actualizeze de la distanță zonele, vom trece la configurația finală a clientului.
Creați un script simplu care va analiza fișierul cu comenzile pentru a actualiza zonele în care avem nevoie de calea spre a doua cheie, cu extensia. Privată. îl puteți pune în directorul / etc / bind. și nu uitați să schimbați numele cheii în script-ul dvs.
#! / bin / bash
/ usr / bin / nsupdate -k /etc/bind/Kdnsupdater.+157+31204.private -v $ 1
Vom salva acest script cu numele zonechange.sh și îl vom face comanda executabilă chmod + x zoneupdate.sh
serverul ns.example.com
zona 0.168.192.in-addr.arpa
actualizare șterge 15.0.168.192.in-addr.arpa. 10800 în PTR somedomain.example.com.
actualizare adăugați 1.0.168.192.in-addr.arpa. 10800 în PTR somedomain123.example.com.
trimite
zone example.com
actualizare adăugați test.example.com. 10800 în A 192.168.0.254
trimite
După cum puteți vedea, trebuie să specificați complet înregistrările pentru zona inversă și subdomeniile și înainte de actualizarea zonei trimiteți o actualizare pentru cea anterioară. De asemenea, este necesar să specificați un TTL pentru fiecare înregistrare. Salvați fișierul denumit modificări. sau orice doriți, în directorul cu scriptul zonechange.sh.
Să verificăm funcționalitatea scriptului, executați următoarea comandă pentru a trimite o solicitare de actualizare a zonelor noastre către server
Dacă totul merge bine, nu va urma nici o ieșire, pe serverul din jurnale puteți vedea detaliile schimbărilor zonei. Am o intrare server din fișierele făcute să apară la distanță numai după bind9 repornire, dar lucrarea este începută imediat după trimiterea actualizarea la client, deci verificați activitatea de renovare nu este pentru prezența înregistrărilor în fișiere din zona, iar la solicitarea înregistrării de pe server prin nslookup sau sapa.
Acum, puteți trece la configurarea înregistrărilor zonei de actualizare utilizând serverul dhcp. Setările DNS nu vom schimba, acestea sunt descrise mai sus, astfel încât le vom folosi. Cheile sunt de asemenea luate din exemplele de mai sus. Setarea este descrisă pentru serverul DHCP isc dhcp3
În opțiunile serverului global DHCP, efectuați următoarele modificări (fișier de configurare dhcpd.conf)
Rețineți că intrările din zone și chei sunt introduse exact ca în legarea bindului, dar fără CITES, altfel veți avea o eroare de sintaxă.
Următorul este un exemplu pentru un grup de gazde sau secțiunea de grup din dhcpd.conf