Anular el shell LDAP

9

Tengo un servidor LDAP y un shell predefinido (bash) establecido en él. Pero hay alguna máquina en la que quiero que se use un shell diferente cada vez que el usuario inicie sesión en él en lugar del shell almacenado en LDAP.

¿¿Cómo puedo hacer esto?? ¿Alguien puede darme alguna dirección en esto?

Gracias

Increíble
fuente
cual os / version?
rkthkr
OS - Debian Lenny
Increíble

Respuestas:

10

En /etc/ldap.conf agregue la siguiente línea:

nss_override_attribute_value loginShell <different_shell>

Mucha suerte,
João Miguel Neves

jneves
fuente
1
Solo una nota de que para que esto funcione para mí, tuve que reiniciar nscd después del cambio ( /etc/init.d/nscd restart)
Michael Mior
/etc/ldap.confes el archivo de configuración de libnss . En sistemas debianish, lo es /etc/libnss-ldap.conf. man nss_ldap en su sistema debe dar el nombre exacto. También tuve que correr nscd -i passwdpara vaciar el caché nscd.
exore
3

Directorios de inicio compartidos? De lo contrario, ingrese a los usuarios ~/.bash_profile(o lo que sea el archivo apropiado, ingrese INVOCACIÓN man bash):

exec /bin/tcsh

O cualquier shell con el que desees reemplazar bash.

Si inician sesión con ssh, entonces podría usar pares de claves y comandos forzados.

Tenga en cuenta que, dependiendo de dónde coloque el exec para otro shell, es posible que los comandos como scpno funcionen correctamente si no busca un shell interactivo, como en /etc/skel/.bashrcUbuntu.

Su mejor opción es pedirle amablemente a su administrador de LDAP que cambie la loginShellde su usuario de LDAP.

ptman
fuente
Los usuarios iniciarán sesión a través de ssh. ¿Puede explicar un poco más sobre el uso de pares de teclas y la opción de comandos forzados? ¿Puedes por favor darme algunos consejos? Gracias.
Increíble
SSH keypairs: < sial.org/howto/openssh/publickey-auth > Se puede encontrar información sobre los comandos forzados en las páginas man sshd (8) y sshd_config (5)
ptman
No pude encontrar una opción que lo haga automáticamente para todos los usuarios. También debería estar relacionado con ldap, porque aquí sshd leerá el shell predeterminado de ldap. Y quiero anular eso.
Increíble