IL PACCHETTO ISI-LDAP
Un server ldap fornisce un fondamentale servizio di autenticazione centralizzata andando a sostituire la tipica molteplicità di database e meccanismi di autenticazione normalmente presenti su un sistema linux. Il server ldap è responsabile, ad esempio, dell'autenticazione degli utenti linux, di quelli windows via Samba, autorizza l'accesso internet via Squid e conserva tutti i dati significativi degli utenti in modo ben piu' ricco e completo di quanto non possono fare i tradizionali servizi linux basati su password e smbpassword.
La configurazione di
Openldap e il suo interfacciamento con servizi quali
Samba e
Squid è generalmente piuttosto complicata, siamo perciò orgogliosi di presentare il pacchetto
ISI-LDAP che, per le sue caratteristiche autoconfiguranti e per le utilities che lo accompagnano, rende veloce e semplice una operazione generalmente complessa e cruciale per tutta l'architettura di una intranet di qualunque tipo.
Il sistema di pre/post installazione del pacchetto Debian
ISI-LDAP, è stato predisposto per installare automaticamente e preconfigurare anche i pacchetti strettamente correlati Samba, atd, pam e migrationtools. Da un punto di vista funzionale quindi e partendo da una macchina nuda, in pochissimi minuti e confermando semplicemente le opzioni di default proposte, si ottiene:
- l'installazione e la configurazione del server ldap (slapd)
- l'installazione e la configurazione minima di samba che usera' il demone slapd come autenticatore
- la migrazione automatica di tutti gli account linux (tranne root) sull'albero ldap
Installazione
Per installare il pacchetto basta dare il comando
apt-get install isi-ldap e confermare.
Verranno sottoposte le opzioni avanti descritte, accettando i default proposti, si ottiene un sistema funzionante gia' pronto per il caricamento degli utenti.
Popolazione dell'albero ldap e generazione del file system
Il caricamento iniziale dell'albero ldap avviene per mezzo del comando
# ldap_addusers [[-G] [-L]|-GL] file_utenti
in cui
- l'opzione -G abilita la creazione di home directory posizionate come /home/gruppo_principale/utente, in assenza di questa opzione il path sara' semplicemente /home/utente
- l'opzione -L abilita la creazione di home directory posizionate come /home/iniziale_nome_utente/utente (opzione LETTERHOME di /etc/useradd.conf)
le due opzioni possono essere combinate.
- e' un file ascii-delimitato (campi separati da virgole e delimitati da "") contenente tutti gli utenti e avente il seguente formato:
"user_name" , "cognome e nome" , "lista gruppi (separati da SPAZIO, il primo gruppo e' quello PRINCIPALE", "password"
esempio: "pippo","Rossi Mario","ALUNNI GEO1A","miapass"
Programmi di utilità
Per i dettagli si rimanda alle relative pagine man.
ldap_addusers: aggiunge utenti al db ldap leggendoli da un file oppure, omettendo il file, in modo interattivo direttamente da tastiera.
ldap_adduser: aggiunge un utente ad db ldap
ldap_passwd: cambia la password dell'utente
ldap_addgroup: aggiunge un gruppo al db ldap
ldap_deluser: cancella l'utente dal db ldap
ldap_getattr: legge il dato ldap indicato relativo all'utente indicato
ldap_groupcat: restituisce la lista degli utenti di un gruppo
ldap_quota: assegna la quota disco a tutti gli utenti di un gruppo
ldap_alulink: scrive nella cartella di ciascuna classe una sottocartella 'alulink' in cui inserisce i link simbolici alle cartelle home degli alunni della classe stessa (per facilitare il ritrovamento di queste da parte dei docenti)
le utilities successive hanno senso in relazione al sistema di cartelle gestite da samba.
alu_setclasse: registra nel db ldap, nel campo utente
departmentNumber, la classe frequentata dall'alunno, per tutti gli alunni
home_setclasse: utilizzato da una direttiva di smb.conf durante il processo di logon; serve per generare la connessione dell'utente alla cartella della propria classe, che sara' raggiungibile attraverso
Risorse del computer,
unita' L
home_du: genera un report sullo spazio disco occupato dalle home degli utenti di un gruppo
ldap_pwexpired: utilizzata internamente da samba/ldap_passwd, dichiara scaduta una password (purtroppo reagiscono alla sua azione solo i client xp)
ldap_pwmaxage: utilizzata internamente da samba/ldap_passwd, ripristina la durata della password dell'utente
In conclusione
Concludiamo con quanto e' necessario digitare in una console di root su macchina su cui e' stato appena installato
ArgoLinux?, per trasformarla in un PDC samba/ldap pronta a gestire la nostra rete d'istituto.
I prerequisiti sono:
- e' stato preparato (in /root) il file degli utenti, chiamiamolo lista-utenti (noi, ad esempio, lo costruiamo con excel e lo esportiamo come file csv pronto all'uso)
- e' stata creata la cartella /home/classi e le sottocartelle /home/classi/nome-classe con nome-classe uguale a al nome del gruppo classe utilizzato nel file lista-utenti
# apt-get update
# apt-get install isi-ldap (confermare tutte le opzioni, bisognera' solo scrivere per TRE volte la stessa password)
# ldap_addusers -G _lista-utenti_
# alu_setclasse
# ldap_quota /home alunni 10000 15000 0 0
a questo punto non resta che perfezionare la configurazione di samba, modificando opportunamente /etc/samba/smb.conf e configurare le stampanti (se si possiedono stampanti di rete, la cosa richiede l'utilizzo del pacchetto CUPS)