Esperaba que algunos gurús de PAM / LDAP pudieran ayudarme aquí. Recientemente configuré un directorio LDAP en Ubuntu Server para mantener cuentas tanto para mis clientes (para usar con sistemas basados en la web) como para el personal (que necesitará iniciar sesión a través de SSH).
La autenticación LDAP funciona perfectamente. Sin embargo no puedo conseguir las restricciones de la cuenta de trabajo: las cuentas del personal tendrán identificadores entre 2001
y 2999
y será un miembro del ssh-users
grupo que les permita a los servidores de inicio de sesión.
Las restricciones en cuestión están en /etc/ldap.conf
, y están pam_min_uid
, pam_max_uid
y pam_groupdn
.
pam_groupdn
contiene el DN completo de mi ssh-users
grupo. pam_min_uid
= 2000
y pam_max_uid
= 2999
.
Ahora, he logrado que funcionen agregando:
account [success=1 default=ignore] pam_ldap.so
por encima de la pam_unix.so
línea en /etc/pam.d/common-account
. Sin embargo, las cuentas locales de Unix NO pueden iniciar sesión: el servidor SSH corta la conexión tan pronto como lo intentan.
He configurado el pam_ldap.so
módulo sufficient
en el archivo anterior, pero los usuarios no válidos reciben un mensaje que dice que no pueden iniciar sesión, pero de todos modos los registra.
Entonces, ¿cómo puedo establecer estas restricciones de cuenta para los usuarios de LDAP, al tiempo que sigo permitiendo que los usuarios de UNIX inicien sesión?
Como probablemente pueda adivinar, soy un novato en PAM, aunque he logrado que el módulo "crear directorios de inicio" funcione automáticamente :-)
Muchas gracias Andy