Cominciamo, dopo le chiacchere del post predente della serie, con la configurazione del nostro file server domain controller basato su Samba e OpenLDAP. Come primo passo dedichiamoci all' installazione dei pacchetti necessari.
In questo tipo di configurazioni è bene concentrarci sul singolo problema, evitando di correr dietro a cause esterne dovute ad altri servizi. Tutto questo per dire che se per caso avete attivato il firewall è giunto il momento di disattivarlo momentaneamente. Quando tutto funzionerà a dovere lo ripristineremo con le rules aggiuntive opportune. Quindi:
sudo /etc/rc.d/shorewall stop
sudo nano /etc/hosts.allow
all: ALL : allow
Durante l'installazione ho, purtroppo, constatato che i pacchetti necessari in questa impresa non sono tutti disponibili né sui repository ufficiali nè su AUR. Certo, essendo degli script perl e delle librerie dello stesso, avrei potuto usare CPAN ed installare gli script a mano, ma finché posso voglio evitare questa pratica e allora (rullo di tamburi:)) ho creato un piccolo e radioattivo repository personale con quello che ci serve.
Creare un repository con Arch è veramente una operazione banale con il comando repo-add, un po' più complicati sono i PKGBUILD. Di grande aiuto mi è stata l'utility cpan4pacman installata nel primo capitolo di questa serie, che mi ha creato i PKGBUILD per le librerie perl mancanti, appena un po' più complesso il pacchetto smbldap-tools che ho dovuto fare da zero (o quasi). Perchè radioattivo ? Perchè ho ignorato tutte le opzioni di verifica delle dipendenze e i checksum MD5. Sono script in perl, di bassa pericolosità, ma naturalmente non mi assumo responsabilità.
sudo nano /etc/pacman.conf
[stenoweb]
Server = http://www.stenoweb.it/repo/i686
sudo pacman -Sy
Ma come diavolo si installerà Samba ? io proverei con un:
sudo pacman -S samba
E qui interviene il mio repository. Gli LDAP Tools sono degli script realizzati in perl che permettono di gestire utenti e gruppi Samba/Unix salvando i dati sull'albero LDAP anziché sui file /etc/passwd e /etc/group. In pratica sostituiscono i vari comandi standard linux di gestione degli utenti.
Iniziamo con installare le librerie perl necessarie :
sudo pacman -S perl-digest-sha1 perl-crypt-smbhash perl-jcode perl-unicode-map perl-unicode-map8 perl-unicode-maputf8 perl-unicode-string perl-ldap perl-io-socket-ssl
sudo pacman -S smbldap-tools
sudo /usr/local/bin/smbldap-useradd nomeutente
sudo netuseradd nomeutente
Per ultimo abbiamo bisogno del file di schema da applicare a OpenLDAP per memorizzare i dati di cui ha bisogno Samba. Cos'e' un file di schema ? LDAP in buona sostanza è un database, lo schema non è altro che il tracciato record che descrive, dichiara e crea i campi nel database LDAP. Nello schema Samba ci sono i campi per il nome utente, la password, la home, i gruppi ecc. che servono a memorizzare i nostri dati nell'albero LDAP.
Il file samba.schema di cui abbiamo bisogno è fornito con i sorgenti di Samba: anziché scaricare i 17MB, scompattare e recuperare il file ve lo fornisco io direttamente.
Spostiamoci nella cartella degli schemi di OpenLDAP :
cd /etc/openldap/schema
sudo wget http://www.stenoweb.it/repo/noarch/samba.schema
Bene, la parte installazione è conclusa, nella prossima puntata inizieremo con le configurazioni.
ciao
intanto grazie per l'ottima guida, finalmente una cosa che funziona al primo colpo... era da mesi che volevo cominciare a smanettare con ldap per poi unirlo a samba...
il tuo repositary non funziona, o almeno a me non va...
al momento ho ovviato con le installazioni tramite cpan... e cpan4pacman (anche se mi ha dato diversi problemi... che ora non ho proprio voglia di controllare :) )
samu