In questo tutorial, ti mostreremo come installare e configurare un server DNS su Ubuntu 16.04 LTS. Per chi non lo sapesse, BIND è un server DNS ampiamente utilizzato. Idealmente , un server DNS è composto da 2 macchine che lavorano insieme contemporaneamente, una funge da master e l'altra da slave.Se il tuo registrar di domini non ti fornisce un server DNS gratuito, o se vuoi creare un record DNS personalizzato, quindi potresti dover ospitare il tuo server DNS.
Questo articolo presuppone che tu abbia almeno una conoscenza di base di Linux, sappia come usare la shell e, soprattutto, che ospiti il tuo sito sul tuo VPS. L'installazione è abbastanza semplice e presuppone che tu sono in esecuzione nell'account root, in caso contrario potrebbe essere necessario aggiungere 'sudo
' ai comandi per ottenere i privilegi di root. Ti mostrerò l'installazione passo passo e configurerò il server DNS su Ubuntu su un server Ubuntu 16.04 (Xenial Xerus).
Prerequisiti
- Un server che esegue uno dei seguenti sistemi operativi:Ubuntu 16.04 (Xenial Xerus).
- Si consiglia di utilizzare una nuova installazione del sistema operativo per prevenire potenziali problemi.
- Accesso SSH al server (o semplicemente apri Terminal se sei su un desktop).
- Un
non-root sudo user
o accedere all'root user
. Ti consigliamo di agire comenon-root sudo user
, tuttavia, puoi danneggiare il tuo sistema se non stai attento quando agisci come root.
Installa e configura il server DNS su Ubuntu 16.04 LTS
Ospite | Ruolo | FQDN privato | Indirizzo IP privato |
---|---|---|---|
ns1 | Server DNS primario | 108.100.100.1 | |
ns2 | Server DNS secondario | 108.100.100.2 | |
ospite | Host generico | tuo-dominio.com | 216.239.38.120 |
Passaggio 1. Innanzitutto, assicurati che tutti i pacchetti di sistema siano aggiornati eseguendo il seguente apt-get
comandi nel terminale.
sudo apt-get update sudo apt-get upgrade
Passaggio 2. Installazione del server DNS Bind9.
Dopo aver aggiornato il sistema, esegui il comando seguente per installare i pacchetti BIND9 utilizzati per configurare il server DNS:
apt-get install bind9 bind9utils bind9-doc
Passaggio 3. Configura Bind9.
È ora di mostrarti una configurazione di base su come impostare il tuo dominio da risolvere sul tuo server:
### nano /etc/bind/named.conf.options options { directory "/var/cache/bind"; additional-from-auth no; additional-from-cache no; version "Bind Server"; // If there is a firewall between you and nameservers you want // to talk to, you may need to fix the firewall to allow multiple // ports to talk. See http://www.kb.cert.org/vuls/id/800113 // If your ISP provided one or more IP addresses for stable // nameservers, you probably want to use them as forwarders. // Uncomment the following block, and insert the addresses replacing // the all-0's placeholder. forwarders { 8.8.8.8; 8.8.4.4; }; //======================================================================== // If BIND logs error messages about the root key being expired, // you will need to update your keys. See https://www.isc.org/bind-keys //======================================================================== dnssec-validation auto; allow-recursion { 127.0.0.1; }; auth-nxdomain no; # conform to RFC1035 listen-on-v6 { any; }; };
Passaggio 4. Configura il file locale.
Successivamente, configureremo il file locale, per specificare le nostre zone DNS:
### nano /etc/bind/named.conf.local //place these lines at the bottom of file zone "your-domain.com" { type master; file "/etc/bind/zones/your-domain.com.db"; allow-transfer { 108.200.200.2; }; also-notify { 108.200.200.200.2; }; };
Perché nella configurazione precedente mettiamo il file di zona in “/etc/bind/zones/your-domain.com.db
“, quindi dobbiamo creare la cartella e il file:
mkdir /etc/bind/zones nano /etc/bind/zones/your-domain.com.db
$TTL 86400 $ORIGIN your-domain.com. @ IN SOA ns1.your-domain.com. root.your-domain.com. ( 1 ; Serial 86400 ; Refresh 7200 ; Retry 2419200 ; Expire 604800 ) ; Negative Cache TTL ; @ IN NS ns1.your-domain.com. @ IN NS ns2.your-domain.com. ns1 IN A 108.100.100.1 ns2 IN A 108.100.100.2 ;also list other computers @ IN A 216.239.38.120 www IN A 216.239.38.120
E quindi riavvia il servizio bind9 per rendere effettive le modifiche:
systemctl restart bind9
Passaggio 5. Configura il server DNS secondario.
Configura le opzioni di collegamento slave:
### nano /etc/bind/named.conf.options zone "your-domain.com" { type slave; file "/var/cache/bind/your-domain.com.db"; masters {108.100.100.1;}; };
Riavvia il servizio bind9 per rendere effettive le modifiche:
systemctl restart bind9
Questo server DNS non funzionerà finché non cambi il server dei nomi del tuo dominio. Può essere eseguito dal sito Web del registrar del tuo dominio. In questo scenario, cambiamo il server dei nomi in:
ns1.tuo-dominio.com
ns2.tuo-dominio.com
Passaggio 6. Test di BIND.
Infine, questo test può essere eseguito sia sul server DNS stesso o da un altro server, sia dal tuo PC. In questo caso, faremo il test da un altro server con sistema operativo Ubuntu.
Installa dnsutils:
apt-get install dnsutils
Esegui il test DNS dig:
dig your-domain.com
Esegui il test dns di nslookup:
nslookup your-domain.com
Congratulazioni! Hai installato correttamente il server DNS. Grazie per aver utilizzato questo tutorial per l'installazione del server DNS sul sistema Ubuntu 16.04 LTS (Xenial Xerus). Per ulteriore aiuto o informazioni utili, ti consigliamo di per controllare il sito Web ufficiale di bind9.