Re: chiarimenti su common-auth
Il giorno mer, 28/03/2012 alle 18.16 +0200, stefano ha scritto:
[...]
> provando con strace nslcd ho trovato che non riusciva ad entrare in
> nslcd.conf per via dei permessi quindi, non credo sia corretto, ho
> dato i permessi totali (777) a nslcd.conf.
> oltre a questo file, non poteva entrare nemmeno
> in /var/run/nslcd/nslcd.pid ma questo, essendo creato ogni volta che
> si avvia il processo non posso modificargli i permessi nel modo che ho
> usato prima con nslcd.conf.
nslcd va lanciato da root, ma non a mano bensì tramite lo script
in /etc/init.d. Lo script di avvio crea, come root, la
directory /var/run/nslcd assegnandola a utente:gruppo nslcd:nslcd. Poi
il processo parte e ci scrive alcuni file. Il processo viene avviato con
gli stessi diritti nslcd:nslcd, quindi perché possa
leggere /etc/nslcd.conf è necessario che sia leggibile almeno al gruppo.
Nel mio caso i diritti sono:
# ls -ld /etc/nslcd.conf /var/run/nslcd /var/run/nslcd/*
-rw-r----- 1 root nslcd 621 28 gen 22.24 /etc/nslcd.conf
drwxr-xr-x 2 nslcd nslcd 4096 14 feb 09.23 /var/run/nslcd
-rw-r--r-- 1 root root 5 14 feb 09.23 /var/run/nslcd/nslcd.pid
srw-rw-rw- 1 root root 0 14 feb 09.23 /var/run/nslcd/socket
morale:
1. assegna i diritti corretti, casomai non lo fossero, a /etc/nslcd
2. avvia sempre nslcd tramite lo script in /etc/init.d
se vuoi avere maggiori informazioni su cosa faccia nslcd puoi, come
spiegato nella pagina di manuale di nslcd, usare l'opzione «--debug». In
questo caso puoi, forse, invocarlo da root, ma solo dopo aver creato la
directory /var/run/nslcd. Se non funzionasse, invocalo da utente nslcd
dopo aver dato i giusti diritti a /var/run/nslcd.
Ciao,
G.
Reply to: