Sei sulla pagina 1di 17

Come rrealizzarre un seerver DN

NS con LLinux (Faamiglia R
RED HAT)  
 
CAP. 0 Intro oduzione   
Quello che andremo ad usare comee sistema opeerativo è unaa distro Linuxx CENTOS 5.5 5 , da premeettere che la 
suddetta distribuzione ffa installare BIND 9 in un
na chroot, e n non è come iin debian (ub buntu) che dda default da 
accessibilitàà  in /ETC/BIN
ND per quannto riguarda i vari files pe
er named.con
nf ed i file deelle zone. 
 
Cosa è una chroot ?  
Una  chroot, ccontrazione di cchange root, è u
un metodo di sicurezza usato per isolare i lim
miti operativi di una applicazione. Il nome 
deriva dal term
mine informaticco root che indica la directory principale del ssistema operativo in cui sono contenute tuttte le altre 
directory. 

Normalmente un software pu uò accedere a ttutti i dischi e lee risorse del sistema operativo o, compatibilmeente con i permmessi; 


l'operazione ddi chroot consiste nell'eseguiree il programma bloccato dentrro una sottodireectory, permetttendogli di acce edere solo alle 
risorse di cui h
ha strettamentee bisogno. La so ottodirectory inn questione vien ne anch'essa deenominata chro oot e deve conttenere una 
copia (di solito
o un hard link) d
di tutti i file di ssistema richiestti dal software. Nel caso di sisttemi Unix è neccessaria anche un copia dei 
device file a cu
ui il programmaa deve accederee. 
 
 
Normalmen nte in Centoss 5.4 e 5.5 il ffile named.conf è conten
nuto in /var//named/chro
oot/etc menttre è 
possibile insserire gli altrri file per con
nvenzione in /var/named
d/chroot/varr/named, bassta poi specifficarlo in 
named.conff 
DEBIAN UBUNTU  

/etc /
/bind
/(radice)
/vaar 

CENTOS 5.4
4 ‐  5.5  

etc
/(radicee) /etc
/var 
/ /named /cchroot
/var /n
named

 
mettere che q
C’è da prem quando in Ceentos vi troverete ad insttallare un server DNS le d directories sootto chroot 
etc e named d saranno vu no, oppure vee li andate a copiare da 
uote e saretee voi o ad insserire i files cche vi servon
/usr/share//doc/bind‐9.//sample/ 

1

 
Cap 1 Iniziamo DA DOVE ?  

1) Cominciamo ad installare CEntos 
 

               In modo grafico dando un enter  

2) Quindi avremo la seguente schermata  
       

 
 
 
Se è la prima volta che usiamo la ns immagine o il ns disco andiamo su OK altrimenti Skippiamo 
l’operazione di verifica del DVD  
 

 
 
 
3) Nella prima schermata di installazione andiamo subito su next 


 
 

 
 
 
4) Scegliamoci la lingua e passiamo alla schermata successiva 

 
 
5) Dopo l’idioma è chiaro che avremo da scegliere la tastiera


 
  
 
 
6) A questo punto il sistema inizia con la formattazione con il seguente messaggio che appare nel caso 
in cui non vi sono partizioni già presenti 

 
 
 
7) Dicendo si nella schermata precedente apparirà un ulteriore schermata 

 
Se vogliamo un partizionamento da default basta andare avanti  


 
Un ulteriore messaggio di conferma ci dirà che sta 
per iniziare cliccando su si 
 
8)  a tal punto si inizia con la configurazione della rete, centos parte già con la configurazione della NIC 
in DHCP, quello che serve a noi sono reti con indizzo statico quindi andremo su modifica 
 

      
 
da cui si sovrapporrà  la seguente schermata  

    
 
da qui andremo a inserire nella parte IPV4 un numero IP mentre nella parte / Prefix o una smn 
oppure un prefisso di bit dedicati alla rete ad  esempio (255.255.255.0 oppure 24). 
La parte IPV6 la possiamo anche omettere. 
Dando OK andremo ad inserire gli altri valori che servono. 
 
 
 
 


 
 
In questa schermata : 
inseriremo il FQDN alla voce imposta il nome host (dns1.prova.it) 
il gateway per l’ip ethernet  del router (192.168.1.1) 
ed il DNS primario [192.168.1.62] ( volendo si può inserire anche un secondario) che è il  
ns server che andremo a configurare.  
Quindi avanti  
 
9) Ora inseriremo il ns fuso orario  

 
 
10) Poi la password per l’utente root.  
 
 
 
   

   
   
   
   
   
   
   


 
11) Adesso vediamo l’installazione dei pacchetti :  

               In questa schermata andiamo a selezionare Desktop KDE (in quanto con il browser konqueror  
               possiamo navigare molto agevolmente nel file system) ed il supporto server.  
          

                    
                 Nella schermata di cui sopra invece andiamo a selezionare Servers nel box di sx e server dei  
                 nomi DNS.  
                 Altre scelte consigliate da fare saranno                            

Ambiente desktop   Lasciare sw di Default  
Applicazioni   Internet grafico, internet text‐
based, 
Sviluppo   niente 
Servers   Server dei nomi  
Sistema base   Base, java, sistema X windows, 
supporto networking dial up  
Virtualizzazione   Niente 
Clustering   Niente 
Cluster srtorage   Niente 
Linguaggi   Niente 

 
  

                  Dopo aver selezionato i pacchetti  base secondo la tabella precedente apparirà un ulteriore  
                  schermata di conferma, cliccando su avanti  il sistema installerà tutto ciò che abbiamo    
                  selezionato.  

                      
 

                       

                       

   

 
                           
     Quello che resta da fare ora è riavviare il sistema con Riavvia 
 
12) Riavvio del sistema  

            
          al riavvio del sistema  avremo da fare le ultime operazioni di installazione seguendo un schema   
          preciso datoci dal sistema 

Al messaggio di 
benvenuto clicchiamo 
su avanti 

            


 
 

La prima schermata 
sarà quella de firewall  
selezioniamo  ssh  
e andiamo avanti 

           

Su SELINUX  (2ª schermata) 
selezioniamo permissive  
e andiamo avanti 

           
Modifichiamo data ed ora se 
è il caso e se abbiamo la 
possibilità di collegarci ad 
un NTP andiamo nel TAB  
NETWORK TIME PROTOCOL 

            

 
10 
 
 

Se vogliamo aggiungere un 
NTP non di default 
clicchiamo aggiungi. 

Poi avanti 

Creiamo un 
utente con le 
relativa password 
e poi avanti 

Se abbiamo 
necessità di 
controllare la scheda 
audio clicchiamo qui 
e poi avanti. 

 
11 
 
A questo punto 
cliccando su Fine 
abbiamo terminato 
l’installazione del 
sistema operativo. 

Ora il sistema è 
pronto per il login 
noi entreremo come 
root. 

 
12 
 
 

Cap 2 Ricominciamo da Bind 
 
“Scusa cumm'era quella frase, se parti sai da cosa scappi, ma non sai cosa cerchi!! puh....me fatt fa chella figur e merd”    
(Massimo Trosi in “Ricomincio da Tre” 1980) 

1) Iniziamo  

Una volta aperto il KDE clicchiamo con il tasto DX sullo schermo ed andiamo in Konsole oppure  

Se vogliamo andare solo in interfaccia testuale premiamo CTRL + ALT + F1  

 
 
controlliamo se il servizio named è stato installato con  
 
[ root@dns1 /]# service named restart  
il sistema risponderà con un ok per lo stopping ed un fallito per il restart perché non trova i files nelle 
directories interessate  

13 
 
 

 
 
quindi ora quello che dobbiamo fare è andare a creare i files da inserire nelle directories.  
in realtà questi files sono contenuti in /usr/share/doc/bind‐9.3.6/var/named seguendo la schermata  
si possono copiare i files. 
 

 A questo punto il sistema parte e non resta che decidere come vogliamo realizzare il nostro DNS 

 
14 
 
 

2)Un esempio complesso  

Cosa vogliamo far fare al nostro NS server ?  

Supponiamo che egli abbia una zona  e la chiamiamo 
prova.it  secondo lo schema 

alfa.prova.it Il server del dominio prova.it  delegherà le 
zone bravo.prova.it e charlie.prova.it ad 
altri server , mentre alfa.prova.it sarà 
amministrato da lui. A sua volta 
prova.it bravo.prova.it  alfa.prova.it avrà altri sottodomini 

charlie.prova.it
 

Andiamo quindi in etc sotto chroot  
con  

# cd /var/named/chroot/etc  

Se facciamo un ll o ls abbiamo  

[root@dns1 etc]# ll 

totale 36 
‐rw‐r‐‐r‐‐ 1 root root  2652 30 giu 00:26 localtime 
‐rw‐r‐‐r‐‐ 1 root root     0  1 lug 22:17 named.conf 
‐rw‐r‐‐r‐‐ 1 root root   426  1 lug 22:20 named.local 
‐rw‐r‐‐r‐‐ 1 root root  1892  1 lug 22:20 named.root 
‐rw‐r‐‐‐‐‐ 1 root named  113 30 giu 23:46 rndc.key 

diamo un vi  
 

#vi named.conf  

//esempio di dns
logging {
channel bind{
file "/var/log/bind";
print-time yes;
print-category yes;
};
category default {bind;};
};
//---------------------------------------------------

options {
directory "/var/named"

15 
 
forwarders {192.168.1.1;};
};

//--------------------------------------------------
// inizio delle zone

zone "." {
type hint;
file "namedc.root";
allow-update { none; };
};

zone "localhost"{
type master;
file "named.local";
allow-update { none; };
};

zone "0.0.127.in-addr.arpa" {
type master;
file "localhost.zone";
allow-update { none; };
};

zone "prova.it" IN {
type master;
file "prova.dat";
allow-update { none; };
};

zone "alfa.prova.it" IN {
type master;
file "alfa.dat";
allow-update { none; };
};

zone "1.168.192.in-addr.arpa" IN {
type master;
file "rgc.rev";
allow-update { none; };
};

Dopo cio portiamoci nella cartella named  
 
#cd var/named

e con vim andiamo a realizzare il il file named.soa che sarà incluso nelle zona prova.it cioè  
#vi named.soa 

$TTL 86400

@ IN SOA prova.it. root.prova.it. (


201007011 ; serial
15M ; refresh
5M ; retry
60M ; expiry
4H ) ; minimum

@ IN NS dns1.prova.it
16 
 
 
 
 

Altro file da realizzare è il soa per alfa.prova.it quindi : 
#vi alfa.soa 
 
$TTL 86400

@ IN SOA dns1.prova.it. root.prova.it (


201007011 ; serial (d. adams)
3H ; refresh
15M ; retry
1W ; expiry
1D ); minimum
@ IN NS dns1.alfa.prova.it

 
realizziamo ora il file prova.dat 
a consolle oppure in  konsole di KDE  
#vi prova.dat 
 

$INCLUDE named.soa

prova.it. IN A 192.168.1.62

alfa.prova.it. 86400 IN NS dns1.alfa.prova.it.


dns.ita.rgc. 86400 IN A 192.168.1.62

bravo.prova.it. 86400 IN NS dns.bravo.prova.it.


dns.bravo.prova.it 86400 IN A 192.168.2.240

charlie.prova.it. 86400 IN NS dns.charlie.prova.it.


dns.charlie.prova.it. 86400 IN A 10.101.0.11

realizziamo ora il file alfa.dat

sempre con vi

#vi alfa.dat  

$INCLUDE alfa.soa

$INCLUDE interni.alf

first.alfa.prova.it. 86400 IN NS dns.first.alfa.prova.it.


dns.first.alfa.prova.it. 86400 IN A 192.168.10.240

second.alfa.prova.it. 86400 IN NS dns.second.alfa.prova.it.


dns.second.alfa.prova.it. 86400 IN A 192.168.20.240

il file interni.alf è il file che contiene gl host interni al dominio


alfa.prova.it

@ IN MX mail.alfa.prova.it.
www IN A 192.168.1.230
mail IN CNAME www

a questo punto possiamo dare un # service named restart


17