[FoLUG] SAMBA + LDAP

samuele samuele enlargeyourlinux@yahoo.it
Gio 23 Feb 2006 22:19:13 CET


--- GG Noris <gigi@pclinx.it> ha scritto: 

> esatto pero' pensavo che non fosse un mostro da
> configurare..

samba + ldap effettivamente alla prima botta è un po'
un casino da configurare, ma passato lo scoglio tutto
diventa chiaro
 
> io non ho nessun server windows in questa nuova
> rete. questa macchina sarebbe l'unico server della
> rete.
> i doc che trovo pero' sono quasi tutti dipendenti
> dalla migrazione di windows.
> 
> Vorrei capire il passaggio dalla creazione
> dell'utente di samba all'utilizzo poi dell' uid
> dello stesso per creatre un file sul filesystem.
> come fa slackware a mappare uid con utente se
> l'utente non e' stato creato in passwd ? e' forse
> questo il compito di pam non solo auth, ma anche
> sincronizzazione delgi users tra ldap e passwd ??
> 
> oppure sto' facendo un casino immane ??
> 
> GG

Nel tuo caso non avendo pam+pam_ldap+nss_ldap devi per
forza avere l'utente win in passwd come se fosse un
utente linux normale, altrimenti quando devi accedere
al filesystem linux non sa che pesci pigliare.
pam_ldap+nss_ldap è utile perchè sostituisce il file
passwd e quando un utente accede al filesystem pam
cerca attraverso pam_ldap l'utente il suo gid/uid su
openldap. non avendo nss_ldap è inutile la modifica
che hai fatto su nsswitch.conf.
Ricapitolando quando samba autentica l'utente "pippo"
che si logga su windows cerca il suo rid per il suo
account/gruppo sul database che ha come backend. il
backend puo' essere ldap oppure tdb. Supponiamo che
l'utente cerchi di accedere ad un file su una
condivisione il file ha come utente "pippo" e gruppo
"domain users". Il problema è che nel file non ci sono
memorizzati i rid di windows, ma ci sono gli uid/gid
dell'utente pippo su unix. A quel punto il sistema
deve cercare pippo come utente unix e lo fa con passwd
nel caso di tdb, mentre con ldap vengono chiamati in
causa pam+pam_ldap*nss_ldap che interrogano ldap e
trovano la corripondenza tra pippo e il suo uid/gid
unix. 
Nel tuo setup mancando questa componente sei costretto
a creare anche l'utente in passwd e i gruppi un group.
Se il file appartiene al gruppo "domain users" allora
lui ha come rid in windows na roba tipo
S-1-2-3-40928520-985705345-0985171-513 (è un esempio
non so se il sid è corretto). Nel file Unix pero' c'e'
il gid 1003. A quel punto pam_ldap+nss_lap pesca su
ldap il gruppo esatto e quando fai un ls su unix vedi
"domain users" come gruppo nel file. Se non hai quei
componenti allora c'e' il problema di creare utenti e
gruppi su passwd+group. Quando cambi il gruppo ad un
file da windows vedi che gli cambia il gruppo windows
(e quandi il sid), mentre samba si cura di trovare il
gid unix e memorizza quello nel file. E' per questo
che quando crei un utente/gruppo x samba devi creare
l'utente windows e l'utente unix. La cosa che li
accomuna è lo userid che deve essere lo stesso. Spero
di essermi fatto capire. Nel tuo caso se non hai pam
userei tdb. Scusami per la risposta kilometrica.

Ciao
   Samuele


	

	
		
___________________________________ 
Yahoo! Mail: gratis 1GB per i messaggi e allegati da 10MB 
http://mail.yahoo.it


Maggiori informazioni sulla lista FoLUG