El daemon de servicios de seguridad del sistema (SSSD) proporciona acceso a proveedores remotos de identidad y autenticación. Los proveedores se configuran como back-end con SSSD actuando como intermediario entre los clientes locales y cualquier proveedor de back-end configurado. Los clientes locales se conectan a SSSD y luego SSSD contacta a los proveedores. Los beneficios de SSSD incluyen:
- Carga reducida :los clientes no tienen que ponerse en contacto directamente con los servidores de identificación/autenticación; necesitan comunicarse solo con SSSD.
- Autenticación sin conexión :SSSD puede, opcionalmente, mantener un caché de identidades y credenciales de usuario, lo que permite a los usuarios autenticarse sin conexión.
- Cuentas de usuario único :SSSD mantiene las credenciales de la red, lo que permite a los usuarios conectarse a los recursos de la red al autenticarse con su nombre de usuario local en su máquina local.
Instalando SSSD
Instale los siguientes paquetes SSSD:
# yum install sssd sssd-client
Para hacer que SSSD se inicie cuando se inicia el sistema, ingrese cualquiera de los siguientes:
# systemctl enable sssd # authconfig --enablesssd --update
Configuración de servicios SSSD
El archivo de configuración principal para SSSD es /etc/sssd/sssd.conf . Los servicios y dominios de SSSD se configuran en secciones separadas de este archivo, cada una de las cuales comienza con un nombre de la sección entre corchetes. Los siguientes son ejemplos:
[sssd] [nss] [pam]
[sssd] Sección
La funcionalidad SSSD la proporcionan servicios especializados que se ejecutan junto con SSSD. Estos servicios especializados son iniciados y reiniciados por un servicio especial llamado "monitor". Las opciones de supervisión y los dominios de identidad se configuran en la sección [sssd] de /etc/sssd/sssd.conf. El siguiente es un ejemplo:
[sssd] domains = LDAP services = nss, pam
La directiva de dominios puede definir múltiples dominios. Introdúzcalos en el orden en que desea que se consulten. La directiva de servicios enumera los servicios que se inician cuando sssd se inicia.
Secciones de Servicios
Cada uno de los servicios especializados que se ejecutan junto con SSSD se configura en secciones separadas en /etc/sssd/sssd.conf. Por ejemplo, la sección [nss] se usa para configurar el servicio Cambio de servicio de nombres (NSS). La sección [pam] se utiliza para configurar el servicio PAM.
1. Configuración del Servicio NSS
En el paquete sssd se incluye un módulo NSS, sssd_nss, que indica al sistema que use SSSD para recuperar la información del usuario. Esto se configura en la sección [nss] de /etc/sssd/sssd.conf. El siguiente es un ejemplo que incluye solo una lista parcial de directivas configurables:
[nss] filter_groups = root filter_users = root reconnection_retries = 3 entry_cache_timeout = 300
Las directivas filter_users y filter_groups le indican a SSSD que excluya a ciertos usuarios y grupos de la base de datos NSS. La directiva reconnection_retries especifica la cantidad de veces que se intentará volver a conectarse en caso de que se bloquee el proveedor de datos. La directiva enum_cache_timeout especifica, en segundos, cuánto tiempo sssd_nss almacena en caché las solicitudes de información sobre todos los usuarios.
2. Configuración del Servicio PAM
El paquete sssd también proporciona un módulo PAM, sssd_pam, que se configura en la sección [pam] de /etc/sssd/sssd.conf. El siguiente es un ejemplo que incluye solo una lista parcial de directivas configurables:
[pam] reconnection_retries = 3 offline_credentials_expiration = 2 offline_failed_login_attempts = 3 offline_failed_login_delay = 5
– El offline_credentials_expiration La directiva especifica, en días, cuánto tiempo permitir los inicios de sesión en caché si el proveedor de autenticación está fuera de línea.
– Los offline_failed_login_attempts La directiva especifica cuántos intentos fallidos de inicio de sesión se permiten si el proveedor de autenticación está fuera de línea.
Para actualizar la configuración de PAM para hacer referencia a todos los módulos SSSD, use el comando authconfig de la siguiente manera para habilitar SSSD para la autenticación del sistema:
# authconfig --update --enablesssd --enablesssdauth
Este comando genera automáticamente el archivo de configuración de PAM para incluir las entradas pam_sss.so necesarias.
Configuración de dominios SSSD
Los dominios SSSD son una combinación de un proveedor de identidad y un método de autenticación. SSSD funciona con proveedores de identidad LDAP (incluidos OpenLDAP, Red Hat Directory Server y Microsoft Active Directory) y puede usar autenticación LDAP nativa o autenticación Kerberos. Al configurar un dominio, define dónde se almacena la información del usuario y cómo se les permite a esos usuarios autenticarse en el sistema.
Al igual que los servicios SSSD, los dominios SSSD también se configuran en secciones separadas del archivo /etc/sssd/sssd.conf. Los servicios y los dominios se identifican en la sección [sssd]. Ejemplo:
[sssd] domains = LDAP services = nss, pam
Este ejemplo especifica un dominio LDAP. La sección de dominio de la configuración comenzaría con el siguiente encabezado:
[domain/LDAP]
La sección de configuración del dominio luego especificaría el proveedor de identidad, el proveedor de autenticación y cualquier configuración específica para acceder a la información en esos proveedores.
El siguiente es un ejemplo de una sección de dominio:
[domain/LDAP] id_provider = ldap ldap_uri = ldap://ldap.example.com ldap_search_base = dc=example,dc=com auth_provider = krb5 krb5_server = kerberos.example.com krb5_realm = EXAMPLE.COM min_id = 10000 max_id = 20000
Proveedor de identidad
id_provider especifica el back-end de identidad del proveedor de datos que se usará para este dominio. Los back-end admitidos son:
- representante :Admite un proveedor de NSS heredado
- locales :proveedor local interno de SSSD
- ldap :proveedor LDAP
– El ldap_uri proporciona una lista separada por comas de los URI (Universal Resource Identifiers) de los servidores LDAP, en orden de preferencia, a los que se conecta SSSD.
– La ldap_search_base directiva da el DN base para usar para realizar operaciones de usuario LDAP.
Proveedor de autenticación
La directiva auth_provider especifica el proveedor de autenticación utilizado para el dominio. Si no se especifica, se utiliza id_provider. Los proveedores de autenticación admitidos son:
- ldap :autenticación LDAP nativa
- krb5 :autenticación Kerberos
- representante :Transmite la autenticación a algún otro objetivo PAM
- ninguno :Deshabilita la autenticación explícitamente
– El servidor krb5 proporciona una lista separada por comas de servidores Kerberos, en orden de preferencia, a los que se conecta SSSD.
– El krb5_realm La directiva proporciona el dominio de Kerberos para usar para autenticación simple y capa de seguridad (SASL)/API de servicios de seguridad genéricos (GSS-API). Se requiere la configuración de conexiones SASL mediante GSS-API antes de que SSSD pueda usar Kerberos para conectarse al servidor LDAP.
– Las dos últimas directivas, min_id y max_id , son ejemplos de atributos globales que están disponibles para cualquier tipo de dominio. Otros atributos incluyen la configuración de caché y tiempo de espera. Estas dos directivas especifican los límites de UID y GID para el dominio. Si un dominio contiene una entrada que está fuera de estos límites, se ignora.
Inicie o reinicie el servicio sssd después de realizar cualquier cambio de configuración en los dominios o servicios:
# systemctl start sssd