3.2. Configuración de SSSD para usar LDAP y requerir autenticación TLS
Complete este procedimiento para configurar su sistema Red Hat Enterprise Linux (RHEL) como un cliente OpenLDAP con la siguiente configuración de cliente:
- El sistema RHEL autentifica a los usuarios almacenados en una base de datos de cuentas de usuario OpenLDAP.
- El sistema RHEL utiliza el servicio System Security Services Daemon (SSSD) para recuperar los datos del usuario.
- El sistema RHEL se comunica con el servidor OpenLDAP a través de una conexión cifrada TLS.
También puede utilizar este procedimiento para configurar su sistema RHEL como cliente de un Red Hat Directory Server.
Requisitos previos
- El servidor OpenLDAP está instalado y configurado con la información de los usuarios.
- Tienes permisos de root en el host que estás configurando como cliente LDAP.
-
En el host que está configurando como cliente LDAP, se ha creado el archivo
/etc/sssd/sssd.confy se ha configurado para especificarldapcomo elautofs_providery elid_provider. -
Tiene una copia con formato PEM de la cadena de certificados de firma de la CA raíz de la autoridad de certificación que emitió el certificado del servidor OpenLDAP, almacenada en un archivo local llamado
core-dirsrv.ca.pem.
Procedimiento
Instale los paquetes necesarios:
# dnf -y install openldap-clients sssd sssd-ldap oddjob-mkhomedirCambie el proveedor de autenticación a
sssd:# authselect select sssd with-mkhomedirCopie el archivo
core-dirsrv.ca.pemque contiene la cadena de certificados de firma de la CA raíz de la autoridad de certificación que emitió el certificado SSL/TLS del servidor OpenLDAP en la carpeta/etc/openldap/certs.# cp core-dirsrv.ca.pem /etc/openldap/certsAñade la URL y el sufijo de tu servidor LDAP al archivo
/etc/openldap/ldap.conf:URI ldap://ldap-server.example.com/ BASE dc=example,dc=comEn el archivo
/etc/openldap/ldap.conf, añada una línea que señale el parámetro TLS_CACERT a/etc/openldap/certs/core-dirsrv.ca.pem:# When no CA certificates are specified the Shared System Certificates # are in use. In order to have these available along with the ones specified # by TLS_CACERTDIR one has to include them explicitly: TLS_CACERT /etc/openldap/certs/core-dirsrv.ca.pemEn el archivo
/etc/sssd/sssd.conf, añada sus valores de entorno a los parámetrosldap_uriyldap_search_base:[domain/default] id_provider = ldap autofs_provider = ldap auth_provider = ldap chpass_provider = ldap ldap_uri = ldap://ldap-server.example.com/ ldap_search_base = dc=example,dc=com ldap_id_use_start_tls = True cache_credentials = True ldap_tls_cacertdir = /etc/openldap/certs ldap_tls_reqcert = allow [sssd] services = nss, pam, autofs domains = default [nss] homedir_substring = /home …En
/etc/sssd/sssd.conf, especifique el requisito de autenticación TLS modificando los valoresldap_tls_cacertyldap_tls_reqcerten la sección[domain]:… cache_credentials = True ldap_tls_cacert = /etc/openldap/certs/core-dirsrv.ca.pem ldap_tls_reqcert = hard …Cambie los permisos del archivo
/etc/sssd/sssd.conf:# chmod 600 /etc/sssd/sssd.confReinicie y active el servicio SSSD y el demonio
oddjobd:# systemctl restart sssd oddjobd # systemctl enable sssd oddjobd(Opcional) Si su servidor LDAP utiliza los protocolos obsoletos TLS 1.0 o TLS 1.1, cambie la política criptográfica de todo el sistema en el sistema cliente al nivel LEGACY para permitir que RHEL 8 se comunique utilizando estos protocolos:
# update-crypto-policies --set LEGACYPara más detalles, consulte la sección Funcionalidad obsoleta en las Notas de la versión de RHEL 8.0.
Pasos de verificación
Compruebe que puede recuperar los datos de los usuarios de su servidor LDAP utilizando el comando
idy especificando un usuario LDAP:# id ldap_user uid=17388(ldap_user) gid=45367(sysadmins) groups=45367(sysadmins),25395(engineers),10(wheel),1202200000(admins)
El administrador del sistema puede ahora consultar a los usuarios desde LDAP utilizando el comando id. El comando devuelve un ID de usuario correcto y la pertenencia a un grupo.
Directiva no resuelta en master.adoc - include::assemblies/assembly_sssd-client-side-view.adoc[leveloffset= 1]