Speravo che alcuni guru PAM / LDAP potessero aiutarmi qui. Di recente ho impostato una directory LDAP su Ubuntu Server per contenere account sia per i miei clienti (per l'uso con sistemi basati sul web) sia per il personale (che dovranno accedere tramite SSH.)
L'autenticazione LDAP funziona perfettamente. Tuttavia, non riesco a far funzionare le restrizioni dell'account: gli account del personale avranno ID tra 2001
e 2999
e saranno membri del ssh-users
gruppo per consentire loro di accedere ai server.
Le restrizioni in questione sono in /etc/ldap.conf
, e sono pam_min_uid
, pam_max_uid
e pam_groupdn
.
pam_groupdn
contiene il DN completo per il mio ssh-users
gruppo. pam_min_uid
= 2000
e pam_max_uid
= 2999
.
Ora sono riuscito a farli funzionare aggiungendo:
account [success=1 default=ignore] pam_ldap.so
sopra la pam_unix.so
linea in /etc/pam.d/common-account
. Tuttavia, gli account Unix locali NON possono quindi accedere: il server SSH interrompe la connessione non appena provano.
Ho impostato il pam_ldap.so
modulo sufficient
nel file sopra, ma poi gli utenti non validi ricevono un messaggio che dice che non possono accedere, ma li accede comunque.
Quindi, come posso impostare queste restrizioni dell'account per gli utenti LDAP, pur consentendo agli utenti UNIX di accedere?
Come probabilmente intuirai, sono un principiante di PAM, anche se sono riuscito a far funzionare il modulo "Crea automaticamente home directory" :-)
Mille grazie, Andy