GNU/Linux >> Linux Esercitazione >  >> Linux

Come installare e configurare Bind per configurare il server DNS?

Se sei un lettore abituale di Techglimpse, potresti aver letto i nostri articoli precedenti su DNS, i suoi tipi, come funziona, differenza tra server autorevoli e ricorsivi. Ti abbiamo anche mostrato come identificare l'indirizzo IP del server DNS configurato sulle tue macchine Windows e Linux e come analizzare la velocità di vari server DNS utilizzando lo strumento di benchmarking chiamato namebench. Oggi ti mostrerò come installare e configurare Bind sulle tue macchine basate su Linux.

Questo tutorial mostrerà la configurazione di base del server DNS utilizzando bind. Bind è un pacchetto gratuito che ti consente di configurare il server DNS. La configurazione di base di bind consumerà 200 MB della tua RAM e sarà pronta a configurarne di più quando il server entra in produzione (mentre aggiungi più zone e quando il server riceve più query).

Considera la configurazione di base come di seguito,

One machine for setting up the DNS server - I am going to call this machine as 10.180.8.115.

Esempio di dominio o zona:Techglimpse.com (10.180.3.74) per testare la configurazione

Authoritative Name server for techglimpse.com will be called as ns1.techglimpse.com

Sottodomini di esempio di techglimpse.com sono ftp, www, mail.

Scarica e installa Bind

Su macchine basate su Debian,

apt-get install bind9 dnsutils

Su macchine basate su CentOs/Fedora,

yum install bind dnsutils

Nota:Bind è il server DNS, mentre dnsutils contiene alcuni comandi relativi a DNS per il test e la risoluzione dei problemi. Ad esempio, scava.

Crea un file di zona per il dominio

Come ho detto prima, il nostro dominio di esempio sarà techglimpse.com. Quindi creeremo un file di zona per quel dominio. Per fare ciò, creiamo una directory in cui archiviare i file di zona.

cd /var/named
mkdir -p zones/master
cd zones/master/

Nota:la mia directory di collegamento è "/var/named", tuttavia questo potrebbe cambiare durante la configurazione. Ad esempio, /etc/named, /etc/bind ecc…

Ora è il momento di creare file di zona per techglimpse.com. La zona sarà denominata “db.techglimpse.com ” che conterrà record DNS come A, MX, CNAME ecc...

vi /var/named/zones/master/db.techglimpse.com

Incolla il codice sottostante,

;
; BIND data file for techglimpse.com
;
$TTL 3h
@ IN SOA ns1.techglimpse.com. admin.techglimpse.com. (
1 ; Serial
3h ; Refresh after 3 hours
1h ; Retry after 1 hour
1w ; Expire after 1 week
1h ) ; Negative caching TTL of 1 day
;
@ IN NS ns1.techglimpse.com.
techglimpse.com. IN MX 10 mail.techglimpse.com.
techglimpse.com. IN A 10.180.3.74
ns1 IN A 10.180.3.74
www IN CNAME techglimpse.com.
mail IN A 10.180.3.74
ftp IN CNAME techglimpse.com.

Nota:per configurare le zone, devi creare un file di zona simile per ogni dominio che desideri risolvere tramite il tuo server DNS. Apporta le modifiche necessarie al file della zona di esempio sopra.

Una rapida occhiata al file di zona:

* Record SOA – Si riferisce all'autorevole server dei nomi di techglimpse.com come ns1.techglimpse.com e admin.techglimpse.com si riferisce all'indirizzo email dell'amministratore del server DNS.

* NS Records:techglimpse.com ha un server dei nomi ns1.techglimpse.com. Normalmente, i domini avranno almeno due nameserver per l'alta disponibilità. A scopo dimostrativo, ho nominato solo un server dei nomi.

* MX (Mail Exchange):record di scambio di posta techglimpse.com.

* Record CNAME:nome canonico.

Ok! Qualunque cosa abbiamo fatto ora è per la mappatura da nome a indirizzo. Ora creiamo la mappatura tra indirizzo e nome.

Imposta indirizzo di mappatura nome:

Abbiamo configurato la risoluzione del server DNS sull'indirizzo IP quando il dominio viene interrogato. Ora, dovremmo dire al server di eseguire anche una ricerca inversa. Voglio dire, dall'IP al dominio.

vi /var/named/zones/master/db.10.180.3

Incolla il codice sottostante,

;
; BIND reverse data file for 3.180.10.in-addr.arpa
;
$TTL 604800
3.180.10.in-addr.arpa. IN SOA ns1.techglimpse.com. admin.techglimpse.com. (
1 ; Serial
3h ; Refresh after 3 hours
1h ; Retry after 1 hour
1w ; Expire after 1 week
1h ) ; Negative caching TTL of 1 day
;
3.180.10.in-addr.arpa. IN NS ns1.techglimpse.com.
74.3.180.10.in-addr.arpa. IN PTR techglimpse.com.

Qui, 74.3.180.10 è l'indirizzo inverso di 10.180.3.74. Nota anche il nome del file.

* Record PTR:associa l'indirizzo IP al nome di dominio.

Configura named.conf per leggere i file di zona

Dovremmo configurare named.conf per fare riferimento ai file di zona appena creati.

/var/named/zones/master/db.techglimpse.com
/var/named/zones/master/db.10.180.3

Nella mia macchina, named.conf si trova in /etc/. Tuttavia questo potrebbe cambiare sulla tua macchina; ad esempio:/etc/named/named.conf, /etc/bind/named.conf.

vi /etc/named.conf

Copia e incolla i testi sottostanti

zone "techglimpse.com" {
type master;
file "/var/named/zones/master/db.techglimpse.com";
};

zone “3.180.10.in-addr.arpa” {
type master;
file “/var/named/zones/master/db.10.180.3”;
};

Nota:apporta le modifiche necessarie per riflettere il dominio effettivo e le relative posizioni dei file di zona.

Verifica la correttezza del file di configurazione utilizzando il comando seguente.

named-checkconf

Controlla i file di zona per eventuali errori utilizzando il comando seguente

named-checkzone

Ad esempio

named-checkzone techglimpse.com /var/named/zones/master/db.techglimpse.com
zone techglimpse.com/IN: loaded serial 1
OK
named-checkzone 3.180.10.in-addr.arpa /var/named/zones/master/db.10.180.3
zone 3.180.10.in-addr.arpa/IN: loaded serial 1
OK

Se il comando precedente risponde con lo stato OK, allora è bene procedere con i passaggi seguenti, altrimenti ricontrollare i file di configurazione per eventuali errori.

Avvia il server Bind

/etc/init.d/bind9 start

o

/etc/init.d/named start

Se ci sono degli errori, dovresti vederli mentre avvii i demoni named o bind9.

Verifica la configurazione

Se ricordi, ho suggerito di installare dnsutils, che installerà un comando chiamato 'dig'.

dig @10.180.8.115 techglimpse.com
; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.17.rc1.el6_4.6 <<>> @10.180.8.115 techglimpse.com
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 45562
;; flags: qr aa rd; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 1
;; WARNING: recursion requested but not available

;; SEZIONE DELLA DOMANDA:
;techglimpse.com. IN UN

;; SEZIONE RISPOSTA:
techglimpse.com. 10800 IN A 10.180.3.74

;; SEZIONE AUTORITÀ:
techglimpse.com. 10800 IN NS ns1.techglimpse.com.

;; SEZIONE AGGIUNTIVA:
ns1.techglimpse.com. 10800 IN A 10.180.3.74

;; Tempo di interrogazione:2 msec
;; SERVER:10.180.8.115#53(10.180.8.115)
;; QUANDO:mar 15 ottobre 12:42:50 2013
;; MSG SIZE rcvd:83

Testare la risoluzione dell'IP per l'host,

dig @10.180.8.115 -x 10.180.3.74
; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.17.rc1.el6_4.6 <<>> @10.180.8.115 -x 10.180.3.74
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 47357
;; flags: qr aa rd; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 1
;; WARNING: recursion requested but not available

;; SEZIONE DELLA DOMANDA:
;74.3.180.10.in-addr.arpa. IN PTR

;; SEZIONE RISPOSTA:
74.3.180.10.in-addr.arpa. 604800 IN PTR techglimpse.com.

;; SEZIONE AUTORITÀ:
3.180.10.in-addr.arpa. 604800 IN NS ns1.techglimpse.com.

;; SEZIONE AGGIUNTIVA:
ns1.techglimpse.com. 10800 IN A 10.180.3.74

;; Tempo di interrogazione:2 msec
;; SERVER:10.180.8.115#53(10.180.8.115)
;; QUANDO:mar 15 ottobre 12:44:30 2013
;; MSG SIZE rcvd:105

Nota:il primo argomento indica al comando dig di risolvere utilizzando il server DNS (10.180.8.115; che abbiamo installato ora) e il secondo argomento è il nome di dominio/IP in questione.

Questo è tutto. Hai configurato correttamente il Bind.

Leggi anche: Dovresti abilitare la ricorsione sul tuo DNS? È vulnerabile!

Leggi anche: Come nascondere il nome del software del server DNS e la sua versione? [Sicurezza DNS]

Leggi anche: Come abilitare la registrazione del server DNS BIND per monitorare le query e per la risoluzione dei problemi?


Linux
  1. Come installare e configurare OpenVPN Access Server

  2. Come installare e configurare un server DNS semplice (BIND) su Debian 9

  3. Come installare e configurare server e client NTP Linux

  4. CentOS / RHEL 5:Come installare e configurare il server vsftpd

  5. Come installare e configurare Kerberos in CentOS/RHEL 7

Come installare e configurare Sandstorm Server su CentOS 8

Come installare e configurare Privoxy Server su CentOS 8

Come installare e configurare un server database su Jelastic Cloud

Come installare e configurare un TeamSpeak Server su Ubuntu 18.04

Come installare e configurare un server Minecraft su Ubuntu 18.04

Come installare e configurare il server DNS in Linux