6 999
contributi
Nessun oggetto della modifica |
S3v (discussione | contributi) m (+ nuovo sommario) |
||
Riga 1: | Riga 1: | ||
{{ | {{Samba e OpenLDAP su Ubuntu server}} | ||
}} | |||
== Configurazioni preliminari == | == Configurazioni preliminari == | ||
Al fine di non incappare in errori e al fine di velocizzare la ricerca dei nomi e | Al fine di non incappare in errori e al fine di velocizzare la ricerca dei nomi e IP è necessario installare e configurare <code>bind9</code>.<br/> | ||
Per poter assegnare gli indirizzi IP ai client di una rete è necessario configurare il DHCP server. | Per poter assegnare gli indirizzi IP ai client di una rete è necessario configurare il DHCP server. | ||
Ricordo che si deve impostare l'interfaccia eth1 con | Ricordo che si deve impostare l'interfaccia eth1 con IP statico 192.168.2.1 altrimenti il DHCP server non funzionerà.<br/> | ||
Per chi ha Ubuntu si deve prima disinstallare apparmor, questo servizio è una vera scocciatura ed inutile per un server: | Per chi ha Ubuntu si deve prima disinstallare <code>apparmor</code>, questo servizio è una vera scocciatura ed inutile per un server: | ||
<pre> | <pre> | ||
#apt-get purge apparmor | # apt-get purge apparmor | ||
</pre> | </pre> | ||
=== Installazione del demone name service caching daemon (nscd) === | === Installazione del demone name service caching daemon (nscd) === | ||
Poiché il nostro server LDAP sarà consultato in maniera continuativa, potrebbe essere una buona idea installare un servizio di cache per alcuni dati degli utenti. In questo modo i dati contenuti in cache saranno forniti senza eseguire un accesso al database LDAP, velocizzando di conseguenza i tempi di risposta del server. Il demone nscd (name service caching daemon) esegue esattamente questa cosa: | |||
<pre> | <pre> | ||
# apt-get install nscd | # apt-get install nscd | ||
Riga 49: | Riga 33: | ||
Installare il DHCP server: | Installare il DHCP server: | ||
<pre> | <pre> | ||
#apt-get install dhcp3-server | # apt-get install dhcp3-server | ||
</pre> | </pre> | ||
Per abbreviare non spiegherò i parametri configurati, ma andrò direttamente alla configurazione di esempio. La configurazione contempla un DHCP server dinamico. | Per abbreviare non spiegherò i parametri configurati, ma andrò direttamente alla configurazione di esempio. La configurazione contempla un DHCP server dinamico. | ||
<pre> | <pre> | ||
#vim /etc/dhcp3/dhcpd.conf | # vim /etc/dhcp3/dhcpd.conf | ||
</pre> | </pre> | ||
editare come esempio: | editare come esempio: | ||
Riga 99: | Riga 83: | ||
Riavviamo: | Riavviamo: | ||
<pre> | |||
# /etc/init.d/dhcp3-server restart | |||
</pre> | |||
La configurazione sopra descritta è un server | La configurazione sopra descritta è un server DHCP dinamico, il quale aggiorna il DNS automaticamente. Come potete notare è stato aggiunta una stringa di path ''/etc/dhcp3/rndc.key'', questa è la chiave creata in sede di configurazione bind ed è stata copiata nella cartella del DHCP.<br/> | ||
Non descrivo altro sul | Non descrivo altro sul DHCP e rimando a guide più dettagliate come questa: [http://www.debian-administration.org/article/Configuring_Dynamic_DNS__DHCP_on_Debian_Stable] | ||
=== Configurazione DNS === | === Configurazione DNS === | ||
Il DNS (Domain Name Service) è un servizio Internet che mappa gli indirizzi IP e i nomi di dominio univoci (FQDN) tra di loro facendo in modo di non dover ricordare gli indirizzi IP. I computer che eseguono DNS sono chiamati server dei nomi. Ubuntu è dotato di BIND (Berkley Internet Naming Daemon), il più diffuso programma usato per mantenere un server dei nomi su Linux. | Il DNS (Domain Name Service) è un servizio Internet che mappa gli indirizzi IP e i nomi di dominio univoci ([[FQDN]]) tra di loro facendo in modo di non dover ricordare gli indirizzi IP. I computer che eseguono DNS sono chiamati server dei nomi. Ubuntu è dotato di BIND (Berkley Internet Naming Daemon), il più diffuso programma usato per mantenere un server dei nomi su Linux.<br/> | ||
Ci sono diversi metodi per configurare BIND9. Alcune delle configurazioni più comuni consistono in un server dei nomi cache, un server primario e un server secondario. | Ci sono diversi metodi per configurare BIND9. Alcune delle configurazioni più comuni consistono in un server dei nomi cache, un server primario e un server secondario. | ||
* Quando configurato come un server dei nomi cache, BIND9 troverà la risposta alle interrogazioni sui nomi e | * Quando configurato come un server dei nomi cache, BIND9 troverà la risposta alle interrogazioni sui nomi e la archivierà. | ||
la archivierà. | |||
* Come server primario, BIND9 legge i dati per una zona da un file ed è autoritativo per quella zona. | * Come server primario, BIND9 legge i dati per una zona da un file ed è autoritativo per quella zona. | ||
* Nella configurazione come server secondario, | * Nella configurazione come server secondario, BIND9 ottiene i dati della zona da un altro server dei nomi per quella zona.<br/> | ||
per quella zona. | |||
<br/> | |||
Installazione: | Installazione: | ||
<pre> | <pre> | ||
Riga 123: | Riga 106: | ||
La configurazione che descriverò è basata su di un server primario che è autoritativo per quella zona. Descriverò solo la zona che ci servirà per risolvere i nomi dei client perciò non descriverò la zona localhost (che dovrebbe essere configurata di default). | La configurazione che descriverò è basata su di un server primario che è autoritativo per quella zona. Descriverò solo la zona che ci servirà per risolvere i nomi dei client perciò non descriverò la zona localhost (che dovrebbe essere configurata di default). | ||
Bind9 divide | Bind9 divide il file <code>named.conf</code> in tre configurazioni, rispettivamente <code>named.conf.local</code>, <code>named.conf.options</code>, <code>named.conf.default-zones</code>. | ||
Descriverò tutti e tre precisando però che tutte le configurazioni devono essere richiamate da named.conf. | Descriverò tutti e tre precisando però che tutte le configurazioni devono essere richiamate da <code>named.conf</code>. | ||
'''/etc/bind/named.conf.options''' | '''/etc/bind/named.conf.options''' | ||
Riga 147: | Riga 130: | ||
listen-on-v6 { any; }; | listen-on-v6 { any; }; | ||
}; | }; | ||
</pre> | </pre> | ||
/etc/bind/named.conf.local''' | '''/etc/bind/named.conf.local''' | ||
<pre> | <pre> | ||
logging { | logging { | ||
Riga 183: | Riga 166: | ||
Ora ci resta da configurare le zone: | Ora ci resta da configurare le zone: | ||
''' | '''/etc/bind/db.dominio.local''' | ||
/etc/bind/db.dominio.local''' | |||
<pre> | <pre> | ||
$TTL 604800 | $TTL 604800 | ||
Riga 206: | Riga 188: | ||
pc4 A 192.168.2.173 | pc4 A 192.168.2.173 | ||
</pre> | </pre> | ||
Notate che il serial ha il seguente formato (aaaammggss): deve essere cambiato ogni volta che si fanno cambiamenti alla configurazione. (ss=seriale, che avanza di uno ogni volta che si cambia la configurazione, tuttavia prima di cambiarlo si deve prima cambiare la data e se nello stesso giorno non si fanno altri cambiamenti allora rimane inalterato). | Notate che il serial ha il seguente formato (aaaammggss): deve essere cambiato ogni volta che si fanno cambiamenti alla configurazione. (ss=seriale, che avanza di uno ogni volta che si cambia la configurazione, tuttavia prima di cambiarlo si deve prima cambiare la data e se nello stesso giorno non si fanno altri cambiamenti allora rimane inalterato).<br/> | ||
pc1,pc2,... sono i | pc1,pc2,... sono i client presenti sulla rete e per ogni di esso si deve aggiungere l'IP corrispondente assegnato dal DHCP, che dovrebbe però aggiornarlo automaticamente essendo dinamico. | ||
Ora vediamo il reverse zone: | Ora vediamo il reverse zone: | ||
Riga 237: | Riga 219: | ||
}; | }; | ||
</pre> | </pre> | ||
"rndc-key" è il nome della chiave che ritroviamo anche nelle varie zone del file named.conf e nel dhcpd.conf. | "rndc-key" è il nome della chiave che ritroviamo anche nelle varie zone del file <code>named.conf</code> e nel <code>dhcpd.conf</code>.<br/> | ||
La chiave è creata con un determinato algoritmo che in questo caso è l'hash md5. | |||
Il comando per creare la chiave è: | Il comando per creare la chiave è: | ||
<pre> | <pre> | ||
# dnssec-keygen -a HMAC-MD5 -b 128 -n USER rndc-key | # dnssec-keygen -a HMAC-MD5 -b 128 -n USER rndc-key | ||
</pre> | </pre> | ||
Copiare la chiave generata nel file /etc/bind/rndc.key, se il file non c'è bisogna crearlo. | Copiare la chiave generata nel file <code>/etc/bind/rndc.key</code>, se il file non c'è bisogna crearlo.<br/> | ||
Un esempio di chiave generata è: | Un esempio di chiave generata è: | ||
<pre> | <pre> | ||
Riga 253: | Riga 235: | ||
<pre> | <pre> | ||
chown -R root:bind /etc/bind | # chown -R root:bind /etc/bind | ||
chmod -R 664 /etc/bind | # chmod -R 664 /etc/bind | ||
chown root:bind /etc/bind/* | # chown root:bind /etc/bind/* | ||
chmod 664 /etc/bind/* | # chmod 664 /etc/bind/* | ||
</pre> | </pre> | ||
Configuriamo il resolv.conf: | Configuriamo il <code>resolv.conf</code>: | ||
'''/etc/resolv.conf''' | '''/etc/resolv.conf''' | ||
<pre> | <pre> | ||
Riga 267: | Riga 249: | ||
search dominio.local | search dominio.local | ||
</pre> | </pre> | ||
Impostare il blocco scrittura automatica del resolv.conf, altrimenti verrà riscritto: | Impostare il blocco scrittura automatica del <code>resolv.conf</code>, altrimenti verrà riscritto: | ||
<pre> | <pre> | ||
# chattr +i /etc/resolv.conf | # chattr +i /etc/resolv.conf | ||
Riga 277: | Riga 259: | ||
Riavviamo il tutto: | Riavviamo il tutto: | ||
<pre> | |||
# /etc/init.d/bind9 restart | |||
</pre> | |||
Testare il funzionamento: | |||
<pre> | <pre> | ||
# nslookup | # nslookup | ||
# < server | # < server | ||
Dovrebbe restituirvi l'indirizzo | Dovrebbe restituirvi l'indirizzo IP e la zona. | ||
#< pc1 | #< pc1 | ||
Dovrebbe restituirvi indirizzo | Dovrebbe restituirvi indirizzo IP e zone | ||
# < exit | # < exit | ||
Uscita | Uscita | ||
</pre> | </pre> |
contributi