En el post anterior se describía la sustitución natural de libnss_ldap en RHEL6 que conocíamos hasta RHEL5. El inconveniente que presenta es que ahora ya no incluye soporte para nested_groups (grupos dentro de grupos) tal y como se recoge en el README del paquete: /usr/share/doc/nss-pam-ldapd-0.7.5/README
Para conseguir que nuestro sistema soporte los grupos dentro de grupos que hay en el directorio OpenLDAP, tendremos que configurar la segunda alternativa que incluye nuestro sistema RHEL6. Se trata de SSSD: System Security Services Daemon (SSSD). Este es un nuevo servicio que aparece en Fedora 11, y pretende ofrecer una interfaz para NSS y PAM, única desde la que administrar el acceso remoto a directorios LDAP y múltiples mecanismos de autenticación desde un único punto. Este servicio es un elemento fundamental en FreeIPA (el proyecto de identity-manager de RedHat, basado en su LDAP, no en OpenLDAP).
La idea es la misma que la anterior: Disponer un servicio independiente de nss que se encargue de las búsquedas en LDAP, Kerberos, etc, y que si se detiene el sistema no se ralentice. Para configurar este nuevo servicio de forma que busque los usuarios y grupos en nuestro OpenLDAP editaremos el fichero /etc/sssd/sssd.conf y configuraremos la sección [domain/LDAP] para que tenga el siguiente contenido:
[domain/LDAP]Lo importante para el soporte de nested_groups es la declaración de
id_provider = ldap
auth_provider = ldap
ldap_schema = rfc2307bis
ldap_uri = ldap://LDAPSERVER.tecnoquia.com
ldap_user_search_base = o=tecnoquia,c=es
ldap_group_search_base = ou=grupos,o=tecnoquia,c=es
ldap_default_bind_dn = cn=nss,o=tecnoquia,c=es
ldap_default_authtok_type = password
ldap_default_authtok = super-secreto
ldap_group_member = uniqueMember
cache_credentials = true
enumerate = true
ldap_schema=rfc2307bis
. Además, debemos descomentar la línea: domains = LOCAL,LDAPy también la definición del dominio [domain/LOCAL], para quede como:
[domain/LOCAL]Luego editar el fichero /etc/nsswitch.conf para cambiar la configuración de donde debemos buscar los usuarios y grupos:
description = LOCAL Users domain
id_provider = local
enumerate = true
min_id = 500
max_id = 999
passwd: files [NOTFOUND=continue] sssPara aplicar estos cambios, tendremos que iniciar el demonio
shadow: files
group: files [NOTFOUND=continue] sss
sssd
: /etc/init.d/sssd starty luego si, podremos ejecutar los comandos:
chkconfig sssd on
getent passwd
, que nos mostrará un listado de todos los usuarios locales y en LDAPgetent group
, nos mostrará un listado de las cuentas de grupo locales y en el directorio, expandiendo correctamente los usuarios de grupos que contenidos en otros grupos.id <LOGIN>
nos mostrará información del usuario, que puede estar almacenada en LDAP
La foto la he sacado del album de challiyan en flickr
1 comentario:
Me parecia raro ѵer un post asii en esge sitio ,en cambio hoy estoy
realente agrаdecido con el de hoy
Pɑra leer mas ... Miki
Publicar un comentario