Romano Server DNS

Da Wiki-itsos.

Situazione di partenza

Macchina virtuale con installato Ubuntu Server 14.04 Liv. 1A

Obiettivi

1- Installare il DNS Server Bind
2- Configurare il server in modo che risolva gli indirizzi internet
3- Configurare Bind in modo che risolva una zona che chiamerete <vostrocognome>.it

Indicazioni di lavoro

Importante: in laboratorio, date al vostro server IP 10.200.7.<5+vostra posizione nel registro> e al client <10.200.7.25+vostra posizione nel registro>

# Romano Server 04-12-2015
# The  loopback network interface
auto lo
iface lo inet loopback
# The primary network interface auto eth0 iface eth0 inet static address 10.200.7.22 netmask 255.255.255.0 network 10.200.7.0 broadcast 10.200.7.255 gateway 10.200.7.1 dns-nameserver 10.200.7.1 # Romano Client 04-12-2015 # The loopback network interface auto lo iface lo inet loopback
# The primary network interface auto eth0 iface eth0 inet static address 10.200.7.42 netmask 255.255.255.0 network 10.200.7.0 broadcast 10.200.7.255 gateway 10.200.7.1 dns-nameserver 10.200.7.1

Installazione DNS Server Bind

Al momento, la versione proposta per default è la 9. Potete dare l'evidenza di avere installato Bind semplicemente facendo partire il servizio, o mostrando il suo stato.

- per installare

apt-get install bind9 bind9-host dnsutils

root@ns:/home/tech# apt-get install bind9 bind9-host dnsutils

- una volta installato, Bind si trova in /etc/bind


Configurazione Server DNS

Prima parte

Una volta installato Bind, il vostro server risolverà gli indirizzi se lui stesso ha accesso a un DNS che risolva. In Itsos, usate 192.168.1.9, a casa vostra usate invece il DNS del vostro provider (che potete scoprire con il comando IP CONFIG / ALL o usando nslookup) Importante: per agganciare il nostro server Bind al nameserver, bisogna:

2A - editare il file

root@ns:/home/tech# pico /etc/bind/named.conf.options

2B - Togliere il commento // alla sezione forwarders

2C - al posto di 0.0.0.0 inserire l'IP del DNS Itsos 192.168.1.9

        forwarders {
               192.168.1.9;
        };

Seconda Parte

Una volta che il DNS è capace di risolvere per sé stesso, allora userete un client (virtuale o anche non virtuale, ma è più complicato) per fare le prove.

Per rendere la macchina client del nostro server, dobbiamo impostare in /etc/network/interfaces l'indicazione:

dns-nameservers <indirizzo del vostro server>

dns-nameserver 10.200.7.22

Dovrete impostare sul client il vostro server DNS come DNS, quindi usate nslookup o similari per produrre l'evidenza

root@RomanoDNS:/home/tech# nslookup www.google.it
Server:		10.200.7.1
Address:	10.200.7.1#53

Non-authoritative answer:
Name:	www.google.it
Address: 173.194.113.56

Configurazione Bind

Dovremo lavorare prevalentemente sul server, e più precisamente nella cartella /etc/bind

Prima parte

il file che contiene le zone dichiarate si chiama named.conf e sarà il primo da modificare.
Dovremo inserire in named.conf l'indicazione della zona che dovete creare (e del file corrispondente) e l'indicazione della zona inversa (anche questa con il file corrispondente)

- Modifico il codice del file named.conf.local

zone "Romano.it"  {
 type master;
 file "/etc/bind/RomanoZona";
};
zone "1.168.192.in-addr.arpa" { type master; file "/etc/bind/RomanoZonaInversa"; };


Per verificare se il file named.conf è corretto, c'è il comando named-checkconf

root@ns:/etc/bind# named-checkconf
root@ns:/etc/bind# 

Se non ci sono errori, non risponde nulla, altrimenti evidenzia un messaggio di errore

Seconda parte

Creare i 2 file di zona e zona inversa
- la vostra zona deve avere:
- un nameserver
- un record mx
- almeno un nome di host (record A)

Creazione file di zona e zona inversa:

$ttl 24h
romano.tes.mi.it. IN SOA ns.romano.tes.mi.it. admin.romano.tes.mi.it. (
2015102712 28800 3600 604800 38400 )

romano.tes.mi.it. IN NS ns.romano.tes.mi.it. IN A 10.200.7.23 mail.romano.tes.mi.it. IN MX 10 mail.romano.tes.mi.it.
mail IN A 10.200.7.22 ns IN A 10.200.7.22 PetrovClient IN A 10.200.7.42 ftp IN CNAME ns www IN A 10.200.7.42
$ttl 24h
@ IN SOA ns.romano.tes.mi.it. admin.tes.mi.it. (
                       2013102210;
                       28800;
                       604800;
                       604800;
                       86400
)
IN NS ns.tes.mi.it. 10.200.7.22 IN PTR romano.tes.mi.it. 10.200.7.42 IN PTR host.romano.tes.mi.it.


Per verificare la singola zona, diamo

named-checkzone romano.tes.mi.it RomanoZona

root@ns:/etc/bind# named-checkzone romano.tes.mi.it RomanoZona 
zone romano.tes.mi.it/IN: loaded serial 2015102712
OK

named-checkzone romano.tes.mi.it RomanoZonaInversa

root@ns:/etc/bind# named-checkzone romano.tes.mi.it RomanoZonaInversa
zone romano.tes.mi.it/IN: loaded serial 2015102910
OK


Dove la data è quella impostata nella zona.

Per riavviare il servizio e rendere attive le modifiche alle configurazioni

/etc/init.d/bind9 restart

root@ns:/etc/bind# /etc/init.d/bind9 restart
 * Stopping domain name service... bind9                                        
waiting for pid 1091 to die
                                                                         [ OK ]
 * Starting domain name service... bind9                                 [ OK ] 
root@ns:/etc/bind# 

Per testare:
nslookup <nome.host.da.risolvere> <IP del ns>

root@ns:/etc/bind# nslookup www.google.it
Server:		10.200.7.1
Address:	10.200.7.1#53

Non-authoritative answer:
Name:	www.google.it
Address: 173.194.113.47