Red Hat Training

A Red Hat training course is available for RHEL 8

Configurar y gestionar la gestión de identidades

Red Hat Enterprise Linux 8

Configuración, gestión y mantenimiento de la gestión de identidades en Red Hat Enterprise Linux 8

Resumen

Esta colección de documentación proporciona instrucciones sobre cómo configurar, gestionar y mantener eficazmente la Gestión de Identidades en Red Hat Enterprise Linux 8.

Hacer que el código abierto sea más inclusivo

Red Hat se compromete a sustituir el lenguaje problemático en nuestro código, documentación y propiedades web. Estamos empezando con estos cuatro términos: maestro, esclavo, lista negra y lista blanca. Debido a la enormidad de este esfuerzo, estos cambios se implementarán gradualmente a lo largo de varias versiones próximas. Para más detalles, consulte el mensaje de nuestro CTO Chris Wright.

Proporcionar comentarios sobre la documentación de Red Hat

Agradecemos su opinión sobre nuestra documentación. Por favor, díganos cómo podemos mejorarla. Para ello:

  • Para comentarios sencillos sobre pasajes concretos:

    1. Asegúrese de que está viendo la documentación en el formato Multi-page HTML. Además, asegúrese de ver el botón Feedback en la esquina superior derecha del documento.
    2. Utilice el cursor del ratón para resaltar la parte del texto que desea comentar.
    3. Haga clic en la ventana emergente Add Feedback que aparece debajo del texto resaltado.
    4. Siga las instrucciones mostradas.
  • Para enviar comentarios más complejos, cree un ticket de Bugzilla:

    1. Vaya al sitio web de Bugzilla.
    2. Como componente, utilice Documentation.
    3. Rellene el campo Description con su sugerencia de mejora. Incluya un enlace a la(s) parte(s) pertinente(s) de la documentación.
    4. Haga clic en Submit Bug.

Capítulo 1. Inicio de sesión en la Gestión de Identidades desde la línea de comandos

La gestión de identidades (IdM) utiliza el protocolo Kerberos para soportar el inicio de sesión único. El inicio de sesión único significa que el usuario introduce el nombre de usuario y la contraseña correctos una sola vez y, a continuación, accede a los servicios de IdM sin que el sistema le pida las credenciales de nuevo.

Importante

En IdM, el demonio de servicios de seguridad del sistema (SSSD) obtiene automáticamente un ticket de concesión (TGT) para un usuario después de que éste inicie correctamente la sesión en el entorno de escritorio de un equipo cliente de IdM con el correspondiente nombre de entidad de seguridad de Kerberos. Esto significa que después de iniciar la sesión, el usuario no tiene que utilizar la utilidad kinit para acceder a los recursos de IdM.

Si ha borrado la caché de credenciales de Kerberos o su TGT de Kerberos ha caducado, deberá solicitar un ticket de Kerberos manualmente para acceder a los recursos de IdM. En las siguientes secciones se presentan las operaciones básicas de usuario cuando se utiliza Kerberos en IdM.

1.1. Utilizando kinit para iniciar sesión en IdM manualmente

Este procedimiento describe el uso de la utilidad kinit para autenticarse en un entorno de gestión de identidades (IdM) de forma manual. La utilidad kinit obtiene y almacena en caché un ticket Kerberos (TGT) en nombre de un usuario IdM.

Nota

Utilice este procedimiento sólo si ha destruido su TGT inicial de Kerberos o si ha caducado. Como usuario de IdM, al iniciar la sesión en su máquina local también está iniciando automáticamente la sesión en IdM. Esto significa que, después de iniciar la sesión, no es necesario utilizar la utilidad kinit para acceder a los recursos de IdM.

Procedimiento

  1. Para conectarse a IdM

    • bajo el nombre de usuario del usuario que ha iniciado la sesión en el sistema local, utilice kinit sin especificar un nombre de usuario. Por ejemplo, si está conectado como example_user en el sistema local:

      [example_user@server ~]$ kinit
      Password for example_user@EXAMPLE.COM:
      [example_user@server ~]$

      Si el nombre de usuario del usuario local no coincide con ninguna entrada de usuario en IdM, el intento de autenticación falla:

      [example_user@server ~]$ kinit
      kinit: Client 'example_user@EXAMPLE.COM' not found in Kerberos database while getting initial credentials
    • utilizando una entidad de seguridad Kerberos que no se corresponde con su nombre de usuario local, pase el nombre de usuario requerido a la utilidad kinit. Por ejemplo, para iniciar sesión como el usuario admin:

      [example_user@server ~]$ kinit admin
      Password for admin@EXAMPLE.COM:
      [example_user@server ~]$
  2. Opcionalmente, para verificar que el inicio de sesión fue exitoso, utilice la utilidad klist para mostrar el TGT en caché. En el siguiente ejemplo, la caché contiene un ticket para la entidad de seguridad example_user, lo que significa que en este host concreto, sólo example_user puede acceder actualmente a los servicios de IdM:

    $ klist
    Ticket cache: KEYRING:persistent:0:0
    Default principal: example_user@EXAMPLE.COM
    
    Valid starting     	Expires            	Service principal
    11/10/2019 08:35:45  	11/10/2019 18:35:45  	krbtgt/EXAMPLE.COM@EXAMPLE.COM

1.2. Destrucción del ticket Kerberos activo de un usuario

Esta sección describe cómo borrar la caché de credenciales que contiene el ticket Kerberos activo del usuario.

Procedimiento

  1. Para destruir su ticket de Kerberos:

    [ejemplo_usuario@servidor ~]$ kdestroy
  2. Opcionalmente, para comprobar que el ticket de Kerberos ha sido destruido:

    [example_user@server ~]$ klist
    klist: Credentials cache keyring 'persistent:0:0' not found

1.3. Configuración de un sistema externo para la autenticación Kerberos

Esta sección describe cómo configurar un sistema externo para que los usuarios de Identity Management (IdM) puedan iniciar sesión en IdM desde el sistema externo utilizando sus credenciales de Kerberos.

Habilitar la autenticación Kerberos en sistemas externos es especialmente útil cuando su infraestructura incluye varios reinos o dominios superpuestos. También es útil si el sistema no se ha inscrito en ningún dominio de IdM a través de ipa-client-install.

Para habilitar la autenticación Kerberos en IdM desde un sistema que no es miembro del dominio IdM, defina un archivo de configuración Kerberos específico para IdM en el sistema externo.

Requisitos previos

  • El paquete krb5-workstation está instalado en el sistema externo.

    Para saber si el paquete está instalado, utilice el siguiente comando de la CLI:

    # yum list installed krb5-workstation
    Installed Packages
    krb5-workstation.x86_64    1.16.1-19.el8     @BaseOS

Procedimiento

  1. Copie el archivo /etc/krb5.conf del servidor IdM al sistema externo. Por ejemplo:

    # scp /etc/krb5.conf root@externalsystem.example.com:/etc/krb5_ipa.conf
    Aviso

    No sobrescriba el archivo krb5.conf existente en el sistema externo.

  2. En el sistema externo, configure la sesión de terminal para que utilice el archivo de configuración IdM Kerberos copiado:

    $ export KRB5_CONFIG=/etc/krb5_ipa.conf

    La variable KRB5_CONFIG sólo existe temporalmente hasta que se cierra la sesión. Para evitar esta pérdida, exporte la variable con un nombre de archivo diferente.

  3. Copie los fragmentos de configuración de Kerberos del directorio /etc/krb5.conf.d/ al sistema externo.

Los usuarios del sistema externo ya pueden utilizar la utilidad kinit para autenticarse en el servidor IdM.

Recursos adicionales

  • Para más detalles sobre Kerberos, consulte las páginas de manual krb5.conf(5), kinit(1), klist(1), y kdestroy(1).

Capítulo 2. Ver, iniciar y detener los servicios de Gestión de Identidades

Los servidores de gestión de identidades (IdM) son sistemas Red Hat Enterprise Linux que funcionan como controladores de dominio (DC). Una serie de servicios diferentes se ejecutan en los servidores IdM, sobre todo el servidor de directorio, la autoridad de certificación (CA), DNS y Kerberos.

2.1. Los servicios de IdM

2.1.1. Lista de servicios alojados en servidores IdM

La mayoría de los siguientes servicios no son estrictamente necesarios para ser instalados en el servidor de IdM. Por ejemplo, puede instalar servicios como una autoridad de certificados (CA) o un servidor DNS en un servidor externo fuera del dominio de IdM.

Kerberos
los servicios krb5kdc y kadmin

IdM utiliza el protocolo Kerberos para soportar el inicio de sesión único. Con Kerberos, los usuarios sólo tienen que presentar el nombre de usuario y la contraseña correctos una vez y pueden acceder a los servicios de IdM sin que el sistema les pida las credenciales de nuevo.

Kerberos se divide en dos partes:

  • El servicio krb5kdc es el servicio de autenticación Kerberos y el demonio del Centro de Distribución de Claves (KDC).
  • El servicio kadmin es el programa de administración de la base de datos Kerberos.

Para obtener información sobre cómo autenticarse mediante Kerberos en IdM, consulte Inicio de sesión en Identity Management desde la línea de comandos e Inicio de sesión en IdM en la interfaz web: Uso de un ticket de Kerberos .

Servidor de directorio LDAP
el servicio dirsrv

La instancia de IdM LDAP directory server almacena toda la información de IdM, como la información relacionada con Kerberos, cuentas de usuario, entradas de host, servicios, políticas, DNS y otros. La instancia del servidor de directorio LDAP se basa en la misma tecnología que Red Hat Directory Server. Sin embargo, está ajustada a las tareas específicas de IdM.

Autoridad de certificación
el servicio pki-tomcatd

El certificate authority (CA) integrado se basa en la misma tecnología que Red Hat Certificate System. pki es la interfaz de línea de comandos para acceder a los servicios de Certificate System.

También puede instalar el servidor sin la CA integrada si crea y proporciona todos los certificados necesarios de forma independiente.

Para más información, consulte Planificación de sus servicios de CA.

Sistema de nombres de dominio (DNS)
el servicio named

IdM utiliza DNS para el descubrimiento dinámico de servicios. La utilidad de instalación del cliente IdM puede utilizar la información del DNS para configurar automáticamente la máquina cliente. Una vez que el cliente está inscrito en el dominio IdM, utiliza el DNS para localizar los servidores y servicios IdM dentro del dominio. La implementación BIND (Berkeley Internet Name Domain) de los protocolos DNS (Domain Name System) en Red Hat Enterprise Linux incluye el servidor DNS named. named-pkcs11 es una versión del servidor DNS BIND construida con soporte nativo para el estándar criptográfico PKCS#11.

Para más información, consulte Planificación de los servicios DNS y los nombres de host.

Servidor HTTP Apache
el servicio httpd

Apache HTTP web server proporciona la interfaz web de IdM y también gestiona la comunicación entre la autoridad de certificación y otros servicios de IdM.

Samba / Winbind
smb y winbind servicios

Samba implementa el protocolo Server Message Block (SMB), también conocido como el protocolo Common Internet File System (CIFS), en Red Hat Enterprise Linux. A través del servicio smb, el protocolo SMB le permite acceder a los recursos de un servidor, tales como archivos compartidos e impresoras compartidas. Si ha configurado una confianza con un entorno de Directorio Activo (AD), el servicio `Winbind` gestiona la comunicación entre los servidores IdM y los servidores AD.

Autenticación por contraseña única (OTP)
los servicios de ipa-otpd

Las contraseñas de un solo uso (OTP) son contraseñas generadas por un token de autenticación para una sola sesión, como parte de la autenticación de dos factores. La autenticación OTP se implementa en Red Hat Enterprise Linux a través del servicio ipa-otpd.

Para obtener más información, consulte Inicio de sesión en la interfaz web de gestión de identidades mediante contraseñas de un solo uso.

OpenDNSSEC
el servicio ipa-dnskeysyncd

OpenDNSSEC es un gestor de DNS que automatiza el proceso de seguimiento de las claves de las extensiones de seguridad de DNS (DNSSEC) y la firma de las zonas. El servicio ipa-dnskeysyncd gestiona la sincronización entre el servidor de directorio IdM y OpenDNSSEC.

The Identity Management Server: Unifying Services

2.1.2. Lista de servicios alojados por los clientes de IdM

  • System Security Services Daemon: el servicio sssd

El System Security Services Daemon (SSSD) es la aplicación del lado del cliente que gestiona la autenticación del usuario y el almacenamiento en caché de las credenciales. El almacenamiento en caché permite al sistema local continuar con las operaciones normales de autenticación si el servidor de IdM no está disponible o si el cliente se desconecta.

Para más información, vea Cómo entender el SSSD y sus beneficios.

  • Certmonger: el servicio certmonger

El servicio certmonger supervisa y renueva los certificados en el cliente. Puede solicitar nuevos certificados para los servicios del sistema.

Para más información, consulte Obtención de un certificado IdM para un servicio mediante certmonger.

Interactions Between IdM Services

2.2. Ver el estado de los servicios IdM

Para ver el estado de los servicios de IdM que están configurados en su servidor de IdM, ejecute el comando ipactl status:

[root@server ~]# ipactl status
Directory Service: RUNNING
krb5kdc Service: RUNNING
kadmin Service: RUNNING
named Service: RUNNING
httpd Service: RUNNING
pki-tomcatd Service: RUNNING
smb Service: RUNNING
winbind Service: RUNNING
ipa-otpd Service: RUNNING
ipa-dnskeysyncd Service: RUNNING
ipa: INFO: The ipactl command was successful

La salida del comando ipactl status en su servidor depende de su configuración de IdM. Por ejemplo, si una implementación de IdM no incluye un servidor DNS, el servicio named no está presente en la lista.

Nota

No se puede utilizar la interfaz web de IdM para ver el estado de todos los servicios de IdM que se ejecutan en un servidor de IdM concreto. Los servicios kerberizados que se ejecutan en diferentes servidores se pueden ver en la pestaña IdentityServices de la interfaz web de IdM.

Puede iniciar o detener todo el servidor, o sólo un servicio individual.

Para iniciar, detener o reiniciar todo el servidor IdM, consulte:

Para iniciar, detener o reiniciar un servicio IdM individual, consulte:

Para visualizar la versión del software IdM, véase:

2.3. Iniciar y detener el servidor de Gestión de Identidades completo: la utilidad ipactl

Utilice la utilidad ipactl para detener, iniciar o reiniciar todo el servidor IdM junto con todos los servicios instalados. El uso de la utilidad ipactl garantiza que todos los servicios se detengan, inicien o reinicien en el orden adecuado. No es necesario tener un ticket Kerberos válido para ejecutar los comandos de ipactl.

ipactl comandos

Para iniciar todo el servidor IdM:

# ipactl start

Para detener todo el servidor IdM:

# ipactl stop

Para reiniciar todo el servidor IdM:

# ipactl restart

Para mostrar el estado de todos los servicios que componen el IdM:

# ipactl status
Importante

No se puede utilizar la interfaz web de IdM para realizar los comandos de ipactl.

2.4. Iniciar y detener un servicio de gestión de identidades individual: la utilidad systemctl

Por lo general, no se recomienda modificar manualmente los archivos de configuración de IdM. Sin embargo, ciertas situaciones requieren que un administrador realice una configuración manual de servicios específicos. En tales situaciones, utilice la utilidad systemctl para detener, iniciar o reiniciar un servicio IdM individual.

Por ejemplo, utilice systemctl después de personalizar el comportamiento del servidor de directorio, sin modificar los demás servicios de IdM:

# systemctl restart dirsrv@REALM-NAME.service

Además, al desplegar inicialmente un fideicomiso IdM con Active Directory, modifique el archivo /etc/sssd/sssd.conf, añadiendo:

  • parámetros específicos para ajustar las opciones de configuración del tiempo de espera en un entorno en el que los servidores remotos tienen una alta latencia
  • parámetros específicos para ajustar la afinidad de sitios de Active Directory
  • anulaciones para ciertas opciones de configuración que no son proporcionadas por la configuración global de IdM

Para aplicar los cambios realizados en el archivo /etc/sssd/sssd.conf:

# systemctl restart sssd.service

La ejecución de systemctl restart sssd.service es necesaria porque el demonio de servicios de seguridad del sistema (SSSD) no relee ni aplica automáticamente su configuración.

Tenga en cuenta que para los cambios que afectan a los rangos de identidad de IdM, se recomienda reiniciar el servidor por completo.

Importante

Para reiniciar varios servicios de dominio IdM, utilice siempre ipactl. Debido a las dependencias entre los servicios instalados con el servidor IdM, el orden en que se inician y se detienen es fundamental. La utilidad ipactl garantiza que los servicios se inicien y detengan en el orden adecuado.

Comandos útiles de systemctl

Para iniciar un servicio IdM concreto:

# systemctl start name.service

Para detener un servicio IdM concreto:

# systemctl stop name.service

Para reiniciar un servicio IdM concreto:

# systemctl restart name.service

Para ver el estado de un servicio IdM concreto:

# systemctl status name.service
Importante

No puede utilizar la interfaz web de IdM para iniciar o detener los servicios individuales que se ejecutan en los servidores de IdM. Sólo puede utilizar la interfaz web para modificar la configuración de un servicio Kerberizado navegando a IdentityServices y seleccionando el servicio.

2.5. Métodos para mostrar la versión del software IdM

Puedes mostrar el número de versión de IdM con:

  • la IdM WebUI
  • ipa comandos
  • rpm comandos

Visualización de la versión a través de la WebUI

En la IdM WebUI, la versión del software se puede mostrar eligiendo About en el menú de nombre de usuario en la parte superior derecha.

Checking IdM Software Version
Visualización de la versión con los comandos ipa

Desde la línea de comandos, utilice el comando ipa --version.

[root@server ~]# ipa --version
VERSION: 4.8.0, API_VERSION: 2.233
Visualización de la versión con los comandos rpm

Si los servicios de IdM no funcionan correctamente, puede utilizar la utilidad rpm para determinar el número de versión del paquete ipa-server que está instalado actualmente.

[root@server ~]# rpm -q ipa-server
ipa-server-4.8.0-11.module+el8.1.0+4247+9f3fd721.x86_64

Capítulo 3. Introducción a las utilidades de la línea de comandos de IdM

En las siguientes secciones se describen los aspectos básicos del uso de las utilidades de la línea de comandos de Gestión de Identidades (IdM).

Requisitos previos

3.1. ¿Qué es la interfaz de línea de comandos IPA?

La interfaz de línea de comandos (CLI) de IPA es la interfaz de línea de comandos básica para la administración de la gestión de identidades (IdM).

Soporta una gran cantidad de subcomandos que se utilizan para gestionar el IdM, como el comando ipa user-add para añadir un nuevo usuario.

IPA CLI le permite:

  • Añadir, gestionar o eliminar usuarios, grupos, hosts y otros objetos de la red.
  • Gestionar los certificados.
  • Entradas de búsqueda.
  • Mostrar y listar objetos.
  • Establezca los derechos de acceso.
  • Obtenga ayuda con la sintaxis correcta del comando.

3.2. Qué es la ayuda del IPA

La ayuda de IPA es un sistema de documentación integrado para el servidor IdM.

La interfaz de línea de comandos (CLI) de IPA genera los temas de ayuda disponibles de los módulos plugin de IdM cargados. Si quieres ejecutar la ayuda de IPA con éxito, necesitas:

  • Tener un servidor IdM instalado y en funcionamiento.
  • Estar autenticado con un ticket Kerberos válido.

Al ejecutar el comando ipa help sin opciones, se muestra información sobre el uso básico de la ayuda y los ejemplos de comandos más comunes.

La ejecución de help con opciones tiene la siguiente sintaxis:

$ ipa help [TOPIC | COMMAND | topics | commands]
  • []- Los corchetes significan que todos los parámetros son opcionales y que puedes escribir sólo ipa help y el comando se ejecutará.
  • |- El carácter pipa significa or. Por lo tanto, puede utilizar TOPIC o COMMAND o temas o comandos con el comando básico ipa help.
  • topics- Puede ejecutar el comando ipa help topics y se ejecutará correctamente. El comando muestra una lista de temas que están cubiertos por la ayuda de IPA, por ejemplo, user, cert, server y muchos otros.
  • TOPIC- El TOPIC con mayúsculas significa variable, por lo tanto, puede utilizar el tema particular, por ejemplo, ipa help user
  • commands- Puede ejecutar el comando ipa help commands y se ejecutará correctamente. El comando muestra una lista de comandos que están cubiertos por la ayuda de IPA, por ejemplo, user-add, ca-enable, server-show y muchos otros.
  • COMMAND- El COMMAND con mayúsculas significa variable, por lo tanto, puede utilizar el comando particular, por ejemplo, ipa help user-add

3.3. Uso de los temas de ayuda de IPA

El siguiente procedimiento le ayudará a entender el uso de la ayuda de IPA en la interfaz de línea de comandos.

Procedimiento

  1. Abra el terminal y conéctese al servidor IdM.
  2. Introduzca ipa help topics para mostrar una lista de temas cubiertos por la ayuda.

    $ ipa help topics
  3. Seleccione uno de los temas y cree un comando de acuerdo con el siguiente patrón: ipa help [topic_name], en lugar de la cadena topic_name, añada uno de los temas que enumeró en el paso anterior.

    En el ejemplo, utilizamos el siguiente tema user

    $ ipa help user
  4. Si el comando de ayuda IPA es demasiado largo y no puede ver todo el texto, utilice la siguiente sintaxis:

    $ ipa help user | less

    A continuación, puede desplazarse hacia abajo y leer toda la ayuda.

La CLI de IPA muestra una página de ayuda para el tema user. Después de leer el resumen, puede ver muchos ejemplos con patrones para trabajar con los comandos del tema.

3.4. Uso de los comandos de ayuda de IPA

El siguiente procedimiento le ayudará a entender la creación de los comandos de ayuda de IPA en la interfaz de línea de comandos.

Procedimiento

  1. Abra el terminal y conéctese al servidor IdM.
  2. Introduzca ipa help commands para mostrar una lista de comandos cubiertos por la ayuda.

    $ ipa help commands
  3. Seleccione uno de los comandos y cree un comando de ayuda según el siguiente patrón: ipa help <COMMAND>, en lugar de la cadena <COMMAND>, añada uno de los comandos que enumeró en el paso anterior.

    $ ipa help user-add

Recursos adicionales

  • Para más detalles, consulte la página man ipa.

3.5. Estructura de los comandos IPA

La CLI de IPA distingue los siguientes tipos de comandos:

  • Comandos incorporados: los comandos incorporados están disponibles en el servidor IdM.
  • Comandos proporcionados por el plug-in

La estructura de los comandos IPA permite gestionar varios tipos de objetos. Por ejemplo:

  • Usuarios,
  • Anfitriones,
  • Registros DNS,
  • Certificados,

y muchos otros.

Para la mayoría de estos objetos, la CLI de IPA incluye comandos para:

  • Añadir (add)
  • Modificar (mod)
  • Borrar (del)
  • Buscar (find)
  • Pantalla (show)

Los comandos tienen la siguiente estructura:

ipa user-add, ipa user-mod, ipa user-del, ipa user-find, ipa user-show

ipa host-add, ipa host-mod, ipa host-del, ipa host-find, ipa host-show

ipa dnsrecord-add, ipa dnsrecord-mod, ipa dnsrecord-del, ipa dnsrecord-find, ipa dnrecord-show

Puede crear un usuario con el comando ipa user-add [options], donde [options] es opcional. Si utiliza sólo el comando ipa user-add, el script le pide los detalles uno por uno.

Para modificar un objeto existente, es necesario definir el objeto, por lo que el comando incluye también el objeto: ipa user-mod USER_NAME [options].

3.6. Uso de un comando IPA para añadir una cuenta de usuario a IdM

A continuación se describe la adición de un nuevo usuario a la base de datos de gestión de identidades (IdM) mediante la línea de comandos.

Requisitos previos

  • Es necesario tener privilegios de administrador para añadir cuentas de usuario al servidor IdM.

Procedimiento

  1. Abra el terminal y conéctese al servidor IdM.
  2. Introduzca el comando para añadir un nuevo usuario:

    $ ipa user-add

    El comando ejecuta un script donde se pueden añadir los datos básicos necesarios para crear una cuenta de usuario.

  3. En el campo First name:, introduzca el nombre del nuevo usuario y pulse la tecla Enter.
  4. En el campo Last name:, introduzca el apellido del nuevo usuario y pulse la tecla Enter.
  5. En User login [suggested user name]: introduzca el nombre de usuario o simplemente pulse la tecla Enter si el nombre de usuario sugerido le sirve.

    El nombre de usuario debe ser único para toda la base de datos IdM. Si se produce un error que indica que el usuario ya existe, hay que empezar desde el principio con el comando ipa user-add y probar con otro nombre de usuario.

Después de añadir con éxito el nombre de usuario, la cuenta de usuario se ha añadido a la base de datos de IdM y la interfaz de línea de comandos (CLI) de IPA imprime en la salida el siguiente registro:

----------------------
Added user "euser"
----------------------
User login: euser
First name: Example
Last name: User
Full name: Example User
Display name: Example User
Initials: EU
Home directory: /home/euser
GECOS: Example User
Login shell: /bin/sh
Principal name: euser@IDM.EXAMPLE.COM
Principal alias: euser@IDM.EXAMPLE.COM
Email address: euser@idm.example.com
UID: 427200006
GID: 427200006
Password: False
Member of groups: ipausers
Kerberos keys available: False

Como puede ver, no se ha establecido una contraseña para la cuenta de usuario. Si desea añadir también la contraseña, utilice el comando ipa user-add con la siguiente sintaxis:

$ ipa user-add --first=Example --last=User --password

La IPA CLI le pide entonces que añada o confirme un nombre de usuario y una contraseña.

Si el usuario ya ha sido creado, puede añadir sólo la contraseña con el comando `ipa user-mod`.

Recursos adicionales

Para obtener más información sobre los parámetros, introduzca el siguiente comando de ayuda en la línea de comandos:

$ ipa help user-add

3.7. Uso de un comando IPA para modificar una cuenta de usuario en IdM

Puede cambiar muchos parámetros para cada cuenta de usuario. Por ejemplo, puede añadir una nueva contraseña al usuario.

La sintaxis de los comandos básicos es diferente de la sintaxis de user-add, ya que es necesario definir la cuenta de usuario existente para la que se desea realizar cambios, por ejemplo, añadir una contraseña.

Requisitos previos

  • Es necesario tener privilegios de administrador para modificar las cuentas de usuario en el servidor IdM.

Procedimiento

  1. Abra el terminal y conéctese al servidor IdM.
  2. Introduzca el comando para añadir una contraseña:

    $ ipa user-mod euser --password

    El comando ejecuta un script en el que se puede añadir la nueva contraseña.

  3. Introduzca la nueva contraseña y pulse la tecla Enter.

Después de que usted agregó exitosamente el nombre de usuario, la cuenta de usuario ha sido agregada a la base de datos de IdM y el CLI de IPA imprime en la salida el siguiente registro:

----------------------
Modified user "euser"
----------------------
User login: euser
First name: Example
Last name: User
Home directory: /home/euser
Principal name: euser@IDM.EXAMPLE.COM
Principal alias: euser@IDM.EXAMPLE.COM
Email address: euser@idm.example.com
UID: 427200006
GID: 427200006
Password: True
Member of groups: ipausers
Kerberos keys available: True

La contraseña del usuario está ahora establecida para la cuenta y el usuario puede iniciar sesión en IdM.

Recursos adicionales

Para obtener más información sobre los parámetros, introduzca el siguiente comando de ayuda en la línea de comandos:

$ ipa help user-mod

3.8. Cómo suministrar una lista de valores a las utilidades de IdM

La gestión de identidades (IdM) almacena los valores de los atributos multivaluados en listas.

IdM admite los siguientes métodos de suministro de listas multivaluadas:

  • Utilizar el mismo argumento de línea de comandos varias veces dentro de la misma invocación de comandos:

    $ ipa permission-add --right=read --permissions=write --permissions=delete ...
  • Alternativamente, puede encerrar la lista entre llaves, en cuyo caso el shell realiza la expansión:

    $ ipa permission-add --right={read,write,delete} ...

Los ejemplos anteriores muestran un comando permission-add que añade permisos a un objeto. El objeto no se menciona en el ejemplo. En lugar de …​ debe añadir el objeto para el que desea añadir permisos.

Cuando se actualizan estos atributos multivaluados desde la línea de comandos, IdM sobrescribe completamente la lista anterior de valores con una nueva lista. Por lo tanto, cuando se actualiza un atributo multivaluado, se debe especificar toda la nueva lista, no sólo un único valor que se desee añadir.

En el comando anterior, la lista de permisos incluye lectura, escritura y eliminación. Cuando decida actualizar la lista con el comando permission-mod debe añadir todos los valores, de lo contrario se borrarán los que no se mencionan.

Example 1:- El comando ipa permission-mod actualiza todos los permisos añadidos previamente.

$ ipa permission-mod --right=read --right=write --right=delete ...

o

$ ipa permission-mod --right={read,write,delete} ...

Example 2- El comando ipa permission-mod borra el argumento --right=delete porque no está incluido en el comando:

$ ipa permission-mod --right=read --right=write ...

o

$ ipa permission-mod --right={read,write} ...

3.9. Cómo utilizar los caracteres especiales con las utilidades del IdM

Cuando pase argumentos de la línea de comandos que incluyan caracteres especiales a los comandos de ipa, escape estos caracteres con una barra invertida (\). Por ejemplo, los caracteres especiales más comunes son los paréntesis angulares (< y >), el ampersand (&), el asterisco (*) o la barra vertical (|).

Por ejemplo, para escapar de un asterisco (*):

$ ipa certprofile-show certificate_profile --out=exported\*profile.cfg

Los comandos que contienen caracteres especiales sin esconder no funcionan como se espera porque el shell no puede analizar correctamente dichos caracteres.

Capítulo 4. Búsqueda de entradas de Gestión de Identidades desde la línea de comandos

Las siguientes secciones describen cómo utilizar los comandos IPA, que le ayudan a encontrar o mostrar objetos.

4.1. Resumen de la lista de entradas de IdM

En esta sección se describen los comandos de ipa *-find, que pueden ayudarle a buscar un tipo concreto de entradas de IdM.

Para listar todos los comandos de find, utilice el siguiente comando de ayuda ipa:

$ ipa help commands | grep find

Es posible que tenga que comprobar si un usuario concreto está incluido en la base de datos de IdM. Para ello, puede listar todos los usuarios con el siguiente comando:

$ ipa user-find

Para listar los grupos de usuarios cuyos atributos especificados contienen una palabra clave:

$ ipa group-find keyword

Por ejemplo, el comando ipa group-find admin lista todos los grupos cuyos nombres o descripciones incluyen la cadena admin:

----------------
3 groups matched
----------------
   Group name: admins
   Description: Account administrators group
   GID: 427200002

   Group name: editors
   Description: Limited admins who can edit other users
   GID: 427200002

   Group name: trust admins
   Description: Trusts administrators group

Al buscar grupos de usuarios, también puede limitar los resultados de la búsqueda a los grupos que contengan un usuario concreto:

$ ipa group-find --user=user_name

Para buscar grupos que no contengan un determinado usuario:

$ ipa group-find --no-user=user_name

4.2. Mostrar detalles de una entrada en particular

Utilice el comando ipa *-show para mostrar los detalles de una entrada IdM concreta.

Procedimiento

  • Para mostrar detalles sobre un host llamado server.example.com:

    $ ipa host-show server.example.com
    
    Host name: server.example.com
    Principal name: host/server.example.com@EXAMPLE.COM
    ...

4.3. Ajustar el tamaño de la búsqueda y el límite de tiempo

Algunas consultas, como la solicitud de una lista de usuarios de IdM, pueden devolver un número muy elevado de entradas. Si se ajustan estas operaciones de búsqueda, se puede mejorar el rendimiento general del servidor al ejecutar los comandos de ipa *-find, como ipa user-find, y al mostrar las listas correspondientes en la interfaz web.

Límite de tamaño de la búsqueda

Define el número máximo de entradas devueltas para una solicitud enviada al servidor desde la CLI de un cliente o desde un navegador que accede a la interfaz web de IdM.

Por defecto: 100 entradas.

Límite de tiempo de búsqueda

Define el tiempo máximo (en segundos) que el servidor espera para realizar las búsquedas. Una vez que la búsqueda alcanza este límite, el servidor detiene la búsqueda y devuelve las entradas descubiertas en ese tiempo.

Por defecto: 2 segundos.

Si estableces los valores en -1, IdM no aplicará ningún límite al buscar.

Importante

Establecer límites de tamaño o tiempo de búsqueda demasiado altos puede afectar negativamente al rendimiento del servidor.

4.3.1. Ajustar el tamaño de la búsqueda y el límite de tiempo en la línea de comandos

El siguiente texto describe el ajuste de los límites de tamaño y tiempo de búsqueda en la línea de comandos:

  • A nivel mundial
  • Para una entrada específica

Procedimiento

  1. Para mostrar el tiempo de búsqueda actual y los límites de tamaño en la CLI, utilice el comando ipa config-show:

    $ ipa config-show
    
    Search time limit: 2
    Search size limit: 100
  2. Para ajustar los límites globalmente para todas las consultas, utilice el comando ipa config-mod y añada las opciones --searchrecordslimit y --searchtimelimit. Por ejemplo:

    $ ipa config-mod --searchrecordslimit=500 --searchtimelimit=5
  3. Para ajustar los límites sólo para una consulta específica, añada las opciones --sizelimit o --timelimit al comando. Por ejemplo:
$ ipa user-find --sizelimit=200 --timelimit=120

4.3.2. Ajustar el tamaño y el límite de tiempo de la búsqueda en la interfaz web

El siguiente texto describe el ajuste de los límites de tamaño y tiempo de la búsqueda en la interfaz web de IdM:

  • A nivel mundial
  • Para una entrada específica

Procedimiento

Para ajustar los límites globalmente para todas las consultas:

  1. Inicie sesión en la interfaz web de IdM.
  2. Haga clic en IPA Server.

    web ui ipaserver

  3. En la pestaña IPA Server, haga clic en Configuration.
  4. Establezca los valores necesarios en el área Search Options.

    Los valores por defecto son:

    • Límite de tamaño de la búsqueda: 100 entradas
    • Límite de tiempo de búsqueda: 2 segundos
  5. Haga clic en Save en la parte superior de la página.

    límites de búsqueda en la web ui

Después de guardar los valores, busque una entrada y verifique el resultado.

Capítulo 5. Acceso a la interfaz web de IdM en un navegador web

Las siguientes secciones ofrecen una visión general de la interfaz web de IdM (Gestión de identidades) y describen cómo acceder a ella.

5.1. ¿Qué es la interfaz web de IdM?

La interfaz web de IdM (Identity Management) es una aplicación web para la administración de IdM, una alternativa gráfica a las herramientas de línea de comandos de IdM.

Puedes acceder a la interfaz web de IdM como:

  • IdM users: Un conjunto limitado de operaciones en función de los permisos concedidos al usuario en el servidor IdM. Básicamente, los usuarios activos de IdM pueden iniciar sesión en el servidor IdM y configurar su propia cuenta. No pueden cambiar la configuración de otros usuarios ni la del servidor IdM.
  • Administrators: Derechos de acceso total al servidor IdM.
  • Active Directory users: Un conjunto de operaciones en función de los permisos concedidos al usuario. Los usuarios de Active Directory ya pueden ser administradores de la Gestión de Identidades. Para obtener más detalles, consulte Habilitación de los usuarios de AD para administrar IdM.

5.2. Navegadores web compatibles con el acceso a la interfaz web

IdM (Identity Management) admite los siguientes navegadores para conectarse a la interfaz web:

  • Mozilla Firefox 38 y posteriores
  • Google Chrome 46 y posteriores

5.3. Acceso a la interfaz web

El siguiente procedimiento describe el primer inicio de sesión en la interfaz web de IdM (Identity Management) con una contraseña.

Después del primer inicio de sesión, puedes configurar tu servidor IdM para autenticarte con él:

Procedimiento

  1. Escriba una URL del servidor IdM en la barra de direcciones del navegador. El nombre será similar al siguiente ejemplo:

    https://server.example.com

    Sólo tienes que cambiar server.example.com con un nombre DNS de tu servidor IdM.

    Esto abre la pantalla de inicio de sesión de IdM Web UI en su navegador.

    pantalla de acceso a la web ui

    • Si el servidor no responde o la pantalla de inicio de sesión no se abre, comprueba la configuración de DNS del servidor IdM al que te estás conectando.
    • Si utiliza un certificado autofirmado, el navegador emite una advertencia. Compruebe el certificado y acepte la excepción de seguridad para proceder al inicio de sesión.

      Para evitar excepciones de seguridad, instale un certificado firmado por una autoridad de certificación.

  2. En la pantalla de inicio de sesión de la interfaz web, introduzca las credenciales de la cuenta de administrador que añadió durante la instalación del servidor IdM.

    Para más detalles, consulte Instalación de un servidor de gestión de identidades: Con DNS integrado, con una CA integrada.

    También puede introducir las credenciales de su cuenta personal si ya están introducidas en el servidor IdM.

    web ui login passwd

  3. Haga clic en Iniciar sesión.

Después de iniciar la sesión con éxito, puede empezar a configurar el servidor IdM.

usuarios de la web ui

Capítulo 6. Inicio de sesión en IdM en la interfaz web: Uso de un ticket Kerberos

Las siguientes secciones describen la configuración inicial de su entorno para permitir el inicio de sesión de Kerberos en la interfaz web de IdM y el acceso a IdM mediante la autenticación de Kerberos.

Requisitos previos

6.1. Autenticación Kerberos en la gestión de identidades

La Gestión de Identidades (IdM) utiliza el protocolo Kerberos para soportar el inicio de sesión único. La autenticación de inicio de sesión único le permite proporcionar el nombre de usuario y la contraseña correctos una sola vez, y luego puede acceder a los servicios de gestión de identidades sin que el sistema le pida las credenciales de nuevo.

El servidor de IdM proporciona la autenticación Kerberos inmediatamente después de la instalación si los ajustes de DNS y de certificado se han configurado correctamente. Para obtener más detalles, consulte Instalación de Identity Management.

Para utilizar la autenticación Kerberos en los hosts, instale:

6.2. Utilizando kinit para iniciar sesión en IdM manualmente

Este procedimiento describe el uso de la utilidad kinit para autenticarse en un entorno de gestión de identidades (IdM) de forma manual. La utilidad kinit obtiene y almacena en caché un ticket Kerberos (TGT) en nombre de un usuario IdM.

Nota

Utilice este procedimiento sólo si ha destruido su TGT inicial de Kerberos o si ha caducado. Como usuario de IdM, al iniciar la sesión en su máquina local también está iniciando automáticamente la sesión en IdM. Esto significa que, después de iniciar la sesión, no es necesario utilizar la utilidad kinit para acceder a los recursos de IdM.

Procedimiento

  1. Para conectarse a IdM

    • bajo el nombre de usuario del usuario que ha iniciado la sesión en el sistema local, utilice kinit sin especificar un nombre de usuario. Por ejemplo, si está conectado como example_user en el sistema local:

      [example_user@server ~]$ kinit
      Password for example_user@EXAMPLE.COM:
      [example_user@server ~]$

      Si el nombre de usuario del usuario local no coincide con ninguna entrada de usuario en IdM, el intento de autenticación falla:

      [example_user@server ~]$ kinit
      kinit: Client 'example_user@EXAMPLE.COM' not found in Kerberos database while getting initial credentials
    • utilizando una entidad de seguridad Kerberos que no se corresponde con su nombre de usuario local, pase el nombre de usuario requerido a la utilidad kinit. Por ejemplo, para iniciar sesión como el usuario admin:

      [example_user@server ~]$ kinit admin
      Password for admin@EXAMPLE.COM:
      [example_user@server ~]$
  2. Opcionalmente, para verificar que el inicio de sesión fue exitoso, utilice la utilidad klist para mostrar el TGT en caché. En el siguiente ejemplo, la caché contiene un ticket para la entidad de seguridad example_user, lo que significa que en este host concreto, sólo example_user puede acceder actualmente a los servicios de IdM:

    $ klist
    Ticket cache: KEYRING:persistent:0:0
    Default principal: example_user@EXAMPLE.COM
    
    Valid starting     	Expires            	Service principal
    11/10/2019 08:35:45  	11/10/2019 18:35:45  	krbtgt/EXAMPLE.COM@EXAMPLE.COM

6.3. Configurar el navegador para la autenticación Kerberos

Para habilitar la autenticación con un ticket Kerberos, es posible que necesite una configuración del navegador.

Los siguientes pasos le ayudarán a soportar la negociación de Kerberos para acceder al dominio IdM.

Cada navegador soporta Kerberos de forma diferente y necesita una configuración distinta. La interfaz web de IdM incluye directrices para los siguientes navegadores:

  • Firefox
  • Cromo

Procedimiento

  1. Abra el cuadro de diálogo de inicio de sesión de IdM Web UI en su navegador web.
  2. Haga clic en el enlace para la configuración del navegador en la pantalla de inicio de sesión de la interfaz web.

    enlace de configuración del navegador ipa

  3. Siga los pasos de la página de configuración.

    página de configuración del navegador ipa

Después de la configuración, vuelva a la interfaz web de IdM y haga clic en Log in.

6.4. Inicio de sesión en la interfaz web mediante un ticket Kerberos

Este procedimiento describe el inicio de sesión en la interfaz web de IdM mediante un ticket de concesión de tickets (TGT) de Kerberos.

El TGT caduca a una hora predefinida. El intervalo de tiempo predeterminado es de 24 horas y se puede cambiar en la interfaz web de IdM.

Una vez transcurrido el intervalo de tiempo, deberá renovar el billete:

  • Utilizando el comando kinit.
  • Uso de las credenciales de inicio de sesión de IdM en el diálogo de inicio de sesión de la interfaz web.

Procedimiento

  • Abra la interfaz web de IdM.

    Si la autenticación Kerberos funciona correctamente y tiene un ticket válido, se autenticará automáticamente y se abrirá la interfaz web.

    Si el ticket está caducado, es necesario autenticarse primero con las credenciales. Sin embargo, la próxima vez la interfaz web de IdM se abrirá automáticamente sin abrir el diálogo de inicio de sesión.

    Si ve un mensaje de error Authentication with Kerberos failed, verifique que su navegador está configurado para la autenticación Kerberos. Consulte Sección 6.3, “Configurar el navegador para la autenticación Kerberos”.

    firefox kerb auth failed

6.5. Configuración de un sistema externo para la autenticación Kerberos

Esta sección describe cómo configurar un sistema externo para que los usuarios de Identity Management (IdM) puedan iniciar sesión en IdM desde el sistema externo utilizando sus credenciales de Kerberos.

Habilitar la autenticación Kerberos en sistemas externos es especialmente útil cuando su infraestructura incluye varios reinos o dominios superpuestos. También es útil si el sistema no se ha inscrito en ningún dominio de IdM a través de ipa-client-install.

Para habilitar la autenticación Kerberos en IdM desde un sistema que no es miembro del dominio IdM, defina un archivo de configuración Kerberos específico para IdM en el sistema externo.

Requisitos previos

  • El paquete krb5-workstation está instalado en el sistema externo.

    Para saber si el paquete está instalado, utilice el siguiente comando de la CLI:

    # yum list installed krb5-workstation
    Installed Packages
    krb5-workstation.x86_64    1.16.1-19.el8     @BaseOS

Procedimiento

  1. Copie el archivo /etc/krb5.conf del servidor IdM al sistema externo. Por ejemplo:

    # scp /etc/krb5.conf root@externalsystem.example.com:/etc/krb5_ipa.conf
    Aviso

    No sobrescriba el archivo krb5.conf existente en el sistema externo.

  2. En el sistema externo, configure la sesión de terminal para que utilice el archivo de configuración IdM Kerberos copiado:

    $ export KRB5_CONFIG=/etc/krb5_ipa.conf

    La variable KRB5_CONFIG sólo existe temporalmente hasta que se cierra la sesión. Para evitar esta pérdida, exporte la variable con un nombre de archivo diferente.

  3. Copie los fragmentos de configuración de Kerberos del directorio /etc/krb5.conf.d/ al sistema externo.
  4. Configure el navegador en el sistema externo, como se describe en Sección 6.3, “Configurar el navegador para la autenticación Kerberos”.

Los usuarios del sistema externo ya pueden utilizar la utilidad kinit para autenticarse en el servidor IdM.

6.6. Inicio de sesión en la interfaz web para usuarios de Active Directory

Para habilitar el inicio de sesión de la interfaz web para los usuarios de Active Directory, defina una anulación de ID para cada usuario de Active Directory en la vista de confianza predeterminada. Por ejemplo:

[admin@server ~]$ ipa idoverrideuser-add 'Default Trust View' ad_user@ad.example.com

Capítulo 7. Inicio de sesión en la interfaz web de gestión de identidades mediante contraseñas de un solo uso

El acceso a la interfaz web de IdM puede asegurarse mediante varios métodos. El básico es la autenticación por contraseña.

Para aumentar la seguridad de la autenticación con contraseña, se puede añadir un segundo paso y exigir contraseñas de un solo uso (OTP) generadas automáticamente. El uso más común es combinar la contraseña conectada con la cuenta de usuario y una contraseña de un solo uso limitada en el tiempo y generada por un token de hardware o software.

Las siguientes secciones le ayudarán a:

  • Entender cómo funciona la autenticación OTP en IdM.
  • Configure la autenticación OTP en el servidor IdM.
  • Crea tokens OTP y sincronízalos con la aplicación FreeOTP en tu teléfono.
  • Autenticarse en la interfaz web de IdM con la combinación de la contraseña de usuario y la contraseña de un solo uso.
  • Vuelva a sincronizar los tokens en la interfaz web.

7.1. Requisitos previos

7.2. Autenticación por contraseña de un solo uso (OTP) en la gestión de identidades

Las contraseñas de un solo uso aportan un paso adicional a la seguridad de su autenticación. La autenticación utiliza su contraseña una contraseña de un solo uso generada automáticamente.

Para generar contraseñas de un solo uso, se puede utilizar un token de hardware o de software. IdM admite tanto tokens de software como de hardware.

La gestión de identidades admite los siguientes dos mecanismos estándar de OTP:

  • El algoritmo HMAC-Based One-Time Password (HOTP) se basa en un contador. HMAC son las siglas de Hashed Message Authentication Code.
  • El algoritmo Time-Based One-Time Password (TOTP) es una extensión de HOTP para soportar el factor móvil basado en el tiempo.
Importante

IdM no admite inicios de sesión OTP para usuarios de confianza de Active Directory.

7.3. Activación de la contraseña única en la interfaz web

La interfaz web de IdM permite configurar el dispositivo de hardware o software para generar contraseñas de un solo uso.

La contraseña única se introduce justo después de la contraseña habitual en el campo dedicado en el diálogo de inicio de sesión.

Sólo los administradores pueden habilitar la autenticación OTP en la configuración del usuario.

Requisitos previos

  • Privilegios de la administración

Procedimiento

  1. Inicie sesión en la interfaz web de IdM con su nombre de usuario y contraseña.
  2. Abra la pestaña Identity → Users → Active users.

    usuarios de la web ui

  3. Haga clic en su nombre de usuario para abrir la configuración del mismo.
  4. En la página User authentication types, seleccione Two factor authentication (password OTP).
  5. Haga clic en Save.

En este punto, la autenticación OTP está habilitada en el servidor IdM.

Ahora usted o los propios usuarios deben asignar un nuevo ID de token a la cuenta de usuario.

7.4. Añadir tokens OTP en la interfaz web

La siguiente sección le ayuda a añadir tokens a la interfaz web de IdM y a su generador de tokens de software.

Requisitos previos

  • Cuenta de usuario activa en el servidor IdM.
  • El administrador ha habilitado la OTP para la cuenta de usuario concreta en la interfaz web de IdM.
  • Un dispositivo de software que genera tokens OTP, por ejemplo FreeOTP.

Procedimiento

  1. Inicie sesión en la interfaz web de IdM con su nombre de usuario y contraseña.
  2. Para crear el token en su teléfono móvil, abra la pestaña Authentication → OTP Tokens.
  3. Haga clic en Add.

    ficha de tokens de la web ui

  4. En el cuadro de diálogo Add OTP token, deje todo sin rellenar y haga clic en Add.

    En esta etapa, el servidor de IdM crea un token con parámetros predeterminados en el servidor y abre una página con un código QR.

  5. Copie el código QR en su teléfono móvil.
  6. Haga clic en OK para cerrar el código QR.

Ahora puedes generar contraseñas de un solo uso e iniciar sesión con ellas en la interfaz web de IdM.

token freeotp

7.5. Acceder a la interfaz web con una contraseña única

Este procedimiento describe el primer inicio de sesión en la interfaz web de IdM utilizando una contraseña de un solo uso (OTP).

Requisitos previos

  • Configuración de OTP habilitada en el servidor de gestión de identidades para la cuenta de usuario que está utilizando para la autenticación OTP. Tanto los administradores como los propios usuarios pueden habilitar la OTP.

    Para activar la configuración OTP, véase Sección 7.3, “Activación de la contraseña única en la interfaz web”

  • Un dispositivo de hardware o software que genera tokens OTP configurados.

Procedimiento

  1. En la pantalla de inicio de sesión de Gestión de identidades, introduzca su nombre de usuario o un nombre de usuario de la cuenta de administrador del servidor IdM.
  2. Añada la contraseña para el nombre de usuario introducido anteriormente.
  3. Genere una contraseña única en su dispositivo.
  4. Introduzca la contraseña única justo después de la contraseña (sin espacio).
  5. Haga clic en Log in.

    Si la autenticación falla, sincronice los tokens OTP.

    Si su CA utiliza un certificado autofirmado, el navegador emite una advertencia. Compruebe el certificado y acepte la excepción de seguridad para proceder al inicio de sesión.

    Si la interfaz web de IdM no se abre, verifique la configuración de DNS de su servidor de gestión de identidades.

Una vez iniciada la sesión con éxito, aparece la interfaz web de IdM.

usuarios de la web ui

7.6. Sincronización de tokens OTP mediante la interfaz web

Si el inicio de sesión con OTP (One Time Password) falla, los tokens OTP no se sincronizan correctamente.

El siguiente texto describe la resincronización de fichas.

Requisitos previos

  • Se abrió una pantalla de inicio de sesión.
  • Un dispositivo generador de tokens OTP configurado.

Procedimiento

  1. En la pantalla de inicio de sesión de IdM Web UI, haga clic en Sync OTP Token.

    web ui login otp link

  2. En la pantalla de inicio de sesión, introduzca su nombre de usuario y la contraseña de Gestión de Identidades.
  3. Genere una contraseña única e introdúzcala en el campo First OTP.
  4. Genere otra contraseña única e introdúzcala en el campo Second OTP.
  5. Opcionalmente, introduzca el ID del token.

    web ui login otp configuración

  6. Haga clic en Sync OTP Token.

Una vez realizada la sincronización con éxito, puede iniciar sesión en el servidor IdM.

7.7. Cambiar las contraseñas caducadas

Los administradores de la Gestión de Identidades pueden obligarle a cambiar su contraseña en el siguiente inicio de sesión. Esto significa que no podrá iniciar sesión con éxito en la interfaz web de IdM hasta que cambie la contraseña.

La caducidad de la contraseña puede producirse durante el primer acceso a la interfaz web.

Si aparece el diálogo de caducidad de la contraseña, siga las instrucciones del procedimiento.

Requisitos previos

  • Se abrió una pantalla de inicio de sesión.
  • Cuenta activa en el servidor IdM.

Procedimiento

  1. En la pantalla de inicio de sesión de caducidad de la contraseña, introduzca el nombre de usuario.
  2. Añada la contraseña para el nombre de usuario introducido anteriormente.
  3. En el campo OTP, genere una contraseña de un solo uso, si utiliza la autenticación de contraseña de un solo uso.

    Si no tiene activada la autenticación OTP, deje el campo vacío.

  4. Introduzca la nueva contraseña dos veces para verificarla.
  5. Haga clic en Reset Password.

    web ui passwd expiración

Después de cambiar la contraseña con éxito, aparece el diálogo de inicio de sesión habitual. Inicie la sesión con la nueva contraseña.

Capítulo 8. Configuración de los ajustes globales de IdM mediante los playbooks de Ansible

Con el módulo de Ansible config, puede recuperar y establecer parámetros de configuración global para la gestión de identidades (IdM).

Este capítulo incluye las siguientes secciones:

8.1. Recuperación de la configuración de IdM mediante un playbook de Ansible

El siguiente procedimiento describe cómo se puede utilizar un playbook de Ansible para recuperar información sobre la configuración global actual de IdM.

Requisitos previos

  • Conoce la contraseña del administrador de IdM.
  • Ha instalado el paquete ansible-freeipa en el controlador de Ansible.

Procedimiento

  1. Cree un archivo de inventario, por ejemplo inventory.file, y defina el servidor de IdM del que desea recuperar la configuración de IdM en la sección [ipaserver]. Por ejemplo, para indicar a Ansible que recupere los datos de server.idm.example.com, introduzca:

    [ipaserver]
    server.idm.example.com
  2. Abra el archivo /usr/share/doc/ansible-freeipa/playbooks/config/retrieve-config.yml Ansible playbook para editarlo:

    ---
    - name: Playbook to handle global IdM configuration
      hosts: ipaserver
      become: no
      gather_facts: no
    
      tasks:
      - name: Query IPA global configuration
        ipaconfig:
          ipaadmin_password: Secret123
        register: serverconfig
    
      - debug:
          msg: "{{ serverconfig }}"
  3. Adapte el archivo cambiando lo siguiente:

    • La contraseña del administrador de IdM.
    • Otros valores, si es necesario.
  4. Guarda el archivo.
  5. Ejecute el playbook de Ansible especificando el archivo del playbook y el archivo de inventario:

    $ ansible-playbook -v -i path_to_inventory_directory/inventory.file /usr/share/doc/ansible-freeipa/playbooks/config/retrieve-config.yml
    [...]
    TASK [debug]
    ok: [server.idm.example.com] => {
        "msg": {
            "ansible_facts": {
                "discovered_interpreter_
            },
            "changed": false,
            "config": {
                "ca_renewal_master_server": "server.idm.example.com",
                "configstring": [
                    "AllowNThash",
                    "KDC:Disable Last Success"
                ],
                "defaultgroup": "ipausers",
                "defaultshell": "/bin/bash",
                "emaildomain": "idm.example.com",
                "enable_migration": false,
                "groupsearch": [
                    "cn",
                    "description"
                ],
                "homedirectory": "/home",
                "maxhostname": "64",
                "maxusername": "64",
                "pac_type": [
                    "MS-PAC",
                    "nfs:NONE"
                ],
                "pwdexpnotify": "4",
                "searchrecordslimit": "100",
                "searchtimelimit": "2",
                "selinuxusermapdefault": "unconfined_u:s0-s0:c0.c1023",
                "selinuxusermaporder": [
                    "guest_u:s0$xguest_u:s0$user_
                ],
                "usersearch": [
                    "uid",
                    "givenname",
                    "sn",
                    "telephonenumber",
                    "ou",
                    "title"
                ]
            },
            "failed": false
        }
    }

8.2. Configuración del servidor maestro de renovación de CA de IdM mediante un libro de jugadas de Ansible

En un despliegue de gestión de identidades (IdM) que utiliza una autoridad de certificación (CA) integrada, el servidor maestro de renovación de CA mantiene y renueva los certificados del sistema IdM. Garantiza que los despliegues de IdM no se interrumpan.

Para obtener más detalles sobre la función del maestro de renovación de CA de IdM, consulte Uso del maestro de renovación de CA de IdM.

El siguiente procedimiento describe cómo puede utilizar un libro de jugadas de Ansible para configurar el servidor maestro de renovación de CA de IdM.

Requisitos previos

  • Conoce la contraseña del administrador de IdM.
  • Ha instalado el paquete ansible-freeipa en el controlador de Ansible.

Procedimiento

  1. Opcional: Identificar el maestro de renovación de la CA de IdM actual:

    $ ipa config-show | grep 'CA renewal master'
      IPA CA renewal master: server.idm.example.com
  2. Cree un archivo de inventario, por ejemplo inventory.file, y defina en él ipaserver:

    [ipaserver]
    server.idm.example.com
  3. Abra el archivo /usr/share/doc/ansible-freeipa/playbooks/config/set-ca-renewal-master-server.yml Ansible playbook para editarlo:

    ---
    - name: Playbook to handle global DNS configuration
      hosts: ipaserver
      become: no
      gather_facts: no
    
      tasks:
      - name: set ca_renewal_master_server
        ipaconfig:
          ipaadmin_password: SomeADMINpassword
          ca_renewal_master_server: carenewal.idm.example.com
  4. Adapte el archivo cambiando:

    • La contraseña del administrador de IdM establecida por la variable ipaadmin_password.
    • El nombre del servidor CA maestro establecido por la variable ca_renewal_master_server.
  5. Guarda el archivo.
  6. Ejecute el playbook de Ansible. Especifique el archivo del libro de jugadas y el archivo de inventario:

    $ ansible-playbook -v -i path_to_inventory_directory/inventory.file /usr/share/doc/ansible-freeipa/playbooks/config/set-ca-renewal-master-server.yml

Pasos de verificación

Puede verificar que el maestro de renovación de la CA ha sido cambiado:

  1. Inicie sesión en ipaserver como administrador de IdM:

    $ ssh admin@server.idm.example.com
    Password:
    [admin@server /]$
  2. Solicita la identidad del servidor CA maestro de IdM:

    $ ipa config-show | grep ‘CA renewal master’
    IPA CA renewal master:  carenewal.idm.example.com

    La salida muestra que el servidor carenewal.idm.example.com es el nuevo maestro de renovación de CA.

8.3. Configurar el shell por defecto para los usuarios de IdM utilizando un playbook de Ansible

El shell es un programa que acepta e interpreta comandos. Hay varios shells disponibles en Red Hat Enterprise Linux (RHEL), como bash, sh, ksh, zsh, fish, y otros. Bash, o /bin/bash, es un shell popular en la mayoría de los sistemas Linux, y normalmente es el shell por defecto para las cuentas de usuario en RHEL.

El siguiente procedimiento describe cómo se puede utilizar un playbook de Ansible para configurar sh, un shell alternativo, como el shell por defecto para los usuarios de IdM.

Requisitos previos

  • Conoce la contraseña del administrador de IdM.
  • Ha instalado el paquete ansible-freeipa en el controlador de Ansible.

Procedimiento

  1. Opcional: Utilice el libro de jugadas de Ansible retrieve-config.yml para identificar el shell actual para los usuarios de IdM. Consulte Recuperación de la configuración de IdM mediante un libro de jugadas de Ansible para obtener más detalles.
  2. Cree un archivo de inventario, por ejemplo inventory.file, y defina en él ipaserver:

    [ipaserver]
    server.idm.example.com
  3. Abra el archivo /usr/share/doc/ansible-freeipa/playbooks/config/ensure-config-options-are-set.yml Ansible playbook para editarlo:

    ---
    - name: Playbook to ensure some config options are set
      hosts: ipaserver
      become: true
    
      tasks:
      # Set defaultlogin and maxusername
      - ipaconfig:
          ipaadmin_password: Secret123
          defaultshell: /bin/bash
          maxusername: 64
  4. Adapte el archivo cambiando lo siguiente:

    • La contraseña del administrador de IdM establecida por la variable ipaadmin_password.
    • El shell por defecto de los usuarios de IdM establecido por la variable defaultshell en /bin/sh.
  5. Guarda el archivo.
  6. Ejecute el playbook de Ansible. Especifique el archivo del libro de jugadas y el archivo de inventario:

    $ ansible-playbook -v -i path_to_inventory_directory/inventory.file /usr/share/doc/ansible-freeipa/playbooks/config/ensure-config-options-are-set.yml

Pasos de verificación

Puedes comprobar que el shell de usuario por defecto se ha cambiado iniciando una nueva sesión en IdM:

  1. Inicie sesión en ipaserver como administrador de IdM:

    $ ssh admin@server.idm.example.com
    Password:
    [admin@server /]$
  2. Muestra el shell actual:

    [admin@server /]$ echo "$SHELL"
    /bin/sh

    El usuario conectado está utilizando el shell sh.

Recursos adicionales

  • Puedes ver ejemplos de playbooks de Ansible para configurar los ajustes globales de IdM y una lista de posibles variables en el archivo README-config.md Markdown disponible en el directorio /usr/share/doc/ansible-freeipa/.
  • Puedes ver ejemplos de playbooks de Ansible para varias operaciones relacionadas con la configuración de IdM en el directorio /usr/share/doc/ansible-freeipa/playbooks/config.

Capítulo 9. Gestión de cuentas de usuario mediante la línea de comandos

Este capítulo incluye una descripción básica del ciclo de vida del usuario en IdM (Identity Management). Las siguientes secciones le muestran cómo:

  • Crear cuentas de usuario
  • Activar las cuentas de usuario de la etapa
  • Conservar las cuentas de usuario
  • Eliminar las cuentas de usuario activas, de etapa o conservadas
  • Restaurar las cuentas de usuario conservadas

9.1. Ciclo de vida del usuario

IdM (Identity Management) admite tres estados de cuenta de usuario:

  • Stage los usuarios no pueden autenticarse. Este es un estado inicial. Algunas de las propiedades de la cuenta de usuario requeridas para los usuarios activos no pueden establecerse, por ejemplo, la pertenencia a un grupo.
  • Active los usuarios pueden autenticarse. Todas las propiedades requeridas de la cuenta de usuario deben ser establecidas en este estado.
  • Preserved son antiguos usuarios activos que se consideran inactivos y no pueden autenticarse en el IdM. Los usuarios preservados conservan la mayoría de las propiedades de la cuenta que tenían como usuarios activos, pero no forman parte de ningún grupo de usuarios.

84 Ciclo de vida de RHEL IdM 0420

Puede eliminar las entradas de usuarios de forma permanente de la base de datos de IdM.

Importante

Las cuentas de usuario borradas no se pueden restaurar. Cuando se elimina una cuenta de usuario, toda la información asociada a la cuenta se pierde permanentemente.

Un nuevo administrador sólo puede ser creado por un usuario con derechos de administrador, como el usuario administrador por defecto. Si se eliminan accidentalmente todas las cuentas de administrador, el Administrador de directorios debe crear un nuevo administrador manualmente en el Servidor de directorios.

Aviso

No elimine el usuario admin. Como admin es un usuario predefinido requerido por IdM, esta operación causa problemas con ciertos comandos. Si desea definir y utilizar un usuario administrador alternativo, desactive el usuario predefinido admin con ipa user-disable admin después de haber concedido permisos de administrador al menos a un usuario diferente.

9.2. Añadir usuarios mediante la línea de comandos

Puedes añadir el usuario como:

  • Active- cuentas de usuario que pueden ser utilizadas activamente por sus usuarios.
  • Stage- los usuarios no pueden utilizar estas cuentas. Utilízalo si quieres preparar nuevas cuentas de usuario. Cuando los usuarios estén listos para usar sus cuentas, entonces puedes activarlos.

El siguiente procedimiento describe cómo añadir usuarios activos al servidor IdM con el comando ipa user-add.

Del mismo modo, puede crear cuentas de usuario de escenario con el comando ipa stageuser-add.

Nota

IdM asigna automáticamente un ID de usuario único (UID) a las nuevas cuentas de usuario. También puede hacerlo manualmente, sin embargo, el servidor no valida si el número UID es único. Debido a esto, varias entradas de usuario podrían tener el mismo número de identificación asignado. Red Hat recomienda evitar tener múltiples entradas con el mismo UID.

Requisitos previos

Procedimiento

  1. Abra el terminal y conéctese al servidor IdM.
  2. Añade el nombre de usuario, el nombre y el apellido del usuario y, opcionalmente, puedes añadir su dirección de correo electrónico.

    $ ipa user-add user_login --first=nombre --last=apellido --email=dirección de correo electrónico

    IdM admite nombres de usuario que pueden describirse mediante la siguiente expresión regular:

    [a-zA-Z0-9_.][a-zA-Z0-9_.-]{0,252}[a-zA-Z0-9_.$-]?
    Nota

    Los nombres de usuario que terminan con el signo de dólar ($) son compatibles con las máquinas Samba 3.x.

    Si añades un nombre de usuario que contiene caracteres en mayúsculas, IdM convierte automáticamente el nombre en minúsculas al guardarlo. Por lo tanto, IdM siempre requiere introducir los nombres de usuario en minúsculas al iniciar la sesión. Además, no es posible añadir nombres de usuario que sólo se diferencien en el tipo de letra, como user y User.

    La longitud máxima por defecto de los nombres de usuario es de 32 caracteres. Para cambiarlo, utilice el comando ipa config-mod --maxusername. Por ejemplo, para aumentar la longitud máxima del nombre de usuario a 64 caracteres:

    $ ipa config-mod --maxusername=64
     Maximum username length: 64
     ...

    El comando ipa user-add incluye muchos parámetros. Para enumerarlos todos, utilice el comando ipa help:

    $ ipa help user-add

    Para más detalles sobre el comando ipa help, consulte Qué es la ayuda IPA.

Puede verificar si la nueva cuenta de usuario se ha creado con éxito haciendo un listado de todas las cuentas de usuario de IdM:

$ ipa $ ipa user-find

Este comando lista todas las cuentas de usuario con detalles.

9.3. Activación de usuarios mediante la línea de comandos

Para activar una cuenta de usuario moviéndola de estado a activo, utilice el comando ipa stageuser-activate.

Requisitos previos

Procedimiento

  1. Abra el terminal y conéctese al servidor IdM.
  2. Active la cuenta de usuario con el siguiente comando:

    $ ipa stageuser-activate user_login
    -------------------------
    Stage user user_login activated
    -------------------------
    ...

Puede verificar si la nueva cuenta de usuario se ha creado con éxito haciendo un listado de todas las cuentas de usuario de IdM:

$ ipa $ ipa user-find

Este comando lista todas las cuentas de usuario con detalles.

9.4. Conservación de los usuarios mediante la línea de comandos

Para conservar una cuenta de usuario, utilice los comandos ipa user-del o ipa stageuser-del.

Requisitos previos

Procedimiento

  1. Abra el terminal y conéctese al servidor IdM.
  2. Conserve la cuenta de usuario con el siguiente comando:

    $ ipa user-del --preserve user_login
    --------------------
    Deleted user "user_login"
    --------------------

9.5. Eliminación de usuarios mediante la línea de comandos

IdM (Identity Management) le permite eliminar usuarios de forma permanente. Se pueden eliminar:

  • Usuarios activos con el siguiente comando ipa user-del
  • Los usuarios del escenario con el siguiente comando ipa stageuser-del
  • Preserva a los usuarios con el siguiente comando ipa user-del

Al eliminar varios usuarios, utilice la opción --continue para forzar que el comando continúe independientemente de los errores. Un resumen de las operaciones exitosas y fallidas se imprime en el flujo de salida estándar stdout cuando el comando se completa.

$ ipa user-del --continue user1 user2 user3

Si no se utiliza --continue, el comando procede a eliminar usuarios hasta que encuentra un error, tras lo cual se detiene y sale.

Requisitos previos

Procedimiento

  1. Abra el terminal y conéctese al servidor IdM.
  2. Elimine la cuenta de usuario con el siguiente comando:

    $ ipa user-del user_login
    --------------------
    Deleted user "user_login"
    --------------------

La cuenta de usuario ha sido eliminada definitivamente del IdM.

9.6. Restauración de usuarios mediante la línea de comandos

Se puede restaurar a los usuarios conservados:

  • Usuarios activos ipa user-undel
  • Usuarios del escenario ipa user-stage

La restauración de una cuenta de usuario no restaura todos los atributos anteriores de la cuenta. Por ejemplo, la contraseña del usuario no se restaura y debe establecerse de nuevo.

Requisitos previos

Procedimiento

  1. Abra el terminal y conéctese al servidor IdM.
  2. Active la cuenta de usuario con el siguiente comando:

    $ ipa user-undel user_login
    ------------------------------
    Undeleted user account "user_login"
    ------------------------------

    Como alternativa, puede restaurar las cuentas de los usuarios como si se tratara de una etapa:

    $ ipa user-stage user_login
    ------------------------------
    Staged user account "user_login"
    ------------------------------

Puede verificar si la nueva cuenta de usuario se ha creado con éxito haciendo un listado de todas las cuentas de usuario de IdM:

$ ipa $ ipa user-find

Este comando lista todas las cuentas de usuario con detalles.

Capítulo 10. Gestión de cuentas de usuario mediante la interfaz web de IdM

La gestión de identidades (IdM) ofrece varias etapas que pueden ayudarle a gestionar diversas situaciones de la vida laboral de los usuarios:

Crear una cuenta de usuario

Crear una cuenta de usuario por etapas antes de que un empleado comience su carrera en su empresa y estar preparado de antemano para el día en que el empleado aparezca en la oficina y quiera activar la cuenta.

Puede omitir este paso y crear la cuenta de usuario activa directamente. El procedimiento es similar a la creación de una cuenta de usuario de etapa.

Activar una cuenta de usuario
Activar la cuenta el primer día laborable del empleado.
Desactivar una cuenta de usuario
Si el usuario se va de baja por paternidad durante un par de meses, tendrá que desactivar la cuenta temporalmente.
Habilitar una cuenta de usuario
Cuando el usuario regrese, tendrá que volver a habilitar la cuenta.
Conservar una cuenta de usuario
Si el usuario quiere dejar la empresa, tendrá que eliminar la cuenta con la posibilidad de restaurarla porque la gente puede volver a la empresa después de algún tiempo.
Restaurar una cuenta de usuario
Dos años después, el usuario ha vuelto y hay que restaurar la cuenta conservada.
Eliminar una cuenta de usuario
Si el empleado es despedido, se eliminará la cuenta sin una copia de seguridad.

10.1. Ciclo de vida del usuario

IdM (Identity Management) admite tres estados de cuenta de usuario:

  • Stage los usuarios no pueden autenticarse. Este es un estado inicial. Algunas de las propiedades de la cuenta de usuario requeridas para los usuarios activos no pueden establecerse, por ejemplo, la pertenencia a un grupo.
  • Active los usuarios pueden autenticarse. Todas las propiedades requeridas de la cuenta de usuario deben ser establecidas en este estado.
  • Preserved son antiguos usuarios activos que se consideran inactivos y no pueden autenticarse en el IdM. Los usuarios preservados conservan la mayoría de las propiedades de la cuenta que tenían como usuarios activos, pero no forman parte de ningún grupo de usuarios.

84 Ciclo de vida de RHEL IdM 0420

Puede eliminar las entradas de usuarios de forma permanente de la base de datos de IdM.

Importante

Las cuentas de usuario borradas no se pueden restaurar. Cuando se elimina una cuenta de usuario, toda la información asociada a la cuenta se pierde permanentemente.

Un nuevo administrador sólo puede ser creado por un usuario con derechos de administrador, como el usuario administrador por defecto. Si se eliminan accidentalmente todas las cuentas de administrador, el Administrador de directorios debe crear un nuevo administrador manualmente en el Servidor de directorios.

Aviso

No elimine el usuario admin. Como admin es un usuario predefinido requerido por IdM, esta operación causa problemas con ciertos comandos. Si desea definir y utilizar un usuario administrador alternativo, desactive el usuario predefinido admin con ipa user-disable admin después de haber concedido permisos de administrador al menos a un usuario diferente.

10.2. Añadir usuarios en la interfaz web

Normalmente, es necesario crear una nueva cuenta de usuario antes de que un nuevo empleado comience a trabajar. Dicha cuenta de etapa no es accesible y hay que activarla más tarde.

Nota

También puede crear una cuenta de usuario activo directamente. Para añadir un usuario activo, siga el siguiente procedimiento y añada la cuenta de usuario en la pestaña Active users.

Requisitos previos

  • Privilegios de administrador para gestionar el IdM o el rol de administrador de usuarios.

Procedimiento

  1. Inicie sesión en la interfaz web de IdM.

    Para obtener más información, consulte Acceso a la interfaz web de IdM en un navegador web.

  2. Vaya a la pestaña Users → Stage Users.

    Como alternativa, puede añadir la cuenta de usuario en Users → Active users, sin embargo, no puede añadir grupos de usuarios a la cuenta.

  3. Haga clic en el icono Add.
  4. En el cuadro de diálogo Add stage user, introduzca First name y Last name del nuevo usuario.
  5. Opcional] En el campo User login, añada un nombre de usuario.

    Si lo dejas vacío, el servidor IdM crea el nombre de usuario con el siguiente patrón: La primera letra del nombre y el apellido. El nombre de inicio de sesión completo puede tener hasta 32 caracteres.

  6. Opcional] En el menú desplegable GID, seleccione los grupos en los que debe incluirse el usuario.
  7. [Opcional] En los campos Password y Verify password,
  8. Haga clic en el botón Add.

    idm user add stage

En este punto, puede ver la cuenta de usuario en la tabla Stage Users.

etapa de usuarios de idm

Nota

Si hace clic en el nombre del usuario, puede editar la configuración avanzada, como añadir un número de teléfono, una dirección o una ocupación.

10.3. Activación de los usuarios de la etapa en la interfaz web de IdM

Una cuenta de usuario de escenario debe activarse antes de que el usuario pueda iniciar sesión en IdM y antes de que pueda añadirse a un grupo de IdM. Esta sección describe cómo activar las cuentas de usuario de escenario.

Requisitos previos

  • Privilegios de administrador para gestionar la interfaz web de IdM o el rol de administrador de usuarios.
  • Al menos una cuenta de usuario escalonada en IdM.

Procedimiento

  1. Inicie sesión en la interfaz web de IdM.

    Para obtener más información, consulte Acceso a la interfaz web de IdM en un navegador web.

  2. Vaya a la pestaña Users → Stage users.
  3. Haga clic en la casilla de la cuenta de usuario que desea activar.
  4. Haga clic en el botón Activate.

    etapa de usuarios de idm

  5. En el cuadro de diálogo Confirmation, haga clic en el botón OK.

Si la activación tiene éxito, la interfaz web de IdM muestra una confirmación verde de que el usuario ha sido activado y la cuenta de usuario se ha trasladado a Active users. La cuenta está activa y el usuario puede autenticarse en el dominio IdM y en la interfaz web IdM. En el primer inicio de sesión se pide al usuario que cambie su contraseña.

usuarios de idm etapa activada

Nota

En esta fase, puede añadir la cuenta de usuario activa a los grupos de usuarios.

10.4. Desactivación de las cuentas de usuario en la interfaz web

Puede desactivar las cuentas de usuario activas. Al desactivar una cuenta de usuario se desactiva la cuenta, por lo tanto, las cuentas de usuario no se pueden utilizar para autenticar y utilizar los servicios de IdM, como Kerberos, ni realizar ninguna tarea.

Las cuentas de usuario deshabilitadas siguen existiendo dentro de IdM y toda la información asociada permanece inalterada. A diferencia de las cuentas de usuario conservadas, las cuentas de usuario desactivadas permanecen en estado activo y pueden ser miembros de grupos de usuarios.

Nota

Después de desactivar una cuenta de usuario, cualquier conexión existente seguirá siendo válida hasta que el vale TGT de Kerberos del usuario y los demás vales caduquen. Una vez que el ticket caduque, el usuario no podrá renovarlo.

Requisitos previos

  • Privilegios de administrador para gestionar la interfaz web de IdM o el rol de administrador de usuarios.

Procedimiento

  1. Inicie sesión en la interfaz web de IdM.

    Para obtener más información, consulte Acceso a la interfaz web de IdM en un navegador web.

  2. Vaya a la pestaña Users → Active users.
  3. Haga clic en la casilla de las cuentas de usuario que desee desactivar.
  4. Haga clic en el botón Disable.

    los usuarios de idm se desactivan

  5. En el cuadro de diálogo Confirmation, haga clic en el botón OK.

Si el procedimiento de desactivación ha sido exitoso, puede verificarlo en la columna Estado de la tabla Active users.

usuarios de idm deshabilitados

10.5. Activación de las cuentas de usuario en la interfaz web

Con IdM se pueden habilitar las cuentas de usuario activas deshabilitadas. Al habilitar una cuenta de usuario se activa la cuenta deshabilitada.

Requisitos previos

  • Privilegios de administrador para gestionar la interfaz web de IdM o el rol de administrador de usuarios.

Procedimiento

  1. Inicie sesión en la interfaz web de IdM.
  2. Vaya a la pestaña Users → Active users.
  3. Haga clic en la casilla de las cuentas de usuario que desee habilitar.
  4. Haga clic en el botón Enable.

    los usuarios de idm se desactivan

  5. En el cuadro de diálogo Confirmation, haga clic en el botón OK.

Si el cambio se ha realizado con éxito, puede comprobarlo en la columna Estado de la tabla Active users.

10.6. Conservación de los usuarios activos en la interfaz web de IdM

La conservación de las cuentas de usuario le permite eliminar las cuentas de la ficha Active users, pero manteniendo estas cuentas en IdM.

Conserve la cuenta de usuario si el empleado deja la empresa. Si desea desactivar las cuentas de usuario durante un par de semanas o meses (permiso parental, por ejemplo), desactive la cuenta. Para más detalles, consulte Sección 10.4, “Desactivación de las cuentas de usuario en la interfaz web”. Las cuentas preservadas no están activas y los usuarios no pueden utilizarlas para acceder a su red interna, sin embargo, la cuenta permanece en la base de datos con todos los datos.

Puede volver a mover las cuentas restauradas al modo activo.

Nota

La lista de usuarios en estado conservado puede proporcionar un historial de cuentas de usuario anteriores.

Requisitos previos

  • Privilegios de administrador para gestionar la interfaz web de IdM (gestión de identidades) o el rol de administrador de usuarios.

Procedimiento

  1. Inicie sesión en la interfaz web de IdM.

    Para obtener más información, consulte Acceso a la interfaz web de IdM en un navegador web.

  2. Vaya a la pestaña Users → Active users.
  3. Haga clic en la casilla de las cuentas de usuario que desee conservar.
  4. Haga clic en el botón Delete.

    usuarios de idm activos eliminar

  5. En el cuadro de diálogo Remove users, cambie el botón de opción Delete mode por preserve.
  6. Haga clic en el botón Delete.

    usuarios de idm que conservan

Como resultado, la cuenta de usuario se traslada a Preserved users.

Si necesita restaurar los usuarios conservados, consulte la sección Restauración de usuarios en la interfaz web de IdM.

10.7. Restauración de usuarios en la interfaz web de IdM

La gestión de identidades (IdM) permite restaurar las cuentas de usuario conservadas en el estado activo.

Requisitos previos

  • Privilegios de administrador para gestionar la interfaz web de IdM o el rol de administrador de usuarios.

Procedimiento

  1. Inicie sesión en la interfaz web de IdM.

    Para obtener más información, consulte Acceso a la interfaz web de IdM en un navegador web.

  2. Vaya a la pestaña Users → Preserved users.
  3. Haga clic en la casilla de las cuentas de usuario que desee restaurar.
  4. Haga clic en el botón Restore.

    restauración de usuarios de idm preservada

  5. En el cuadro de diálogo Confirmation, haga clic en el botón OK.

La interfaz web de IdM muestra una confirmación verde y mueve las cuentas de usuario a la pestaña Active users.

10.8. Eliminación de usuarios en la interfaz web de IdM

El borrado de usuarios es una operación irreversible, que hace que las cuentas de usuario se eliminen permanentemente de la base de datos de IdM, incluyendo la pertenencia a grupos y las contraseñas. Cualquier configuración externa para el usuario, como la cuenta del sistema y el directorio de inicio, no se elimina, pero ya no es accesible a través de IdM.

Se puede borrar:

  • Usuarios activos: la interfaz web de IdM le ofrece las opciones:

  • Usuarios de la etapa: puedes eliminar los usuarios de la etapa de forma permanente.
  • Usuarios conservados: puede eliminar los usuarios conservados de forma permanente.

El siguiente procedimiento describe la eliminación de usuarios activos. Del mismo modo, puede eliminar las cuentas de usuario en:

  • La pestaña Stage users
  • La pestaña Preserved users

Requisitos previos

  • Privilegios de administrador para gestionar la interfaz web de IdM o el rol de administrador de usuarios.

Procedimiento

  1. Inicie sesión en la interfaz web de IdM.

    Para obtener más información, consulte Acceso a la interfaz web de IdM en un navegador web.

  2. Vaya a la pestaña Users → Active users.

    También puede eliminar la cuenta de usuario en Users → Stage users o Users → Preserved users.

  3. Haga clic en el icono Delete.
  4. En el cuadro de diálogo Remove users, cambie el botón de opción Delete mode por delete.
  5. Haga clic en el botón Delete.

Las cuentas de los usuarios han sido eliminadas permanentemente de IdM.

Capítulo 11. Gestión de las cuentas de usuario mediante los playbooks de Ansible

Puede gestionar los usuarios en IdM utilizando los libros de juego de Ansible. Este capítulo describe el uso de los playbooks de Ansible para las siguientes operaciones:

11.1. Garantizar la presencia de un usuario de IdM mediante un playbook de Ansible

El siguiente procedimiento describe cómo asegurar la presencia de un usuario en IdM mediante un playbook de Ansible.

Requisitos previos

  • Conoce la contraseña del administrador de IdM.
  • El paquete ansible-freeipa está instalado en el controlador Ansible.

Procedimiento

  1. Cree un archivo de inventario, por ejemplo inventory.file, y defina en él ipaserver:

    [ipaserver]
    server.idm.example.com
  2. Crea un archivo Ansible playbook con los datos del usuario cuya presencia en IdM quieres asegurar. Para simplificar este paso, puedes copiar y modificar el ejemplo del archivo /usr/share/doc/ansible-freeipa/playbooks/user/add-user.yml. Por ejemplo, para crear un usuario llamado idm_user y añadir Password123 como contraseña del usuario:

    ---
    - name: Playbook to handle users
      hosts: ipaserver
      become: true
    
      tasks:
      - name: Create user idm_user
        ipauser:
          ipaadmin_password: MySecret123
          name: idm_user
          first: Alice
          last: Acme
          uid: 1000111
          gid: 10011
          phone: "+555123457"
          email: idm_user@acme.com
          passwordexpiration: "2023-01-19 23:59:59"
          password: "Password123"
          update_password: on_create

    Debe utilizar las siguientes opciones para añadir un usuario:

    • name: el nombre de usuario
    • first: la cadena del nombre
    • last: la cadena de apellidos

    Para ver la lista completa de opciones de usuario disponibles, consulte el archivo /usr/share/doc/ansible-freeipa/README-user.md Markdown.

    Nota

    Si utiliza la opción update_password: on_create, Ansible sólo crea la contraseña del usuario cuando crea el usuario. Si el usuario ya está creado con una contraseña, Ansible no genera una nueva contraseña.

  3. Ejecuta el libro de jugadas:

    $ ansible-playbook -v -i path_to_inventory_directory/inventory.file path_to_playbooks_directory/add-IdM-user.yml

Pasos de verificación

  • Puede verificar si la nueva cuenta de usuario existe en IdM utilizando el comando ipa user-show:

    1. Entre en ipaserver como administrador:

      $ ssh admin@server.idm.example.com
      Password:
      [admin@server /]$
    2. Solicitar un ticket Kerberos para el administrador:

      $ kinit admin
      Password for admin@IDM.EXAMPLE.COM:
    3. Solicite información sobre idm_user:

      $ ipa user-show idm_user
        User login: idm_user
        First name: Alice
        Last name: Acme
        ....

    El usuario llamado idm_user está presente en IdM.

11.2. Garantizar la presencia de varios usuarios de IdM mediante los playbooks de Ansible

El siguiente procedimiento describe cómo garantizar la presencia de varios usuarios en IdM mediante un libro de jugadas de Ansible.

Requisitos previos

  • Conoce la contraseña del administrador de IdM.
  • Ha instalado el paquete ansible-freeipa en el controlador de Ansible.

Procedimiento

  1. Cree un archivo de inventario, por ejemplo inventory.file, y defina en él ipaserver:

    [ipaserver]
    server.idm.example.com
  2. Crea un archivo Ansible playbook con los datos de los usuarios cuya presencia quieres asegurar en IdM. Para simplificar este paso, puedes copiar y modificar el ejemplo del archivo /usr/share/doc/ansible-freeipa/playbooks/user/ensure-users-present.yml. Por ejemplo, para crear los usuarios idm_user_1, idm_user_2, y idm_user_3, y añadir Password123 como contraseña de idm_user_1:

    ---
    - name: Playbook to handle users
      hosts: ipaserver
      become: true
    
      tasks:
      - name: Create user idm_users
        ipauser:
          ipaadmin_password: MySecret123
          users:
          - name: idm_user_1
            first: Alice
            last: Acme
            uid: 10001
            gid: 10011
            phone: "+555123457"
            email: idm_user@acme.com
            passwordexpiration: "2023-01-19 23:59:59"
            password: "Password123"
          - name: idm_user_2
            first: Bob
            last: Acme
            uid: 100011
            gid: 10011
          - name: idm_user_3
            first: Eve
            last: Acme
            uid: 1000111
            gid: 10011
    Nota

    Si no se especifica la opción update_password: on_create, Ansible restablece la contraseña del usuario cada vez que se ejecuta el libro de jugadas: si el usuario ha cambiado la contraseña desde la última vez que se ejecutó el libro de jugadas, Ansible restablece la contraseña.

  3. Ejecuta el libro de jugadas:

    $ ansible-playbook -v -i path_to_inventory_directory/inventory.file path_to_playbooks_directory/add-users.yml

Pasos de verificación

  • Puede verificar si la cuenta de usuario existe en IdM utilizando el comando ipa user-show:

    1. Entre en ipaserver como administrador:

      $ ssh administrator@server.idm.example.com
      Password:
      [admin@server /]$
    2. Mostrar información sobre idm_user_1:

      $ ipa user-show idm_user_1
        User login: idm_user_1
        First name: Alice
        Last name: Acme
        Password: True
        ....

    El usuario llamado idm_user_1 está presente en IdM.

11.3. Garantizar la presencia de múltiples usuarios de IdM desde un archivo JSON utilizando playbooks de Ansible

El siguiente procedimiento describe cómo se puede asegurar la presencia de varios usuarios en IdM utilizando un playbook de Ansible. Los usuarios se almacenan en un archivo JSON.

Requisitos previos

  • Conoce la contraseña del administrador de IdM.
  • Ha instalado el paquete ansible-freeipa en el controlador de Ansible.

Procedimiento

  1. Cree un archivo de inventario, por ejemplo inventory.file, y defina en él ipaserver:

    [ipaserver]
    server.idm.example.com
  2. Cree un archivo Ansible playbook con las tareas necesarias. Haz referencia al archivo JSON con los datos de los usuarios cuya presencia quieres asegurar. Para simplificar este paso, puede copiar y modificar el ejemplo del archivo /usr/share/doc/ansible-freeipa/ensure-users-present-ymlfile.yml:

    ---
    - name: Ensure users' presence
      hosts: ipaserver
      become: true
    
      tasks:
      - name: Include users.json
        include_vars:
          file: users.json
    
      - name: Users present
        ipauser:
          ipaadmin_password: MySecret123
          users: "{{ users }}"
  3. Cree el archivo users.json y añada los usuarios de IdM en él. Para simplificar este paso, puedes copiar y modificar el ejemplo del archivo /usr/share/doc/ansible-freeipa/playbooks/user/users.json. Por ejemplo, para crear los usuarios idm_user_1, idm_user_2, y idm_user_3, y añadir Password123 como contraseña de idm_user_1:

    {
      "users": [
       {
        "name": "idm_user_1",
        "first": "Alice",
        "last": "Acme",
        "password": "Password123"
       },
       {
        "name": "idm_user_2",
        "first": "Bob",
        "last": "Acme"
       },
       {
        "name": "idm_user_3",
        "first": "Eve",
        "last": "Acme"
       }
      ]
    }
  4. Ejecute el playbook de Ansible especificando el archivo del playbook y el archivo de inventario:

    $ ansible-playbook -v -i path_to_inventory_directory/inventory.file path_to_playbooks_directory/ensure-users-present-jsonfile.yml

Pasos de verificación

  • Puede verificar si las cuentas de usuario están presentes en IdM utilizando el comando ipa user-show:

    1. Entre en ipaserver como administrador:

      $ ssh administrator@server.idm.example.com
      Password:
      [admin@server /]$
    2. Mostrar información sobre idm_user_1:

      $ ipa user-show idm_user_1
        User login: idm_user_1
        First name: Alice
        Last name: Acme
        Password: True
        ....

    El usuario llamado idm_user_1 está presente en IdM.

11.4. Garantizar la ausencia de usuarios que utilicen los playbooks de Ansible

El siguiente procedimiento describe cómo se puede utilizar un libro de jugadas de Ansible para garantizar que determinados usuarios estén ausentes de IdM.

Requisitos previos

  • Conoce la contraseña del administrador de IdM.
  • Ha instalado el paquete ansible-freeipa en el controlador de Ansible.

Procedimiento

  1. Cree un archivo de inventario, por ejemplo inventory.file, y defina en él ipaserver:

    [ipaserver]
    server.idm.example.com
  2. Cree un archivo playbook de Ansible con los usuarios cuya ausencia de IdM desea asegurar. Para simplificar este paso, puedes copiar y modificar el ejemplo del archivo /usr/share/doc/ansible-freeipa/playbooks/user/ensure-users-present.yml. Por ejemplo, para eliminar los usuarios idm_user_1, idm_user_2, y idm_user_3:

    ---
    - name: Playbook to handle users
      hosts: ipaserver
      become: true
    
      tasks:
      - name: Delete users idm_user_1, idm_user_2, idm_user_3
        ipauser:
          ipaadmin_password: MySecret123
          users:
          - name: idm_user_1
          - name: idm_user_2
          - name: idm_user_3
          state: absent
  3. Ejecute el playbook de Ansible especificando el archivo del playbook y el archivo de inventario:

    $ ansible-playbook -v -i path_to_inventory_directory/inventory.file path_to_playbooks_directory/delete-users.yml

Pasos de verificación

Puede comprobar que las cuentas de usuario no existen en IdM utilizando el comando ipa user-show:

  1. Entre en ipaserver como administrador:

    $ ssh administrator@server.idm.example.com
    Password:
    [admin@server /]$
  2. Solicite información sobre idm_user_1:

    $ ipa user-show idm_user_1
    ipa: ERROR: idm_user_1: user not found

    El usuario llamado idm_user_1 no existe en IdM.

Recursos adicionales

  • Puedes ver ejemplos de playbooks de Ansible para otras acciones relacionadas con los usuarios de IdM como conservar, eliminar, habilitar, deshabilitar, desbloquear y deshacer usuarios en el archivo Markdown README-user.md disponible en el directorio /usr/share/doc/ansible-freeipa/. El archivo también contiene las definiciones de las variables de ipauser.
  • También puede ver ejemplos de playbooks de Ansible en el directorio /usr/share/doc/ansible-freeipa/playbooks/user.

Capítulo 12. Gestión de grupos de usuarios en IdM CLI

Este capítulo presenta la gestión de grupos de usuarios mediante la CLI de IdM.

Un grupo de usuarios es un conjunto de usuarios con privilegios, políticas de contraseña y otras características comunes.

Un grupo de usuarios en la gestión de identidades (IdM) puede incluir:

  • Usuarios de IdM
  • otros grupos de usuarios de IdM
  • usuarios externos, que son usuarios que existen fuera de IdM

12.1. Los diferentes tipos de grupos en IdM

IdM admite los siguientes tipos de grupos:

Grupos POSIX (por defecto)

Los grupos POSIX admiten atributos POSIX de Linux para sus miembros. Tenga en cuenta que los grupos que interactúan con Active Directory no pueden utilizar atributos POSIX.

Los atributos POSIX identifican a los usuarios como entidades separadas. Ejemplos de atributos POSIX relevantes para los usuarios incluyen uidNumber, un número de usuario (UID), y gidNumber, un número de grupo (GID).

Grupos no POSIX

Los grupos no POSIX no soportan los atributos POSIX. Por ejemplo, estos grupos no tienen definido un GID.

Todos los miembros de este tipo de grupo deben pertenecer al dominio IdM.

Grupos externos

Utilice los grupos externos para añadir miembros de grupos que existen en un almacén de identidades fuera del dominio de IdM, como por ejemplo

  • Un sistema local
  • Un dominio de Active Directory
  • Un servicio de directorio

Los grupos externos no soportan los atributos POSIX. Por ejemplo, estos grupos no tienen un GID definido.

Tabla 12.1. Grupos de usuarios creados por defecto

Nombre del grupoMiembros del grupo por defecto

ipausers

Todos los usuarios de IdM

admins

Usuarios con privilegios administrativos, incluido el usuario por defecto admin

editors

Este es un grupo heredado que ya no tiene privilegios especiales

trust admins

Usuarios con privilegios para gestionar los fideicomisos de Active Directory

Cuando se añade un usuario a un grupo de usuarios, el usuario obtiene los privilegios y las políticas asociadas al grupo. Por ejemplo, para conceder privilegios administrativos a un usuario, añádalo al grupo admins.

Aviso

No elimine el grupo admins. Como admins es un grupo predefinido requerido por IdM, esta operación causa problemas con ciertos comandos.

Además, IdM crea user private groups por defecto cada vez que se crea un nuevo usuario en IdM. Para obtener más información sobre los grupos privados, consulte Añadir usuarios sin grupo privado.

12.2. Miembros directos e indirectos del grupo

Los atributos de grupo de usuarios en IdM se aplican tanto a los miembros directos como a los indirectos: cuando el grupo B es miembro del grupo A, todos los usuarios del grupo B se consideran miembros indirectos del grupo A.

Por ejemplo, en el siguiente diagrama:

  • El usuario 1 y el usuario 2 son direct members del grupo A.
  • Los usuarios 3, 4 y 5 son indirect members del grupo A.

Figura 12.1. Afiliación directa e indirecta al grupo

84 RHEL IdM 0420 user group

Si establece una política de contraseñas para el grupo de usuarios A, la política también se aplica a todos los usuarios del grupo B.

12.3. Añadir un grupo de usuarios mediante la CLI de IdM

Esta sección describe cómo añadir un grupo de usuarios mediante la CLI de IdM.

Requisitos previos

Procedimiento

  • Añade un grupo de usuarios utilizando el comando ipa group-add group_name comando. Por ejemplo, para crear el grupo_a:

    $ ipa group-add group_a
    ---------------------
    Added group "group_a"
    ---------------------
      Group name: group_a
      GID: 1133400009

    Por defecto, ipa group-add añade un grupo de usuarios POSIX. Para especificar un tipo de grupo diferente, añada opciones a ipa group-add:

    Puede especificar un GID personalizado al añadir un grupo de usuarios utilizando la opción --gid=custom_GID opción. Si lo hace, tenga cuidado de evitar conflictos de ID. Si no se especifica un GID personalizado, IdM asigna automáticamente un GID del rango de ID disponibles.

12.4. Búsqueda de grupos de usuarios mediante la CLI de IdM

Esta sección describe cómo buscar grupos de usuarios existentes mediante la CLI de IdM.

Procedimiento

  • Muestra todos los grupos de usuarios utilizando el comando ipa group-find. Para especificar un tipo de grupo, añada opciones a ipa group-find:

    • Muestra todos los grupos POSIX utilizando el comando ipa group-find --posix.
    • Muestra todos los grupos no POSIX utilizando el comando ipa group-find --nonposix.
    • Muestra todos los grupos externos utilizando el comando ipa group-find --external.

      Para más información sobre los diferentes tipos de grupos, véase Los diferentes tipos de grupos en IdM.

12.5. Eliminación de un grupo de usuarios mediante la CLI de IdM

Esta sección describe cómo eliminar un grupo de usuarios mediante la CLI de IdM. Tenga en cuenta que la eliminación de un grupo no elimina los miembros del grupo de IdM.

Requisitos previos

Procedimiento

  • Elimine un grupo de usuarios mediante el comando ipa group-del group_name comando. Por ejemplo, para eliminar el grupo_a:

    $ ipa group-del group_a
    --------------------------
    Deleted group "group_a"
    --------------------------

12.6. Añadir un miembro a un grupo de usuarios mediante la CLI de IdM

Esta sección describe cómo añadir un miembro a un grupo de usuarios mediante la CLI de IdM. Se pueden añadir tanto usuarios como grupos de usuarios como miembros de un grupo de usuarios. Para obtener más información, consulte Los diferentes tipos de grupos en Id M y Miembros directos e indirectos del grupo.

Requisitos previos

Procedimiento

  • Añade un miembro a un grupo de usuarios mediante el comando ipa group-add-member.

    Especifique el tipo de miembro utilizando estas opciones:

    • --users añade un usuario IdM
    • --external añade un usuario que existe fuera del dominio IdM, en el formato de DOMAIN\user_name o user_name@domain
    • --groups añade un grupo de usuarios de IdM

    Por ejemplo, para añadir el grupo_b como miembro del grupo_a:

    $ ipa group-add-member group_a --groups=group_b
    Group name: group_a
    GID: 1133400009
    Member users: user_a
    Member groups: group_b
    Indirect Member users: user_b
    -------------------------
    Number of members added 1
    -------------------------

    Los miembros del grupo_b son ahora miembros indirectos del grupo_a.

Importante

Cuando añada un grupo como miembro de otro grupo, no cree grupos recursivos. Por ejemplo, si el grupo A es miembro del grupo B, no añada el grupo B como miembro del grupo A. Los grupos recursivos pueden provocar un comportamiento imprevisible.

Nota

Después de añadir un miembro a un grupo de usuarios, la actualización puede tardar algún tiempo en extenderse a todos los clientes de su entorno de gestión de identidades. Esto se debe a que cuando cualquier host resuelve usuarios, grupos y netgroups, el System Security Services Daemon (SSSD) busca primero en su caché y realiza búsquedas en el servidor sólo para los registros que faltan o han caducado.

12.7. Añadir usuarios sin grupo privado de usuarios

Por defecto, IdM crea grupos privados de usuarios (UPG) cada vez que se crea un nuevo usuario en IdM. Los UPG son un tipo de grupo específico:

  • La UPG tiene el mismo nombre que el usuario recién creado.
  • El usuario es el único miembro del UPG. El UPG no puede contener ningún otro miembro.
  • El GID del grupo privado coincide con el UID del usuario.

Sin embargo, es posible añadir usuarios sin crear una UPG.

12.7.1. Usuarios sin grupo privado de usuarios

Si un grupo NIS u otro grupo del sistema ya utiliza el GID que se asignaría a un grupo privado de usuarios, es necesario evitar crear una UPG.

Puede hacerlo de dos maneras:

En ambos casos, IdM requerirá que se especifique un GID al añadir nuevos usuarios, de lo contrario la operación fallará. Esto se debe a que IdM requiere un GID para el nuevo usuario, pero el grupo de usuarios por defecto ipausers es un grupo no POSIX y por lo tanto no tiene un GID asociado. El GID que se especifica no tiene por qué corresponder a un grupo ya existente.

Nota

La especificación del GID no crea un nuevo grupo. Sólo establece el atributo GID para el nuevo usuario, porque el atributo es requerido por IdM.

12.7.2. Añadir un usuario sin un grupo privado de usuarios cuando los grupos privados están habilitados globalmente

Puede añadir un usuario sin crear un grupo privado de usuarios (GUP), incluso cuando los GUP están habilitados en el sistema. Esto requiere establecer manualmente un GID para el nuevo usuario. Para más detalles sobre por qué es necesario esto, consulte Sección 12.7.1, “Usuarios sin grupo privado de usuarios”.

Procedimiento

  • Para evitar que IdM cree una UPG, añada la opción --noprivate al comando ipa user-add.

    Tenga en cuenta que para que el comando tenga éxito, debe especificar un GID personalizado. Por ejemplo, para añadir un nuevo usuario con GID 10000:

    $ ipa user-add jsmith --first=John --last=Smith --noprivate --gid 10000

12.7.3. Desactivar los grupos privados de usuarios de forma global para todos los usuarios

Puede desactivar los grupos privados de usuarios (UPG) de forma global. Esto impide la creación de UPGs para todos los nuevos usuarios. Los usuarios existentes no se ven afectados por este cambio.

Procedimiento

  1. Obtener privilegios de administrador:

    $ kinit admin
  2. IdM utiliza el complemento de entradas gestionadas del servidor de directorio para gestionar las UPG. Enumera las instancias del plug-in:

    $ ipa-managed-entries --list
  3. Para garantizar que IdM no cree UPG, desactive la instancia del complemento responsable de gestionar los grupos privados de usuarios:

    $ ipa-managed-entries -e "UPG Definition" disable
    Disabling Plugin
    Nota

    Para volver a habilitar la instancia UPG Definition más adelante, utilice el comando ipa-managed-entries -e "UPG Definition" enable.

  4. Reinicie el servidor de directorio para cargar la nueva configuración.

    $ sudo systemctl restart dirsrv.target

    Para añadir un usuario después de que se hayan desactivado los grupos privados de usuarios, es necesario especificar un GID. Para obtener más información, consulte Añadir un usuario cuando los grupos privados de usuarios están desactivados globalmente

Pasos de verificación

  • Para comprobar si las UPGs están globalmente deshabilitadas, utilice de nuevo el comando disable:

    $ ipa-managed-entries -e "UPG Definition" disable
    Plugin already disabled

12.7.4. Añadir un usuario cuando los grupos privados de usuarios están desactivados globalmente

Cuando los grupos privados de usuarios (UPG) están deshabilitados globalmente, IdM no asigna un GID a un nuevo usuario automáticamente. Para añadir un usuario con éxito, debe asignar un GID manualmente o mediante una regla de automembresía. Para obtener más detalles sobre el motivo de este proceso, consulte Sección 12.7.1, “Usuarios sin grupo privado de usuarios”.

Requisitos previos

Procedimiento

  • Para asegurarse de que la adición de un nuevo usuario tiene éxito cuando se desactiva la creación de UPGs, elija una de las siguientes opciones:

    • Especifique un GID personalizado al añadir un nuevo usuario. El GID no tiene que corresponder a un grupo de usuarios ya existente.

      Por ejemplo, al añadir un usuario desde la línea de comandos, añada la opción --gid al comando ipa user-add.

    • Utilice una regla de automembresía para añadir el usuario a un grupo existente con un GID.

12.8. Adición de usuarios o grupos como administradores miembros de un grupo de usuarios de IdM mediante la CLI de IdM

En esta sección se describe cómo añadir usuarios o grupos como administradores miembros a un grupo de usuarios IdM mediante la CLI de IdM. Los miembros administradores pueden añadir usuarios o grupos a los grupos de usuarios de IdM, pero no pueden cambiar los atributos de un grupo.

Requisitos previos

  • Debe iniciar la sesión como administrador. Para más detalles, consulte Uso de kinit para iniciar sesión en IdM manualmente.
  • Debes tener el nombre del usuario o grupo que vas a añadir como gestor de miembros y el nombre del grupo que quieres que gestione.

Procedimiento

  • Añade un usuario como gestor de miembros a un grupo de usuarios IdM mediante el comando ipa group-add-member-manager.

    Por ejemplo, para añadir el usuario test como miembro gestor de group_a:

    $ ipa group-add-member-manager group_a --users=test
    Group name: group_a
    GID: 1133400009
    Membership managed by users: test
    -------------------------
    Number of members added 1
    -------------------------

    El usuario test ahora puede gestionar a los miembros de group_a.

  • Añade un grupo como gestor de miembros a un grupo de usuarios IdM mediante el comando ipa group-add-member-manager.

    Por ejemplo, para añadir el grupo group_admins como miembro gestor de group_a:

    $ ipa group-add-member-manager group_a --groups=group_admins
    Group name: group_a
    GID: 1133400009
    Membership managed by groups: group_admins
    Membership managed by users: test
    -------------------------
    Number of members added 1
    -------------------------

    El grupo group_admins ahora puede gestionar a los miembros de group_a.

Nota

Después de añadir un gestor de miembros a un grupo de usuarios, la actualización puede tardar algún tiempo en extenderse a todos los clientes de su entorno de gestión de identidades.

Pasos de verificación

  • Usando el comando ipa group-show para verificar que el usuario y el grupo fueron agregados como miembros administradores.

    $ ipa group-show group_a
    Group name: group_a
    GID: 1133400009
    Membership managed by groups: group_admins
    Membership managed by users: test

Recursos adicionales

  • Consulte ipa group-add-member-manager --help para más detalles.

12.9. Visualización de los miembros del grupo mediante la CLI de IdM

Esta sección describe cómo ver los miembros de un grupo mediante la CLI de IdM. Puede ver los miembros directos e indirectos del grupo. Para obtener más información, consulte Miembros directos e indirectos del grupo.

Procedimiento:

  • Para listar los miembros de un grupo, utilice el comando ipa group-show group_name comando. Por ejemplo:

    $ ipa group-show group_a
      ...
      Member users: user_a
      Member groups: group_b
      Indirect Member users: user_b
    Nota

    La lista de miembros indirectos no incluye a los usuarios externos de los dominios de confianza de Active Directory. Los objetos de usuario de confianza de Active Directory no son visibles en la interfaz de Gestión de identidades porque no existen como objetos LDAP dentro de Gestión de identidades.

12.10. Eliminación de un miembro de un grupo de usuarios mediante la CLI de IdM

Esta sección describe cómo eliminar un miembro de un grupo de usuarios mediante la CLI de IdM.

Requisitos previos

Procedimiento

  1. Optional. Utilice el comando ipa group-show para confirmar que el grupo incluye al miembro que desea eliminar.
  2. Eliminar un miembro de un grupo de usuarios mediante el comando ipa group-remove-member.

    Especifique los miembros a eliminar utilizando estas opciones:

    • --users elimina un usuario de IdM
    • --external elimina un usuario que existe fuera del dominio IdM, en el formato de DOMAIN\user_name o user_name@domain
    • --groups elimina un grupo de usuarios de IdM

    Por ejemplo, para eliminar user1, user2, y group1 de un grupo llamado group_name:

    $ ipa group-remove-member group_name --users=user1 --users=user2 --groups=group1

12.11. Eliminación de usuarios o grupos como administradores miembros de un grupo de usuarios de IdM mediante la CLI de IdM

En esta sección se describe cómo eliminar usuarios o grupos como administradores miembros de un grupo de usuarios IdM mediante la CLI de IdM. Los miembros administradores pueden eliminar usuarios o grupos de los grupos de usuarios de IdM, pero no pueden cambiar los atributos de un grupo.

Requisitos previos

  • Debe iniciar la sesión como administrador. Para más detalles, consulte Uso de kinit para iniciar sesión en IdM manualmente.
  • Debes tener el nombre del usuario administrador de miembros existente o del grupo que estás eliminando y el nombre del grupo que están administrando.

Procedimiento

  • Elimine a un usuario como gestor miembro de un grupo de usuarios IdM mediante el comando ipa group-remove-member-manager.

    Por ejemplo, para eliminar el usuario test como miembro gestor de group_a:

    $ ipa group-remove-member-manager group_a --users=test
    Group name: group_a
    GID: 1133400009
    Membership managed by groups: group_admins
    ---------------------------
    Number of members removed 1
    ---------------------------

    El usuario test ya no puede gestionar a los miembros de group_a.

  • Elimine un grupo como gestor de miembros de un grupo de usuarios IdM mediante el comando ipa group-remove-member-manager.

    Por ejemplo, para eliminar el grupo group_admins como gestor de miembros de group_a:

    $ ipa group-remove-member-manager group_a --groups=group_admins
    Group name: group_a
    GID: 1133400009
    ---------------------------
    Number of members removed 1
    ---------------------------

    El grupo group_admins ya no puede gestionar a los miembros de group_a.

Nota

Después de eliminar un gestor de miembros de un grupo de usuarios, la actualización puede tardar algún tiempo en extenderse a todos los clientes de su entorno de Gestión de identidades.

Pasos de verificación

  • Usando el comando ipa group-show para verificar que el usuario y el grupo fueron removidos como miembros administradores.

    $ ipa group-show group_a
    Group name: group_a
    GID: 1133400009

Recursos adicionales

  • Consulte ipa group-remove-member-manager --help para más detalles.

Capítulo 13. Gestión de grupos de usuarios en la interfaz web de IdM

Este capítulo presenta la gestión de grupos de usuarios mediante la interfaz web de IdM.

Un grupo de usuarios es un conjunto de usuarios con privilegios, políticas de contraseña y otras características comunes.

Un grupo de usuarios en la gestión de identidades (IdM) puede incluir:

  • Usuarios de IdM
  • otros grupos de usuarios de IdM
  • usuarios externos, que son usuarios que existen fuera de IdM

13.1. Los diferentes tipos de grupos en IdM

IdM admite los siguientes tipos de grupos:

Grupos POSIX (por defecto)

Los grupos POSIX admiten atributos POSIX de Linux para sus miembros. Tenga en cuenta que los grupos que interactúan con Active Directory no pueden utilizar atributos POSIX.

Los atributos POSIX identifican a los usuarios como entidades separadas. Ejemplos de atributos POSIX relevantes para los usuarios incluyen uidNumber, un número de usuario (UID), y gidNumber, un número de grupo (GID).

Grupos no POSIX

Los grupos no POSIX no soportan los atributos POSIX. Por ejemplo, estos grupos no tienen definido un GID.

Todos los miembros de este tipo de grupo deben pertenecer al dominio IdM.

Grupos externos

Utilice los grupos externos para añadir miembros de grupos que existen en un almacén de identidades fuera del dominio de IdM, como por ejemplo

  • Un sistema local
  • Un dominio de Active Directory
  • Un servicio de directorio

Los grupos externos no soportan los atributos POSIX. Por ejemplo, estos grupos no tienen un GID definido.

Tabla 13.1. Grupos de usuarios creados por defecto

Nombre del grupoMiembros del grupo por defecto

ipausers

Todos los usuarios de IdM

admins

Usuarios con privilegios administrativos, incluido el usuario por defecto admin

editors

Este es un grupo heredado que ya no tiene privilegios especiales

trust admins

Usuarios con privilegios para gestionar los fideicomisos de Active Directory

Cuando se añade un usuario a un grupo de usuarios, el usuario obtiene los privilegios y las políticas asociadas al grupo. Por ejemplo, para conceder privilegios administrativos a un usuario, añádalo al grupo admins.

Aviso

No elimine el grupo admins. Como admins es un grupo predefinido requerido por IdM, esta operación causa problemas con ciertos comandos.

Además, IdM crea user private groups por defecto cada vez que se crea un nuevo usuario en IdM. Para obtener más información sobre los grupos privados, consulte Añadir usuarios sin grupo privado.

13.2. Miembros directos e indirectos del grupo

Los atributos de grupo de usuarios en IdM se aplican tanto a los miembros directos como a los indirectos: cuando el grupo B es miembro del grupo A, todos los usuarios del grupo B se consideran miembros indirectos del grupo A.

Por ejemplo, en el siguiente diagrama:

  • El usuario 1 y el usuario 2 son direct members del grupo A.
  • Los usuarios 3, 4 y 5 son indirect members del grupo A.

Figura 13.1. Afiliación directa e indirecta al grupo

84 RHEL IdM 0420 user group

Si establece una política de contraseñas para el grupo de usuarios A, la política también se aplica a todos los usuarios del grupo B.

13.3. Añadir un grupo de usuarios mediante la interfaz web de IdM

Esta sección describe cómo añadir un grupo de usuarios mediante la interfaz web de IdM.

Requisitos previos

  • Ha iniciado la sesión en la interfaz web de IdM.

Procedimiento

  1. Haga clic en Identity → Groups, y seleccione User Groups en la barra lateral izquierda.
  2. Haga clic en Add para empezar a añadir el grupo.
  3. Rellene la información sobre el grupo. Para obtener más información sobre los tipos de grupos de usuarios, consulte Los diferentes tipos de grupos en IdM.

    Puede especificar un GID personalizado para el grupo. Si lo hace, tenga cuidado de evitar conflictos de ID. Si no se especifica un GID personalizado, IdM asigna automáticamente un GID del rango de ID disponibles.

    user group add dialog
  4. Haga clic en Add para confirmar.

13.4. Eliminación de un grupo de usuarios mediante la interfaz web de IdM

Esta sección describe cómo eliminar un grupo de usuarios mediante la interfaz web de IdM. Tenga en cuenta que la eliminación de un grupo no elimina los miembros del grupo de IdM.

Requisitos previos

  • Ha iniciado la sesión en la interfaz web de IdM.

Procedimiento

  1. Haga clic en Identity → Groups y seleccione User Groups.
  2. Seleccione el grupo que desea eliminar.
  3. Haga clic en Delete.
  4. Haga clic en Delete para confirmar.

13.5. Añadir un miembro a un grupo de usuarios mediante la interfaz web de IdM

Puede añadir tanto usuarios como grupos de usuarios como miembros de un grupo de usuarios. Para obtener más información, consulte Los diferentes tipos de grupo en IdM y Miembros directos e indirectos del grupo.

Requisitos previos

  • Ha iniciado la sesión en la interfaz web de IdM.

Procedimiento

  1. Haga clic en Identity → Groups y seleccione User Groups en la barra lateral izquierda.
  2. Haga clic en el nombre del grupo.
  3. Seleccione el tipo de miembro del grupo que desea añadir: Users, User Groups, o External.

    groups add member updated
  4. Haga clic en Add.
  5. Seleccione la casilla junto a uno o más miembros que desee añadir.
  6. Haga clic en la flecha hacia la derecha para mover los miembros seleccionados al grupo.

    groups add member dialog
  7. Haga clic en Add para confirmar.

13.6. Añadir usuarios o grupos como administradores miembros de un grupo de usuarios de IdM mediante la interfaz web

En esta sección se describe cómo añadir usuarios o grupos como administradores de miembros a un grupo de usuarios IdM mediante la interfaz web. Los gestores de miembros pueden añadir usuarios o grupos a los grupos de usuarios de IdM, pero no pueden cambiar los atributos de un grupo.

Requisitos previos

  • Ha iniciado la sesión en la interfaz web de IdM.
  • Debes tener el nombre del usuario o grupo que vas a añadir como gestor de miembros y el nombre del grupo que quieres que gestione.

Procedimiento

  1. Haga clic en Identity → Groups y seleccione User Groups en la barra lateral izquierda.
  2. Haga clic en el nombre del grupo.
  3. Seleccione el tipo de gestor de miembros del grupo que desea añadir: Users o User Groups.

    groups add member manager
  4. Haga clic en Add.
  5. Seleccione la casilla junto a uno o más miembros que desee añadir.
  6. Haga clic en la flecha hacia la derecha para mover los miembros seleccionados al grupo.

    groups add member managers users
  7. Haga clic en Add para confirmar.
Nota

Después de añadir un gestor de miembros a un grupo de usuarios, la actualización puede tardar algún tiempo en extenderse a todos los clientes de su entorno de gestión de identidades.

Pasos de verificación

  • Compruebe que el usuario o grupo de usuarios recién añadido se ha añadido a la lista de usuarios o grupos de usuarios del administrador de miembros:

    groups member manager added

Recursos adicionales

  • Para más información, consulte ipa group-add-member-manager --help.

13.7. Visualización de los miembros del grupo mediante la interfaz web de IdM

Esta sección describe cómo ver los miembros de un grupo mediante la interfaz web de IdM. Puede ver los miembros directos e indirectos del grupo. Para obtener más información, consulte Miembros directos e indirectos del grupo.

Requisitos previos

  • Ha iniciado la sesión en la interfaz web de IdM.

Procedimiento

  1. Seleccione Identity → Groups.
  2. Seleccione User Groups en la barra lateral izquierda.
  3. Haga clic en el nombre del grupo que desea ver.
  4. Cambia entre Direct Membership y Indirect Membership.

    groups menu clean

13.8. Eliminación de un miembro de un grupo de usuarios mediante la interfaz web de IdM

Esta sección describe cómo eliminar un miembro de un grupo de usuarios mediante la interfaz web de IdM.

Requisitos previos

  • Ha iniciado la sesión en la interfaz web de IdM.

Procedimiento

  1. Haga clic en Identity → Groups y seleccione User Groups en la barra lateral izquierda.
  2. Haga clic en el nombre del grupo.
  3. Seleccione el tipo de miembro del grupo que desea eliminar: Users, User Groups, o External.

    groups add member updated
  4. Seleccione la casilla junto al miembro que desea eliminar.
  5. Haga clic en Delete.
  6. Haga clic en Delete para confirmar.

13.9. Eliminación de usuarios o grupos como administradores miembros de un grupo de usuarios de IdM mediante la interfaz web

En esta sección se describe cómo eliminar usuarios o grupos como administradores de miembros de un grupo de usuarios IdM mediante la interfaz web. Los administradores de miembros pueden eliminar usuarios o grupos de los grupos de usuarios de IdM, pero no pueden cambiar los atributos de un grupo.

Requisitos previos

  • Ha iniciado la sesión en la interfaz web de IdM.
  • Debes tener el nombre del usuario administrador de miembros existente o del grupo que estás eliminando y el nombre del grupo que están administrando.

Procedimiento

  1. Haga clic en Identity → Groups y seleccione User Groups en la barra lateral izquierda.
  2. Haga clic en el nombre del grupo.
  3. Seleccione el tipo de gestor de socios que desea eliminar: Users o User Groups.

    groups add member manager
  4. Seleccione la casilla junto al gestor de miembros que desea eliminar.
  5. Haga clic en Delete.
  6. Haga clic en Delete para confirmar.
Nota

Después de eliminar un gestor de miembros de un grupo de usuarios, la actualización puede tardar algún tiempo en extenderse a todos los clientes de su entorno de Gestión de identidades.

Pasos de verificación

  • Compruebe que el usuario o grupo de usuarios ha sido eliminado de la lista de usuarios o grupos de usuarios del administrador de miembros:

    groups member manager removed

Recursos adicionales

  • Consulte ipa group-add-member-manager --help para más detalles.

Capítulo 14. Gestión de grupos de usuarios con Ansible Playbooks

En esta sección se presenta la gestión de grupos de usuarios mediante los playbooks de Ansible, incluyendo lo siguiente:

14.1. Garantizar la presencia de los grupos de IdM y de los miembros de los grupos mediante los playbooks de Ansible

El siguiente procedimiento describe cómo garantizar la presencia de los grupos de IdM y de los miembros de los grupos -tanto de los usuarios como de los grupos de usuarios- mediante un libro de jugadas de Ansible.

Requisitos previos

Procedimiento

  1. Cree un archivo de inventario, por ejemplo inventory.file, y defina en él ipaserver:

    [ipaserver]
    server.idm.example.com
  2. Cree un archivo de playbook de Ansible con la información necesaria de usuarios y grupos:

    ---
    - name: Playbook to handle groups
      hosts: ipaserver
      become: true
    
      tasks:
      - name: Create group ops with gid 1234
        ipagroup:
          ipaadmin_password: MySecret123
          name: ops
          gidnumber: 1234
    
      - name: Create group sysops
        ipagroup:
          ipaadmin_password: MySecret123
          name: sysops
          user:
          - idm_user
    
      - name: Create group appops
        ipagroup:
          ipaadmin_password: MySecret123
          name: appops
    
      - name: Add group members sysops and appops to group ops
        ipagroup:
          ipaadmin_password: MySecret123
          name: ops
          group:
          - sysops
          - appops
  3. Ejecuta el libro de jugadas:

    $ ansible-playbook -v -i path_to_inventory_directory/inventory.file path_to_playbooks_directory/add-group-members.yml

Pasos de verificación

Puede verificar si el grupo ops contiene sysops y appops como miembros directos y idm_user como miembro indirecto utilizando el comando ipa group-show:

  1. Entre en ipaserver como administrador:

    $ ssh admin@server.idm.example.com
    Password:
    [admin@server /]$
  2. Mostrar información sobre ops:

    ipaserver]$ ipa group-show ops
      Group name: ops
      GID: 1234
      Member groups: sysops, appops
      Indirect Member users: idm_user

    Los grupos appops y sysops -este último incluye al usuario idm_user - existen en IdM.

Recursos adicionales

  • Para obtener más información sobre cómo garantizar la presencia de grupos de usuarios mediante Ansible, consulte el archivo /usr/share/doc/ansible-freeipa/README-group.md Markdown.

14.2. Garantizar la presencia de los gestores de miembros en los grupos de usuarios de IdM mediante los libros de juego de Ansible

El siguiente procedimiento describe cómo garantizar la presencia de los administradores de miembros de IdM -tanto usuarios como grupos de usuarios- mediante un libro de jugadas de Ansible.

Requisitos previos

  • Conoce la contraseña del administrador de IdM.
  • Ha instalado el paquete ansible-freeipa en el controlador de Ansible.
  • Debes tener el nombre del usuario o grupo que vas a añadir como gestor de miembros y el nombre del grupo que quieres que gestione.

Procedimiento

  1. Cree un archivo de inventario, por ejemplo inventory.file, y defina en él ipaserver:

    [ipaserver]
    server.idm.example.com
  2. Cree un archivo de playbook de Ansible con la información necesaria para la gestión de usuarios y miembros de grupos:

    ---
    - name: Playbook to handle membership management
      hosts: ipaserver
      become: true
    
      tasks:
      - name: Ensure user test is present for group_a
        ipagroup:
          ipaadmin_password: MySecret123
          name: group_a
          membermanager_user: test
    
      - name: Ensure group_admins is present for group_a
        ipagroup:
          ipaadmin_password: MySecret123
          name: group_a
          membermanager_group: group_admins
  3. Ejecuta el libro de jugadas:

    $ ansible-playbook -v -i path_to_inventory_directory/inventory.file path_to_playbooks_directory/add-member-managers-user-groups.yml

Pasos de verificación

Puede verificar si el grupo group_a contiene test como gestor de miembros y group_admins es un gestor de miembros de group_a utilizando el comando ipa group-show:

  1. Entre en ipaserver como administrador:

    $ ssh admin@server.idm.example.com
    Password:
    [admin@server /]$
  2. Mostrar información sobre managergroup1:

    ipaserver]$ ipa group-show group_a
      Group name: group_a
      GID: 1133400009
      Membership managed by groups: group_admins
      Membership managed by users: test

Recursos adicionales

  • Véase ipa host-add-member-manager --help.
  • Consulte la página de manual ipa.

14.3. Garantizar la ausencia de gestores de miembros en los grupos de usuarios de IdM mediante libros de juego de Ansible

El siguiente procedimiento describe cómo garantizar la ausencia de administradores de miembros de IdM -tanto usuarios como grupos de usuarios- mediante un libro de jugadas de Ansible.

Requisitos previos

  • Conoce la contraseña del administrador de IdM.
  • Ha instalado el paquete ansible-freeipa en el controlador de Ansible.
  • Debes tener el nombre del usuario administrador de miembros existente o del grupo que estás eliminando y el nombre del grupo que están administrando.

Procedimiento

  1. Cree un archivo de inventario, por ejemplo inventory.file, y defina en él ipaserver:

    [ipaserver]
    server.idm.example.com
  2. Cree un archivo de playbook de Ansible con la información necesaria para la gestión de usuarios y miembros de grupos:

    ---
    - name: Playbook to handle membership management
      hosts: ipaserver
      become: true
    
      tasks:
      - name: Ensure member manager user and group members are absent for group_a
        ipagroup:
          ipaadmin_password: MySecret123
          name: group_a
          membermanager_user: test
          membermanager_group: group_admins
          action: member
          state: absent
  3. Ejecuta el libro de jugadas:

    $ ansible-playbook -v -i path_to_inventory_directory/inventory.file path_to_playbooks_directory/ensure-member-managers-are-absent.yml

Pasos de verificación

Puede verificar si el grupo group_a no contiene test como gestor de miembros y group_admins como gestor de miembros de group_a utilizando el comando ipa group-show:

  1. Entre en ipaserver como administrador:

    $ ssh admin@server.idm.example.com
    Password:
    [admin@server /]$
  2. Mostrar información sobre el grupo_a:

    ipaserver]$ ipa group-show group_a
      Group name: group_a
      GID: 1133400009

Recursos adicionales

  • Véase ipa host-remove-member-manager --help.
  • Consulte la página de manual ipa.

Capítulo 15. Automatización de la pertenencia a un grupo mediante la CLI de IdM

El uso de la pertenencia automática a grupos le permite asignar usuarios y hosts a grupos automáticamente en función de sus atributos. Por ejemplo, puede:

  • Divida las entradas de usuarios de los empleados en grupos en función del responsable, la ubicación o cualquier otro atributo.
  • Dividir los anfitriones en función de su clase, ubicación o cualquier otro atributo.
  • Añadir todos los usuarios o todos los hosts a un único grupo global.

Este capítulo abarca los siguientes temas:

15.1. Ventajas de la afiliación automática al grupo

El uso de la afiliación automática de usuarios le permite:

  • Reduce the overhead of manually managing group memberships

    Ya no es necesario asignar manualmente cada usuario y host a los grupos.

  • Improve consistency in user and host management

    Los usuarios y los hosts se asignan a grupos en función de criterios estrictamente definidos y evaluados automáticamente.

  • Simplify the management of group-based settings

    Se definen varias configuraciones para los grupos y luego se aplican a los miembros individuales del grupo, por ejemplo, reglas de sudo, automontaje o control de acceso. Añadir usuarios y hosts a los grupos automáticamente facilita la gestión de estos ajustes.

15.2. Reglas de los miembros automáticos

Al configurar la pertenencia automática a un grupo, el administrador define las reglas de automembresía. Una regla de automembresía se aplica a un usuario específico o a un grupo de destino del host. No puede aplicarse a más de un grupo a la vez.

Después de crear una regla, el administrador le añade condiciones. Éstas especifican qué usuarios o hosts se incluyen o excluyen del grupo de destino:

  • Inclusive conditions

    Cuando una entrada de usuario o host cumple una condición de inclusión, se incluirá en el grupo de destino.

  • Exclusive conditions

    Cuando una entrada de usuario o host cumple una condición de exclusividad, no se incluirá en el grupo de destino.

Las condiciones se especifican como expresiones regulares en el formato de expresiones regulares compatibles con Perl (PCRE). Para más información sobre PCRE, consulte la página man de pcresyntax(3).

Nota

IdM evalúa las condiciones exclusivas antes que las inclusivas. En caso de conflicto, las condiciones exclusivas tienen prioridad sobre las inclusivas.

Una regla de automembresía se aplica a cada entrada creada en el futuro. Estas entradas se añadirán automáticamente al grupo de destino especificado. Si una entrada cumple las condiciones especificadas en varias reglas de automembresía, se añadirá a todos los grupos correspondientes.

Las entradas existentes son not afectadas por la nueva regla. Si desea modificar las entradas existentes, consulte Aplicación de reglas de automembresía a las entradas existentes mediante la CLI de IdM.

15.3. Añadir una regla de automembresía utilizando la CLI de IdM

En esta sección se describe la adición de una regla de miembros automáticos mediante la CLI de IdM. Para obtener información sobre las reglas de miembros automáticos, consulte Reglas de miembros automáticos.

Después de añadir una regla de miembro automático, puede añadirle condiciones mediante el procedimiento descrito en Añadir una condición a una regla de miembro automático.

Nota

Las entradas existentes son not afectadas por la nueva regla. Si desea modificar las entradas existentes, consulte Aplicación de reglas de automembresía a las entradas existentes mediante la CLI de IdM.

Requisitos previos

Procedimiento

  1. Introduzca el comando ipa automember-add para añadir una regla de automembresía.
  2. Cuando se le pida, especifique:

    • Automember rule. Este es el nombre del grupo de destino.
    • Grouping Type. Esto especifica si la regla se dirige a un grupo de usuarios o a un grupo de hosts. Para dirigirse a un grupo de usuarios, introduzca group. Para dirigirse a un grupo de hosts, introduzca hostgroup.

    Por ejemplo, para añadir una regla de automembresía para un grupo de usuarios llamado user_group:

    $ ipa automember-add
    Automember Rule: user_group
    Grouping Type: group
    --------------------------------
    Added automember rule "user_group"
    --------------------------------
        Automember Rule: user_group

Pasos de verificación

15.4. Cómo añadir una condición a una regla de automembresía mediante la CLI de IdM

En esta sección se describe cómo añadir una condición a una regla de miembros automáticos mediante la CLI de IdM. Para obtener información sobre las reglas de miembros automáticos, consulte Reglas de miembros automáticos.

Requisitos previos

Procedimiento

  1. Defina una o más condiciones inclusivas o exclusivas utilizando el comando ipa automember-add-condition.
  2. Cuando se le pida, especifique:

    • Automember rule. Este es el nombre de la regla de destino. Para más detalles, consulte las reglas de Automember.
    • Attribute Key. Especifica el atributo de entrada al que se aplicará el filtro. Por ejemplo, uid para los usuarios.
    • Grouping Type. Esto especifica si la regla se dirige a un grupo de usuarios o a un grupo de hosts. Para dirigirse a un grupo de usuarios, introduzca group. Para dirigirse a un grupo de hosts, introduzca hostgroup.
    • Inclusive regex y Exclusive regex. Estos especifican una o más condiciones como expresiones regulares. Si sólo desea especificar una condición, pulse Enter cuando se le pida la otra.

    Por ejemplo, la siguiente condición se dirige a todos los usuarios con cualquier valor (.*) en su atributo de inicio de sesión de usuario (uid).

    $ ipa automember-add-condition
    Automember Rule: user_group
    Attribute Key: uid
    Grouping Type: group
    [Inclusive Regex]: .*
    [Exclusive Regex]:
    ----------------------------------
    Added condition(s) to "user_group"
    ----------------------------------
      Automember Rule: user_group
      Inclusive Regex: uid=.*
    ----------------------------
    Number of conditions added 1
    ----------------------------

    Como otro ejemplo, puede utilizar una regla de automembresía para dirigirse a todos los usuarios de Windows sincronizados desde Active Directory (AD). Para ello, cree una condición que se dirija a todos los usuarios con ntUser en su atributo objectClass, que es compartido por todos los usuarios de AD:

    $ ipa automember-add-condition
    Automember Rule: ad_users
    Attribute Key: objectclass
    Grouping Type: group
    [Inclusive Regex]: ntUser
    [Exclusive Regex]:
    -------------------------------------
    Added condition(s) to "ad_users"
    -------------------------------------
      Automember Rule: ad_users
      Inclusive Regex: objectclass=ntUser
    ----------------------------
    Number of conditions added 1
    ----------------------------

Pasos de verificación

15.5. Visualización de las reglas existentes de los miembros automáticos mediante la CLI de IdM

Esta sección describe cómo ver las reglas existentes de los miembros automáticos utilizando la CLI de IdM.

Requisitos previos

Procedimiento

  1. Introduzca el comando ipa automember-find.
  2. Cuando se le solicite, especifique la dirección Grouping type:

    • Para seleccionar un grupo de usuarios, introduzca group.
    • Para apuntar a un grupo de hosts, introduzca hostgroup.

      Por ejemplo:

    $ ipa automember-find
    Grouping Type: group
    ---------------
    1 rules matched
    ---------------
      Automember Rule: user_group
      Inclusive Regex: uid=.*
    ----------------------------
    Number of entries returned 1
    ----------------------------

15.6. Eliminación de una regla de automembresía mediante la CLI de IdM

En esta sección se describe cómo eliminar una regla de automembresía mediante la CLI de IdM.

Al eliminar una regla de miembro automático también se eliminan todas las condiciones asociadas a la regla. Para eliminar sólo condiciones específicas de una regla, consulte Eliminación de una condición de una regla de miembros automáticos mediante la CLI de IdM.

Requisitos previos

Procedimiento

  1. Introduzca el comando ipa automember-del.
  2. Cuando se le pida, especifique:

    • Automember rule. Esta es la regla que desea eliminar.
    • Grouping rule. Esto especifica si la regla que desea eliminar es para un grupo de usuarios o un grupo de hosts. Introduzca group o hostgroup.

15.7. Eliminación de una condición de una regla de autómatas mediante la CLI de IdM

Esta sección describe cómo eliminar una condición específica de una regla de automembresía.

Requisitos previos

Procedimiento

  1. Introduzca el comando ipa automember-remove-condition.
  2. Cuando se le pida, especifique:

    • Automember rule. Es el nombre de la regla de la que se quiere eliminar una condición.
    • Attribute Key. Este es el atributo de entrada de destino. Por ejemplo, uid para los usuarios.
    • Grouping Type. Esto especifica si la condición que desea eliminar es para un grupo de usuarios o un grupo de hosts. Introduzca group o hostgroup.
    • Inclusive regex y Exclusive regex. En ellos se especifican las condiciones que desea eliminar. Si sólo quiere especificar una condición, pulse Enter cuando se le pida la otra.

      Por ejemplo:

    $ ipa automember-remove-condition
    Automember Rule: user_group
    Attribute Key: uid
    Grouping Type: group
    [Inclusive Regex]: .*
    [Exclusive Regex]:
    -----------------------------------
    Removed condition(s) from "user_group"
    -----------------------------------
      Automember Rule: user_group
    ------------------------------
    Number of conditions removed 1
    ------------------------------

15.8. Aplicación de reglas de automembresía a las entradas existentes mediante la CLI de IdM

Las reglas de Automember se aplican automáticamente a las entradas de usuarios y hosts creadas después de añadir las reglas. No se aplican de forma retroactiva a las entradas que existían antes de que se añadieran las reglas.

Para aplicar las reglas de automember a las entradas previamente añadidas, tienes que reconstruir manualmente la membresía automática. La reconstrucción de la membresía automática reevalúa todas las reglas de automember existentes y las aplica a todas las entradas de usuarios o hosts, o a entradas específicas.

Nota

Reconstrucción de la membresía automática does not eliminar las entradas de usuarios o hosts de los grupos, incluso si las entradas ya no coinciden con las condiciones de inclusión del grupo. Para eliminarlas manualmente, consulte Cómo eliminar un miembro de un grupo de usuarios mediante la CLI de IdM o Cómo eliminar miembros de grupos de hosts de IdM mediante la CLI.

Requisitos previos

Procedimiento

  • Para reconstruir la afiliación automática, introduzca el comando ipa automember-rebuild. Utiliza las siguientes opciones para especificar las entradas a las que dirigirte:

    • Para reconstruir la afiliación automática de todos los usuarios, utilice la opción --type=group:

      $ ipa automember-rebuild --type=group
      --------------------------------------------------------
      Automember rebuild task finished. Processed (9) entries.
      --------------------------------------------------------
    • Para reconstruir la afiliación automática de todos los hosts, utilice la opción --type=hostgroup.
    • Para reconstruir la membresía automática para un usuario o usuarios específicos, utilice la --users=target_user opción:

      $ ipa automember-rebuild --users=target_user1 --users=target_user2
      --------------------------------------------------------
      Automember rebuild task finished. Processed (2) entries.
      --------------------------------------------------------
    • Para reconstruir la membresía automática para un host o hosts específicos, utilice la opción --hosts=client.idm.example.com opción.

15.9. Configuración de un grupo de miembros automáticos por defecto mediante la CLI de IdM

Cuando se configura un grupo de miembros automáticos por defecto, las nuevas entradas de usuarios o hosts que no coinciden con ninguna regla de miembros automáticos se añaden automáticamente a este grupo por defecto.

Requisitos previos

Procedimiento

  1. Introduzca el comando ipa automember-default-group-set para configurar un grupo de automembresía por defecto.
  2. Cuando se le pida, especifique:

    • Default (fallback) Group, que especifica el nombre del grupo de destino.
    • Grouping Type, que especifica si el objetivo es un grupo de usuarios o un grupo de hosts. Para dirigirse a un grupo de usuarios, introduzca group. Para dirigirse a un grupo de hosts, introduzca hostgroup.

      Por ejemplo:

      $ ipa automember-default-group-set
      Default (fallback) Group: default_user_group
      Grouping Type: group
      ---------------------------------------------------
      Set default (fallback) group for automember "default_user_group"
      ---------------------------------------------------
        Default (fallback) Group: cn=default_user_group,cn=groups,cn=accounts,dc=example,dc=com
    Nota

    Para eliminar el grupo actual de miembros automáticos por defecto, introduzca el comando ipa automember-default-group-remove.

Pasos de verificación

  • Para verificar que el grupo está configurado correctamente, introduzca el comando ipa automember-default-group-show. El comando muestra el grupo actual por defecto de los miembros automáticos. Por ejemplo:

    $ ipa automember-default-group-show
    Grouping Type: group
      Default (fallback) Group: cn=default_user_group,cn=groups,cn=accounts,dc=example,dc=com

Capítulo 16. Automatización de la pertenencia a un grupo mediante la interfaz web de IdM

El uso de la pertenencia automática a grupos le permite asignar usuarios y hosts a grupos automáticamente en función de sus atributos. Por ejemplo, puede:

  • Divida las entradas de usuarios de los empleados en grupos en función del responsable, la ubicación o cualquier otro atributo.
  • Dividir los anfitriones en función de su clase, ubicación o cualquier otro atributo.
  • Añadir todos los usuarios o todos los hosts a un único grupo global.

Este capítulo abarca los siguientes temas:

16.1. Ventajas de la afiliación automática al grupo

El uso de la afiliación automática de usuarios le permite:

  • Reduce the overhead of manually managing group memberships

    Ya no es necesario asignar manualmente cada usuario y host a los grupos.

  • Improve consistency in user and host management

    Los usuarios y los hosts se asignan a grupos en función de criterios estrictamente definidos y evaluados automáticamente.

  • Simplify the management of group-based settings

    Se definen varias configuraciones para los grupos y luego se aplican a los miembros individuales del grupo, por ejemplo, reglas de sudo, automontaje o control de acceso. Añadir usuarios y hosts a los grupos automáticamente facilita la gestión de estos ajustes.

16.2. Reglas de los miembros automáticos

Al configurar la pertenencia automática a un grupo, el administrador define las reglas de automembresía. Una regla de automembresía se aplica a un usuario específico o a un grupo de destino del host. No puede aplicarse a más de un grupo a la vez.

Después de crear una regla, el administrador le añade condiciones. Éstas especifican qué usuarios o hosts se incluyen o excluyen del grupo de destino:

  • Inclusive conditions

    Cuando una entrada de usuario o host cumple una condición de inclusión, se incluirá en el grupo de destino.

  • Exclusive conditions

    Cuando una entrada de usuario o host cumple una condición de exclusividad, no se incluirá en el grupo de destino.

Las condiciones se especifican como expresiones regulares en el formato de expresiones regulares compatibles con Perl (PCRE). Para más información sobre PCRE, consulte la página man de pcresyntax(3).

Nota

IdM evalúa las condiciones exclusivas antes que las inclusivas. En caso de conflicto, las condiciones exclusivas tienen prioridad sobre las inclusivas.

Una regla de automembresía se aplica a cada entrada creada en el futuro. Estas entradas se añadirán automáticamente al grupo de destino especificado. Si una entrada cumple las condiciones especificadas en varias reglas de automembresía, se añadirá a todos los grupos correspondientes.

Las entradas existentes se ven afectadas por la nueva regla en not. Si desea modificar las entradas existentes, consulte Aplicación de reglas de automembresía a las entradas existentes mediante la interfaz web de IdM.

16.3. Añadir una regla de automembresía mediante la interfaz web de IdM

En esta sección se describe la adición de una regla de miembros automáticos mediante la interfaz web de IdM. Para obtener información sobre las reglas de automembresía, consulte Reglas de automembresía.

Nota

Las entradas existentes se ven afectadas por la nueva regla en not. Si desea modificar las entradas existentes, consulte Aplicación de reglas de automembresía a las entradas existentes mediante la interfaz web de IdM.

Requisitos previos

  • Ha iniciado la sesión en la interfaz web de IdM.
  • Debe ser miembro del grupo admins.
  • El grupo de destino de la nueva regla existe en IdM.

Procedimiento

  1. Haga clic en Identity → Automember, y seleccione User group rules o Host group rules.
  2. Haga clic en Add.
  3. En el campo Automember rule, seleccione el grupo al que se aplicará la regla. Este es el nombre del grupo de destino.

    automember rule add
  4. Haga clic en Add para confirmar.
  5. Opcional: Puede añadir condiciones a la nueva regla mediante el procedimiento descrito en Añadir una condición a una regla de miembro automático mediante la interfaz web de IdM.

16.4. Cómo añadir una condición a una regla de miembro automático mediante la interfaz web de IdM

En esta sección se describe cómo añadir una condición a una regla de miembros automáticos mediante la interfaz web de IdM. Para obtener información sobre las reglas de miembros automáticos, consulte Reglas de miembros automáticos.

Requisitos previos

  • Ha iniciado la sesión en la interfaz web de IdM.
  • Debe ser miembro del grupo admins.
  • La regla de destino existe en IdM.

Procedimiento

  1. Haga clic en Identity → Automember, y seleccione User group rules o Host group rules.
  2. Haga clic en la regla a la que desea añadir una condición.
  3. En las secciones Inclusive o Exclusive, haga clic en Añadir.

    automember condition add
  4. En el campo Attribute, seleccione el atributo requerido, por ejemplo uid.
  5. En el campo Expression, defina una expresión regular.
  6. Haga clic en Add.

    Por ejemplo, la siguiente condición se dirige a todos los usuarios con cualquier valor (.*) en su atributo de identificación de usuario (uid).

    automember add

16.5. Visualización de las reglas y condiciones existentes de los miembros automáticos mediante la interfaz web de IdM

Esta sección describe cómo ver las reglas y condiciones existentes de los miembros automáticos mediante la interfaz web de IdM.

Requisitos previos

  • Ha iniciado la sesión en la interfaz web de IdM.
  • Debe ser miembro del grupo admins.

Procedimiento

  1. Haga clic en Identity → Automember, y seleccione User group rules o Host group rules para ver las reglas respectivas de los miembros automáticos.
  2. Es opcional: Haga clic en una regla para ver las condiciones de esa regla en las secciones Inclusive o Exclusive.

    automember conditions

16.6. Eliminación de una regla de automembresía mediante la interfaz web de IdM

En esta sección se describe cómo eliminar una regla de miembro automático mediante la interfaz web de IdM.

Al eliminar una regla de miembro automático también se eliminan todas las condiciones asociadas a la regla. Para eliminar sólo condiciones específicas de una regla, consulte Eliminar una condición de una regla de miembros automáticos mediante la interfaz web de IdM.

Requisitos previos

  • Ha iniciado la sesión en la interfaz web de IdM.
  • Debe ser miembro del grupo admins.

Procedimiento

  1. Haga clic en Identity → Automember, y seleccione User group rules o Host group rules para ver las reglas respectivas de los miembros automáticos.
  2. Seleccione la casilla junto a la regla que desea eliminar.
  3. Haga clic en Delete.

    automember rule delete
  4. Haga clic en Delete para confirmar.

16.7. Eliminación de una condición de una regla de miembro automático mediante la interfaz web de IdM

En esta sección se describe cómo eliminar una condición específica de una regla de miembro automático mediante la interfaz web de IdM.

Requisitos previos

  • Ha iniciado la sesión en la interfaz web de IdM.
  • Debe ser miembro del grupo admins.

Procedimiento

  1. Haga clic en Identity → Automember, y seleccione User group rules o Host group rules para ver las reglas respectivas de los miembros automáticos.
  2. Haga clic en una regla para ver las condiciones de esa regla en las secciones Inclusive o Exclusive.
  3. Seleccione la casilla junto a las condiciones que desea eliminar.
  4. Haga clic en Delete.

    automember condition remove
  5. Haga clic en Delete para confirmar.

16.8. Aplicación de reglas de automembresía a las entradas existentes mediante la interfaz web de IdM

Las reglas de Automember se aplican automáticamente a las entradas de usuarios y hosts creadas después de añadir las reglas. No se aplican de forma retroactiva a las entradas que existían antes de que se añadieran las reglas.

Para aplicar las reglas de automember a las entradas previamente añadidas, tienes que reconstruir manualmente la membresía automática. La reconstrucción de la membresía automática reevalúa todas las reglas de automember existentes y las aplica a todas las entradas de usuarios o hosts, o a entradas específicas.

Nota

Reconstrucción de la membresía automática does not eliminar las entradas de usuarios o hosts de los grupos, incluso si las entradas ya no coinciden con las condiciones de inclusión del grupo. Para eliminarlas manualmente, consulte Cómo eliminar un miembro de un grupo de usuarios mediante la interfaz web de IdM o Cómo eliminar miembros de un grupo de hosts en la interfaz web de IdM.

16.8.1. Reconstrucción de la afiliación automática para todos los usuarios o hosts

Esta sección describe cómo reconstruir la membresía automática para todas las entradas de usuarios o hosts.

Requisitos previos

  • Ha iniciado la sesión en la interfaz web de IdM.
  • Debe ser miembro del grupo admins.

Procedimiento

  1. Seleccione IdentityUsers o Hosts.
  2. Haga clic en ActionsRebuild auto membership.

    automember rebuild

16.8.2. Reconstrucción de la membresía automática para un solo usuario o anfitrión

Esta sección describe cómo reconstruir la membresía automática para una entrada específica de usuario o host.

Requisitos previos

  • Ha iniciado la sesión en la interfaz web de IdM.
  • Debe ser miembro del grupo admins.

Procedimiento

  1. Seleccione IdentityUsers o Hosts.
  2. Haga clic en el nombre de usuario o de host deseado.
  3. Haga clic en ActionsRebuild auto membership.

    automember rebuild single

16.9. Configuración de un grupo de usuarios por defecto mediante la interfaz web de IdM

Cuando se configura un grupo de usuarios por defecto, las nuevas entradas de usuarios que no coinciden con ninguna regla de automembresía se añaden automáticamente a este grupo por defecto.

Requisitos previos

  • Ha iniciado la sesión en la interfaz web de IdM.
  • Debe ser miembro del grupo admins.
  • El grupo de usuarios de destino que desea establecer como predeterminado existe en IdM.

Procedimiento

  1. Haga clic en Identity → Automember, y seleccione User group rules.
  2. En el campo Default user group, seleccione el grupo que desea establecer como grupo de usuarios por defecto.

    Setting a default user group

16.10. Configuración de un grupo de hosts por defecto mediante la interfaz web de IdM

Cuando se configura un grupo de hosts por defecto, las nuevas entradas de hosts que no coinciden con ninguna regla de automembresía se añaden automáticamente a este grupo por defecto.

Requisitos previos

  • Ha iniciado la sesión en la interfaz web de IdM.
  • Debe ser miembro del grupo admins.
  • El grupo de host de destino que desea establecer como predeterminado existe en IdM.

Procedimiento

  1. Haga clic en Identity → Automember, y seleccione Host group rules.
  2. En el campo Default host group, seleccione el grupo que desea establecer como grupo de hosts por defecto.

    Setting a default host group

Capítulo 17. Gestión de reglas de autoservicio en IdM mediante la CLI

En este capítulo se presentan las reglas de autoservicio en Identity Management (IdM) y se describe cómo crear y editar reglas de acceso de autoservicio en la interfaz de línea de comandos (CLI).

17.1. Control de acceso de autoservicio en IdM

Las reglas de control de acceso de autoservicio definen qué operaciones puede realizar una entidad IdM en su entrada del servidor de directorio IdM: por ejemplo, los usuarios de IdM tienen la capacidad de actualizar sus propias contraseñas

Este método de control permite a una entidad IdM autentificada editar atributos específicos dentro de su entrada LDAP, pero no permite las operaciones add o delete en toda la entrada.

Aviso

Tenga cuidado cuando trabaje con las reglas de control de acceso de autoservicio: configurar las reglas de control de acceso de forma incorrecta puede elevar inadvertidamente los privilegios de una entidad.

17.2. Creación de reglas de autoservicio mediante la CLI

Este procedimiento describe la creación de reglas de acceso de autoservicio en IdM mediante la interfaz de línea de comandos (CLI).

Requisitos previos

Procedimiento

  • Para añadir una regla de autoservicio, utilice el comando ipa selfservice-add y especifique las dos opciones siguientes:

    --permissions
    establece los permisos read y write que concede la Instrucción de Control de Acceso (ACI).
    --attrs
    establece la lista completa de atributos a los que este ACI concede permiso.

Por ejemplo, para crear una regla de autoservicio que permita a los usuarios modificar los detalles de su propio nombre

$ ipa selfservice-add "Users can manage their own name details" --permissions=write --attrs=givenname --attrs=displayname --attrs=title --attrs=initials
-----------------------------------------------------------
Added selfservice "Users can manage their own name details"
-----------------------------------------------------------
    Self-service name: Users can manage their own name details
    Permissions: write
    Attributes: givenname, displayname, title, initials

17.3. Edición de reglas de autoservicio mediante la CLI

Este procedimiento describe la edición de reglas de acceso de autoservicio en IdM mediante la interfaz de línea de comandos (CLI).

Requisitos previos

Procedimiento

  1. Optional: Muestra las reglas de autoservicio existentes con el comando ipa selfservice-find.
  2. Optional: Muestra los detalles de la regla de autoservicio que desea modificar con el comando ipa selfservice-show.
  3. Utilice el comando ipa selfservice-mod para editar una regla de autoservicio.

Por ejemplo

$ ipa selfservice-mod "Users can manage their own name details" --attrs=givenname --attrs=displayname --attrs=title --attrs=initials --attrs=surname
--------------------------------------------------------------
Modified selfservice "Users can manage their own name details"
--------------------------------------------------------------
Self-service name: Users can manage their own name details
Permissions: write
Attributes: givenname, displayname, title, initials
Importante

El uso del comando ipa selfservice-mod sobrescribe los permisos y atributos previamente definidos, por lo que incluya siempre la lista completa de permisos y atributos existentes junto con los nuevos que desee definir.

Pasos de verificación

  • Utilice el comando ipa selfservice-show para mostrar la regla de autoservicio que ha editado.
$ ipa selfservice-show "Users can manage their own name details"
--------------------------------------------------------------
Self-service name: Users can manage their own name details
Permissions: write
Attributes: givenname, displayname, title, initials

17.4. Eliminación de reglas de autoservicio mediante la CLI

Este procedimiento describe la eliminación de reglas de acceso de autoservicio en IdM mediante la interfaz de línea de comandos (CLI).

Requisitos previos

Procedimiento

  • Utilice el comando ipa selfservice-del para eliminar una regla de autoservicio.

Por ejemplo

$ ipa selfservice-del "Users can manage their own name details"
-----------------------------------------------------------
Deleted selfservice "Users can manage their own name details"
-----------------------------------------------------------

Pasos de verificación

  • Utilice el comando ipa selfservice-find para mostrar todas las reglas de autoservicio. La regla que acaba de eliminar debería desaparecer.

Capítulo 18. Gestión de las reglas de autoservicio mediante la interfaz web de IdM

Este capítulo presenta las reglas de autoservicio en la Gestión de identidades (IdM) y describe cómo crear y editar reglas de acceso de autoservicio en la interfaz web (IdM Web UI).

18.1. Control de acceso de autoservicio en IdM

Las reglas de control de acceso de autoservicio definen qué operaciones puede realizar una entidad IdM en su entrada del servidor de directorio IdM: por ejemplo, los usuarios de IdM tienen la capacidad de actualizar sus propias contraseñas

Este método de control permite a una entidad IdM autentificada editar atributos específicos dentro de su entrada LDAP, pero no permite las operaciones add o delete en toda la entrada.

Aviso

Tenga cuidado cuando trabaje con las reglas de control de acceso de autoservicio: configurar las reglas de control de acceso de forma incorrecta puede elevar inadvertidamente los privilegios de una entidad.

18.2. Creación de reglas de autoservicio mediante la interfaz web de IdM

Este procedimiento describe cómo crear reglas de acceso de autoservicio en IdM mediante la interfaz web (IdM Web UI).

Requisitos previos

Procedimiento

  1. Abra el submenú Role-Based Access Control en la pestaña IPA Server y seleccione Self Service Permissions.
  2. Haga clic en Add en la parte superior derecha de la lista de las reglas de acceso de autoservicio:

    Añadir una regla de autoservicio

  3. Se abre la ventana Add Self Service Permission. Introduzca el nombre de la nueva regla de autoservicio en el campo Self-service name. Se permiten espacios:

    Formulario para añadir una regla de autoservicio

  4. Seleccione las casillas de verificación junto a los atributos que desea que los usuarios puedan editar.
  5. Optional: Si un atributo al que quiere dar acceso no está en la lista, puede añadir un listado para él:

    1. Haga clic en el botón Add.
    2. Introduzca el nombre del atributo en el campo de texto Attribute de la siguiente ventana Add Custom Attribute.
    3. Pulse el botón OK para añadir el atributo
    4. Compruebe que el nuevo atributo está seleccionado
  6. Haga clic en el botón Add en la parte inferior del formulario para guardar la nueva regla de autoservicio.
    También puede guardar y continuar editando la regla de autoservicio haciendo clic en el botón Add and Edit, o guardar y añadir más reglas haciendo clic en el botón Add and Add another.

18.3. Edición de reglas de autoservicio mediante la interfaz web de IdM

Este procedimiento describe cómo editar las reglas de acceso de autoservicio en IdM mediante la interfaz web (IdM Web UI).

Requisitos previos

Procedimiento

  1. Abra el submenú Role-Based Access Control en la pestaña IPA Server y seleccione Self Service Permissions.
  2. Haga clic en el nombre de la regla de autoservicio que desea modificar.

    Editar una regla de autoservicio existente

  3. La página de edición sólo le permite editar la lista de atributos que desea añadir o eliminar de la regla de autoservicio. Active o desactive las casillas de verificación correspondientes.
  4. Haga clic en el botón Save para guardar los cambios en la regla de autoservicio.

18.4. Eliminación de reglas de autoservicio mediante la interfaz web de IdM

Este procedimiento describe cómo eliminar las reglas de acceso de autoservicio en IdM mediante la interfaz web (IdM Web UI).

Requisitos previos

Procedimiento

  1. Abra el submenú Role-Based Access Control en la pestaña IPA Server y seleccione Self Service Permissions.
  2. Seleccione la casilla junto a la regla que desea eliminar y, a continuación, haga clic en el botón Delete situado a la derecha de la lista.

    Borrar una regla de autoservicio

  3. Se abre un cuadro de diálogo, haga clic en Delete para confirmar.

Capítulo 19. Delegación de permisos sobre los usuarios mediante IdM CLI

La delegación es uno de los métodos de control de acceso en IdM, junto con las reglas de autoservicio y el control de acceso basado en roles.

La delegación es similar a los roles en el sentido de que a un grupo de usuarios se le asigna permiso para gestionar las entradas de otro grupo de usuarios. Sin embargo, la autoridad delegada se limita a la edición de los valores de atributos específicos; no concede la capacidad de añadir o eliminar entradas completas ni el control sobre atributos no especificados. Además, los grupos con autoridad delegada son grupos de usuarios de IdM existentes en lugar de roles creados específicamente para los controles de acceso.

Este capítulo abarca los siguientes temas:

19.1. Normas de delegación

Puedes delegar permisos sobre los usuarios creando reglas de delegación.

Las reglas de delegación permiten a un grupo de usuarios específico realizar operaciones de escritura (edición) en atributos específicos para usuarios de otro grupo de usuarios. Esta forma de regla de control de acceso se limita a la edición de los valores de atributos específicos; no concede la capacidad de añadir o eliminar entradas completas ni el control sobre atributos no especificados.

Las reglas de delegación utilizan los grupos de usuarios existentes en IdM. Puede utilizar la delegación para, por ejemplo, permitir que el grupo de usuarios managers gestione los atributos seleccionados de los usuarios del grupo de usuarios employees.

19.2. Creación de una regla de delegación mediante la CLI de IdM

Esta sección describe cómo crear una regla de delegación utilizando la CLI de IdM.

Requisitos previos

  • Está conectado como miembro del grupo admins.

Procedimiento

  • Introduzca el comando ipa delegation-add. Especifique las siguientes opciones:

    • --group: el grupo que is being granted permissions a las entradas de los usuarios en el grupo de usuarios.
    • --membergroup: el grupo whose entries can be edited por los miembros del grupo de delegación.
    • --permissions: si los usuarios tendrán derecho a ver los atributos dados (read) y a añadir o cambiar los atributos dados (write). Si no se especifican los permisos, sólo se añadirá el permiso write.
    • --attrs: los atributos que los usuarios del grupo de miembros pueden ver o editar.

    Por ejemplo:

$ ipa delegation-add "basic manager attributes" --permissions=read --permissions=write --attrs=businesscategory --attrs=departmentnumber --attrs=employeetype --attrs=employeenumber --group=managers --membergroup=employees
-------------------------------------------
Added delegation "basic manager attributes"
-------------------------------------------
  Delegation name: basic manager attributes
  Permissions: read, write
  Attributes: businesscategory, departmentnumber, employeetype, employeenumber
  Member user group: employees
  User group: managers

19.3. Visualización de las reglas de delegación existentes mediante la CLI de IdM

Esta sección describe cómo ver las reglas de delegación existentes utilizando la CLI de IdM.

Requisitos previos

  • Está conectado como miembro del grupo admins.

Procedimiento

  • Introduzca el comando ipa delegation-find:
$ ipa delegation-find
--------------------
1 delegation matched
--------------------
  Delegation name: basic manager attributes
  Permissions: read, write
  Attributes: businesscategory, departmentnumber, employeenumber, employeetype
  Member user group: employees
  User group: managers
----------------------------
Number of entries returned 1
----------------------------

19.4. Modificación de una regla de delegación mediante la CLI de IdM

Esta sección describe cómo modificar una regla de delegación existente mediante la CLI de IdM.

Importante

La opción --attrs sobrescribe la lista anterior de atributos admitidos, por lo que siempre debe incluirse la lista completa de atributos junto con los nuevos. Esto también se aplica a la opción --permissions.

Requisitos previos

  • Está conectado como miembro del grupo admins.

Procedimiento

  • Introduzca el comando ipa delegation-mod con los cambios deseados. Por ejemplo, para añadir el atributo displayname a la regla de ejemplo basic manager attributes:

    $ ipa delegation-mod "basic manager attributes" --attrs=businesscategory --attrs=departmentnumber --attrs=employeetype --attrs=employeenumber --attrs=displayname
    ----------------------------------------------
    Modified delegation "basic manager attributes"
    ----------------------------------------------
      Delegation name: basic manager attributes
      Permissions: read, write
      Attributes: businesscategory, departmentnumber, employeetype, employeenumber, displayname
      Member user group: employees
      User group: managers

19.5. Eliminación de una regla de delegación mediante la CLI de IdM

Esta sección describe cómo eliminar una regla de delegación existente mediante la CLI de IdM.

Requisitos previos

  • Está conectado como miembro del grupo admins.

Procedimiento

  • Introduzca el comando ipa delegation-del.
  • Cuando se le solicite, introduzca el nombre de la regla de delegación que desea eliminar:

    $ ipa delegation-del
    Delegation name: basic manager attributes
    ---------------------------------------------
    Deleted delegation "basic manager attributes"
    ---------------------------------------------

Capítulo 20. Delegación de permisos sobre los usuarios mediante IdM WebUI

La delegación es uno de los métodos de control de acceso en IdM, junto con las reglas de autoservicio y el control de acceso basado en roles.

La delegación es similar a los roles en el sentido de que a un grupo de usuarios se le asigna permiso para gestionar las entradas de otro grupo de usuarios. Sin embargo, la autoridad delegada se limita a la edición de los valores de atributos específicos; no concede la capacidad de añadir o eliminar entradas completas ni el control sobre atributos no especificados. Además, los grupos con autoridad delegada son grupos de usuarios de IdM existentes en lugar de roles creados específicamente para los controles de acceso.

Este capítulo abarca los siguientes temas:

20.1. Normas de delegación

Puedes delegar permisos sobre los usuarios creando reglas de delegación.

Las reglas de delegación permiten a un grupo de usuarios específico realizar operaciones de escritura (edición) en atributos específicos para usuarios de otro grupo de usuarios. Esta forma de regla de control de acceso se limita a la edición de los valores de atributos específicos; no concede la capacidad de añadir o eliminar entradas completas ni el control sobre atributos no especificados.

Las reglas de delegación utilizan los grupos de usuarios existentes en IdM. Puede utilizar la delegación para, por ejemplo, permitir que el grupo de usuarios managers gestione los atributos seleccionados de los usuarios del grupo de usuarios employees.

20.2. Creación de una regla de delegación mediante IdM WebUI

Esta sección describe cómo crear una regla de delegación utilizando la IdM WebUI.

Requisitos previos

  • Ha iniciado la sesión en la interfaz web de IdM como miembro del grupo admins.

Procedimiento

  1. En el menú IPA Server, haga clic en Role-Based Access ControlDelegations.
  2. Haga clic en Add.

    delegation list add
  3. En la ventana Add delegation, haga lo siguiente:

    1. Nombra la nueva regla de delegación.
    2. Establezca los permisos seleccionando las casillas de verificación que indican si los usuarios tendrán derecho a ver los atributos dados (read) y a añadir o cambiar los atributos dados (write).
    3. En el menú desplegable Grupo de usuarios, seleccione el grupo who is being granted permissions para ver o editar las entradas de los usuarios del grupo de miembros.
    4. En el menú desplegable Member user group, seleccione el grupo whose entries can be edited por miembros del grupo de delegación.
    5. En el cuadro de atributos, seleccione las casillas de verificación de los atributos a los que desea conceder permisos.

      delegation add UPDATED
    6. Haga clic en el botón Add para guardar la nueva regla de delegación.

20.3. Visualización de las reglas de delegación existentes mediante IdM WebUI

Esta sección describe cómo ver las reglas de delegación existentes utilizando la IdM WebUI.

Requisitos previos

  • Ha iniciado la sesión en la interfaz web de IdM como miembro del grupo admins.

Procedimiento

  1. En el menú IPA Server, haga clic en Role-Based Access ControlDelegations.

    delegation list

20.4. Modificación de una regla de delegación mediante IdM WebUI

Esta sección describe cómo modificar una regla de delegación existente utilizando la IdM WebUI.

Requisitos previos

  • Ha iniciado la sesión en la interfaz web de IdM como miembro del grupo admins.

Procedimiento

  1. En el menú IPA Server, haga clic en Role-Based Access ControlDelegations.

    delegation list
  2. Haga clic en la regla que desea modificar.
  3. Realice los cambios deseados:

    • Cambiar el nombre de la regla.
    • Cambie los permisos concedidos seleccionando las casillas que indican si los usuarios tendrán derecho a ver los atributos dados (read) y a añadir o cambiar los atributos dados (write).
    • En el menú desplegable Grupo de usuarios, seleccione el grupo who is being granted permissions para ver o editar las entradas de los usuarios del grupo de miembros.
    • En el menú desplegable Member user group, seleccione el grupo whose entries can be edited por miembros del grupo de delegación.
    • En el cuadro de atributos, seleccione las casillas de verificación de los atributos a los que desea conceder permisos. Para eliminar los permisos de un atributo, desmarque la casilla correspondiente.

      delegation modify
    • Pulse el botón Save para guardar los cambios.

20.5. Eliminación de una regla de delegación mediante IdM WebUI

Esta sección describe cómo eliminar una regla de delegación existente utilizando la IdM WebUI.

Requisitos previos

  • Ha iniciado la sesión en la interfaz web de IdM como miembro del grupo admins.

Procedimiento

  1. En el menú IPA Server, haga clic en Role-Based Access ControlDelegations.
  2. Seleccione la casilla junto a la regla que desea eliminar.
  3. Haga clic en Delete.

    delegation delete
  4. Haga clic en Delete para confirmar.

Capítulo 21. Gestión de los controles de acceso basados en roles en IdM mediante la CLI

En este capítulo se presenta el control de acceso basado en funciones en la gestión de identidades (IdM) y se describen las siguientes operaciones en la interfaz de línea de comandos (CLI):

21.1. Control de acceso basado en roles en IdM

El control de acceso basado en roles (RBAC) en IdM otorga un tipo de autoridad muy diferente a los usuarios en comparación con los controles de acceso de autoservicio y de delegación.

El control de acceso basado en roles se compone de tres partes:

  • Permissions concede el derecho a realizar una tarea específica, como añadir o eliminar usuarios, modificar un grupo, habilitar el acceso de lectura, etc.
  • Privileges combina los permisos, por ejemplo, todos los permisos necesarios para añadir un nuevo usuario.
  • Roles concede un conjunto de privilegios a usuarios, grupos de usuarios, hosts o grupos de hosts.

21.1.1. Permisos en IdM

Los permisos son la unidad de nivel más bajo del control de acceso basado en roles, definen las operaciones junto con las entradas LDAP a las que se aplican dichas operaciones. Comparable a los bloques de construcción, los permisos pueden asignarse a tantos privilegios como sea necesario.
Uno o más rights definen qué operaciones están permitidas:

  • write
  • read
  • search
  • compare
  • add
  • delete
  • all

Estas operaciones se aplican a tres direcciones básicas targets:

  • subtree: un nombre de dominio (DN); el subárbol bajo este DN
  • target filter: un filtro LDAP
  • target: DN con posibles comodines para especificar las entradas

Además, las siguientes opciones de conveniencia establecen los atributos correspondientes:

  • type: un tipo de objeto (usuario, grupo, etc.); establece subtree y target filter
  • memberof: miembros de un grupo; establece un target filter
  • targetgroup: concede el acceso para modificar un grupo específico (como la concesión de los derechos para gestionar la pertenencia a un grupo); establece un target

Con los permisos de IdM, puede controlar qué usuarios tienen acceso a qué objetos e incluso a qué atributos de estos objetos. IdM le permite permitir o bloquear atributos individuales o cambiar toda la visibilidad de una función específica de IdM, como usuarios, grupos o sudo, a todos los usuarios anónimos, a todos los usuarios autenticados o sólo a un determinado grupo de usuarios privilegiados.
Por ejemplo, la flexibilidad de este enfoque de los permisos es útil para un administrador que quiere limitar el acceso de los usuarios o grupos sólo a las secciones específicas a las que estos usuarios o grupos necesitan acceder y hacer que las otras secciones estén completamente ocultas para ellos.

Nota

Un permiso no puede contener otros permisos.

21.1.2. Permisos gestionados por defecto

Los permisos gestionados son permisos que vienen por defecto con IdM. Se comportan como otros permisos creados por el usuario, con las siguientes diferencias:

  • No se pueden eliminar ni modificar sus atributos de nombre, ubicación y destino.
  • Tienen tres conjuntos de atributos:

    • Default atributos, el usuario no puede modificarlos, ya que son gestionados por IdM
    • Included atributos, que son atributos adicionales añadidos por el usuario
    • Excluded atributos, que son atributos eliminados por el usuario

Un permiso gestionado se aplica a todos los atributos que aparecen en los conjuntos de atributos predeterminados e incluidos, pero no en el conjunto excluido.

Nota

Aunque no se puede eliminar un permiso gestionado, si se establece su tipo de enlace como permiso y se elimina el permiso gestionado de todos los privilegios, se desactiva de forma efectiva.

Los nombres de todos los permisos gestionados comienzan con System:, por ejemplo System: Add Sudo rule o System: Modify Services. Las versiones anteriores de IdM utilizaban un esquema diferente para los permisos por defecto. Por ejemplo, el usuario no podía eliminarlos y sólo podía asignarlos a los privilegios. La mayoría de estos permisos por defecto se han convertido en permisos gestionados, sin embargo, los siguientes permisos siguen utilizando el esquema anterior:

  • Añadir la tarea de reconstrucción de miembros automáticos
  • Añadir subentradas de configuración
  • Añadir acuerdos de replicación
  • Certificado Retirar Retención
  • Obtener el estado de los certificados de la CA
  • Rango de lectura del ADN
  • Modificar la gama de ADN
  • Leer la configuración de los gestores de PassSync
  • Modificar la configuración de los gestores de PassSync
  • Leer los acuerdos de replicación
  • Modificar los acuerdos de replicación
  • Eliminar los acuerdos de replicación
  • Leer la configuración de la base de datos LDBM
  • Solicitar certificado
  • Solicitar certificado ignorando las ACL de la CA
  • Solicitar certificados de un host diferente
  • Recuperar certificados de la CA
  • Revocar el certificado
  • Escribir la configuración IPA
Nota

Si intentas modificar un permiso gestionado desde la línea de comandos, el sistema no te permite cambiar los atributos que no puedes modificar, el comando falla. Si intentas modificar un permiso gestionado desde la interfaz web, los atributos que no puedes modificar están desactivados.

21.1.3. Privilegios en IdM

Un privilegio es un grupo de permisos aplicables a un rol.
Mientras que un permiso proporciona los derechos para hacer una sola operación, hay ciertas tareas de IdM que requieren múltiples permisos para tener éxito. Por lo tanto, un privilegio combina los diferentes permisos necesarios para realizar una tarea específica.
Por ejemplo, añadir un usuario requiere los siguientes permisos:

  • Crear una nueva entrada de usuario
  • Restablecer la contraseña de un usuario
  • Añadir el nuevo usuario al grupo de usuarios IPA por defecto

La combinación de estas tres tareas de bajo nivel en una tarea de nivel superior en forma de privilegio denominada Add User facilita la gestión de los roles. Además de usuarios y grupos de usuarios, también se asignan privilegios a hosts y grupos de hosts, así como a servicios de red. Esta práctica permite un control detallado de las operaciones de un conjunto de usuarios en un conjunto de hosts que utilizan servicios de red específicos.

Nota

Un privilegio no puede contener otros privilegios.

21.1.4. Roles en IdM

Un rol es una lista de privilegios que los usuarios especificados para el rol poseen.
En efecto, los permisos conceden la capacidad de realizar determinadas tareas de bajo nivel (crear una entrada de usuario, añadir una entrada a un grupo, etc.), los privilegios combinan uno o más de estos permisos necesarios para una tarea de nivel superior (como crear un nuevo usuario en un grupo determinado). Las funciones reúnen los privilegios necesarios: por ejemplo, una función de administrador de usuarios podría añadir, modificar y eliminar usuarios.

Importante

Los roles se utilizan para clasificar las acciones permitidas. No se utilizan como una herramienta para implementar la separación de privilegios o para proteger de la escalada de privilegios.

Nota

Los roles no pueden contener otros roles.

21.1.5. Funciones predefinidas en la gestión de identidades

Red Hat Identity Management proporciona la siguiente gama de funciones predefinidas:

Tabla 21.1. Roles predefinidos en la gestión de identidades

PapelPrivilegioDescripción

Servicio de asistencia técnica

Modificación de usuarios y restablecimiento de contraseñas, modificación de la pertenencia a grupos

Responsable de realizar tareas sencillas de administración de usuarios

Especialista en seguridad informática

Administradores de Netgroups, Administrador de HBAC, Administrador de Sudo

Responsable de la gestión de la política de seguridad, como los controles de acceso basados en el host, las reglas sudo

Especialista en TI

Administradores de hosts, administradores de grupos de hosts, administradores de servicios, administradores de autómatas

Responsable de la gestión de los anfitriones

Arquitecto de seguridad

Administrador de Delegación, Administradores de Replicación, Configuración IPA de Escritura, Administrador de Políticas de Contraseña

Responsable de la gestión del entorno de gestión de identidades, la creación de fideicomisos, la creación de acuerdos de replicación

Administrador de usuarios

Administradores de usuarios, administradores de grupos, administradores de usuarios de escenario

Responsable de la creación de usuarios y grupos

21.2. Gestión de los permisos de IdM en la CLI

Esta sección describe cómo gestionar los permisos de Gestión de Identidades (IdM) mediante la interfaz de línea de comandos (CLI).

Requisitos previos

Procedimiento

  1. Cree nuevas entradas de permisos con el comando ipa permission-add.
    Por ejemplo, para añadir un permiso llamado dns admin:

    $ ipa permission-add \ "dns admin"
  2. Especifique las propiedades del permiso con las siguientes opciones

    • --bindtype especifica el tipo de regla de enlace. Esta opción acepta los argumentos all, anonymous y permission. El permission bindtype significa que sólo los usuarios a los que se les ha concedido este permiso a través de un rol pueden ejercerlo.
      Por ejemplo:

      $ ipa permission-add \ "dns admin" --bindtype=all

      Si no se especifica --bindtype, el valor por defecto es permission.

      Nota

      No es posible añadir permisos con un tipo de regla de vinculación no predeterminado a los privilegios. Tampoco se puede establecer un permiso que ya esté presente en un privilegio con un tipo de regla de vinculación no predeterminado.

    • --right enumera los derechos concedidos por el permiso, sustituye a la opción obsoleta --permissions. Los valores disponibles son add, delete, read, search, compare, write, all.

      Puede establecer varios atributos utilizando varias opciones de --right o con una lista separada por comas dentro de llaves. Por ejemplo:

      $ ipa permission-add \ "dns admin" --right=read --right=write
      $ ipa permission-add \ "dns admin" --right={read,write}
      Nota

      add y delete son operaciones de nivel de entrada (por ejemplo, eliminar un usuario, añadir un grupo, etc.) mientras que read, search, compare y write son más de nivel de atributo: se puede escribir en userCertificate pero no leer userPassword.

    • --attrs proporciona la lista de atributos sobre los que se concede el permiso.
      Puede establecer varios atributos utilizando varias opciones de --attrs o enumerando las opciones en una lista separada por comas dentro de llaves. Por ejemplo:

      $ ipa permission-add \ "dns admin" --attrs=description --attrs=automountKey
      $ ipa permission-add \ "dns admin" --attrs={descripción,automountKey}

      Los atributos proporcionados con --attrs deben existir y ser atributos permitidos para el tipo de objeto dado, de lo contrario el comando falla con errores de sintaxis del esquema.

    • --type define el tipo de objeto de entrada al que se aplica el permiso, como usuario, host o servicio. Cada tipo tiene su propio conjunto de atributos permitidos.
      Por ejemplo:

      $ ipa permission-add \ "manage service" --right=all --type=service --attrs=krbprincipalkey --attrs=krbprincipalname --attrs=managedby
    • --subtree proporciona una entrada de subárbol; el filtro se dirige entonces a todas las entradas situadas por debajo de esta entrada de subárbol. Proporcione una entrada de subárbol existente; --subtree no acepta comodines ni nombres de dominio (DN) inexistentes. Incluir un DN dentro del directorio.
      Dado que IdM utiliza una estructura de árbol de directorios plana y simplificada, --subtree puede utilizarse para seleccionar algunos tipos de entradas, como las ubicaciones de montaje automático, que son contenedores o entradas principales para otra configuración. Por ejemplo:

      $ ipa permission-add \ "manage automount locations" --subtree="ldap://ldap.example.com:389/cn=automount,dc=example,dc=com" --right=write --attrs=nombredelmontajeautomático --attrs=clavedelmontajeautomático --attrs=informacióndelmontajeautomático
      Nota

      Las opciones --type y --subtree se excluyen mutuamente: se puede ver la inclusión de filtros para --type como una simplificación de --subtree, con la intención de facilitar la vida a un administrador.

    • --filter utiliza un filtro LDAP para identificar a qué entradas se aplica el permiso.
      IdM comprueba automáticamente la validez del filtro dado. El filtro puede ser cualquier filtro LDAP válido, por ejemplo:

      $ ipa permission-add \ "administrar grupos de Windows" --filtro="(!(objectclass=posixgroup))\N-" --right=write --attrs=description
    • --memberof establece el filtro de destino para los miembros del grupo dado después de comprobar que el grupo existe. Por ejemplo, para que los usuarios con este permiso puedan modificar el shell de inicio de sesión de los miembros del grupo de ingenieros:

      $ ipa permission-add ManageShell --right="write" --type=user --attr=loginshell --memberof=engineers
    • --targetgroup establece el objetivo en el grupo de usuarios especificado después de comprobar que el grupo existe. Por ejemplo, para permitir que aquellos con el permiso escriban el atributo de miembro en el grupo de ingenieros (para que puedan añadir o eliminar miembros):

      $ ipa permission-add ManageMembers --right="write" --subtree=cn=groups,cn=accounts,dc=example,dc=test --attr=member --targetgroup=engineers
    • Opcionalmente, puede especificar un nombre de dominio (DN) de destino

      • --target especifica el DN al que se aplicará el permiso. Se aceptan comodines.
      • --targetto especifica el subárbol de DN al que se puede mover una entrada.
      • --targetfrom especifica el subárbol de DN desde el que se puede mover una entrada.

21.3. Opciones de comando para los permisos existentes

Utilice las siguientes variantes para modificar los permisos existentes según sea necesario:

  • Para editar los permisos existentes, utilice el comando ipa permission-mod. Puede utilizar las mismas opciones de comando que para añadir permisos.
  • Para encontrar los permisos existentes, utilice el comando ipa permission-find. Puede utilizar las mismas opciones de comando que para añadir permisos.
  • Para ver un permiso específico, utilice el comando ipa permission-show.
    El argumento --raw muestra el ACI 389-ds en bruto que se genera. Por ejemplo:

     $ ipa permission-show <permission> --raw
  • El comando ipa permission-del borra un permiso por completo.

Recursos adicionales

Para más detalles sobre los comandos de ipa permission, consulte la página man de ipa y el comando ipa help.

21.4. Gestión de los privilegios de IdM en la CLI

Esta sección describe cómo gestionar los privilegios de Identity Management (IdM) mediante la interfaz de línea de comandos (CLI).

Requisitos previos

Procedimiento

  1. Añada entradas de privilegios utilizando el comando ipa privilege-add.
    Por ejemplo, para añadir un privilegio llamado managing filesystems con una descripción:

    $ ipa privilege-add \ "managing filesystems" --desc="for filesystems"
  2. Asigne los permisos necesarios al grupo de privilegios con el comando privilege-add-permission.
    Por ejemplo, para añadir los permisos denominados managing automount y managing ftp services al privilegio managing filesystems:

    $ ipa privilege-add-permission \ "managing filesystems" --permissions="managing automount" --permissions="managing ftp services"

21.5. Opciones de comando para los privilegios existentes

Utilice las siguientes variantes para modificar los privilegios existentes según sea necesario:

  • Para modificar los privilegios existentes, utilice el comando ipa privilege-mod.
  • Para encontrar los privilegios existentes, utilice el comando ipa privilege-find.
  • Para ver un privilegio específico, utilice el comando ipa privilege-show.
  • El comando ipa privilege-remove-permission elimina uno o más permisos de un privilegio.
  • El comando ipa privilege-del borra un privilegio por completo.

Recursos adicionales

Para más detalles sobre los comandos de ipa privilege, consulte la página man de ipa y el comando ipa help.

21.6. Gestión de los roles de IdM en la CLI

En esta sección se describe cómo gestionar los roles de Identity Management (IdM) mediante la interfaz de línea de comandos (CLI).

Requisitos previos

Procedimiento

  1. Añade nuevas entradas de rol utilizando el comando ipa role-add:

    $ ipa role-add --desc="User Administrator" useradmin
    ------------------------
    Added role "useradmin"
    ------------------------
    Role name: useradmin
    Description: User Administrator
  2. Añada los privilegios necesarios al rol utilizando el comando ipa role-add-privilege:

    $ ipa role-add-privilege --privileges="user administrators" useradmin
    Role name: useradmin
    Description: User Administrator
    Privileges: user administrators
    ----------------------------
    Number of privileges added 1
    ----------------------------
  3. Añada los miembros necesarios al rol utilizando el comando ipa role-add-member. Los tipos de miembros permitidos son: usuarios, grupos, hosts y hostgroups.
    Por ejemplo, para añadir el grupo llamado useradmins al rol previamente creado useradmin:

    $ ipa role-add-member --groups=useradmins useradmin
    Role name: useradmin
    Description: User Administrator
    Member groups: useradmins
    Privileges: user administrators
    -------------------------
    Number of members added 1
    -------------------------

21.7. Opciones de mando para los roles existentes

Utilice las siguientes variantes para modificar los roles existentes según sea necesario:

  • Para modificar los roles existentes, utilice el comando ipa role-mod.
  • Para encontrar los roles existentes, utilice el comando ipa role-find.
  • Para ver un rol específico, utilice el comando ipa role-show.
  • Para eliminar un miembro del rol, utilice el comando ipa role-remove-member.
  • El comando ipa role-remove-privilege elimina uno o más privilegios de un rol.
  • El comando ipa role-del borra un rol completamente.

Recursos adicionales

Para más detalles sobre los comandos de ipa role, consulte la página man de ipa y el comando ipa help.

Capítulo 22. Gestión de los controles de acceso basados en funciones mediante la interfaz web de IdM

Este capítulo presenta el control de acceso basado en roles en la Gestión de Identidades (IdM) y describe las siguientes operaciones en la interfaz web (Web UI):

22.1. Control de acceso basado en roles en IdM

El control de acceso basado en roles (RBAC) en IdM otorga un tipo de autoridad muy diferente a los usuarios en comparación con los controles de acceso de autoservicio y de delegación.

El control de acceso basado en roles se compone de tres partes:

  • Permissions concede el derecho a realizar una tarea específica, como añadir o eliminar usuarios, modificar un grupo, habilitar el acceso de lectura, etc.
  • Privileges combina los permisos, por ejemplo, todos los permisos necesarios para añadir un nuevo usuario.
  • Roles concede un conjunto de privilegios a usuarios, grupos de usuarios, hosts o grupos de hosts.

22.1.1. Permisos en IdM

Los permisos son la unidad de nivel más bajo del control de acceso basado en roles, definen las operaciones junto con las entradas LDAP a las que se aplican dichas operaciones. Comparable a los bloques de construcción, los permisos pueden asignarse a tantos privilegios como sea necesario.
Uno o más rights definen qué operaciones están permitidas:

  • write
  • read
  • search
  • compare
  • add
  • delete
  • all

Estas operaciones se aplican a tres direcciones básicas targets:

  • subtree: un nombre de dominio (DN); el subárbol bajo este DN
  • target filter: un filtro LDAP
  • target: DN con posibles comodines para especificar las entradas

Además, las siguientes opciones de conveniencia establecen los atributos correspondientes:

  • type: un tipo de objeto (usuario, grupo, etc.); establece subtree y target filter
  • memberof: miembros de un grupo; establece un target filter
  • targetgroup: concede el acceso para modificar un grupo específico (como la concesión de los derechos para gestionar la pertenencia a un grupo); establece un target

Con los permisos de IdM, puede controlar qué usuarios tienen acceso a qué objetos e incluso a qué atributos de estos objetos. IdM le permite permitir o bloquear atributos individuales o cambiar toda la visibilidad de una función específica de IdM, como usuarios, grupos o sudo, a todos los usuarios anónimos, a todos los usuarios autenticados o sólo a un determinado grupo de usuarios privilegiados.
Por ejemplo, la flexibilidad de este enfoque de los permisos es útil para un administrador que quiere limitar el acceso de los usuarios o grupos sólo a las secciones específicas a las que estos usuarios o grupos necesitan acceder y hacer que las otras secciones estén completamente ocultas para ellos.

Nota

Un permiso no puede contener otros permisos.

22.1.2. Permisos gestionados por defecto

Los permisos gestionados son permisos que vienen por defecto con IdM. Se comportan como otros permisos creados por el usuario, con las siguientes diferencias:

  • No se pueden eliminar ni modificar sus atributos de nombre, ubicación y destino.
  • Tienen tres conjuntos de atributos:

    • Default atributos, el usuario no puede modificarlos, ya que son gestionados por IdM
    • Included atributos, que son atributos adicionales añadidos por el usuario
    • Excluded atributos, que son atributos eliminados por el usuario

Un permiso gestionado se aplica a todos los atributos que aparecen en los conjuntos de atributos predeterminados e incluidos, pero no en el conjunto excluido.

Nota

Aunque no se puede eliminar un permiso gestionado, si se establece su tipo de enlace como permiso y se elimina el permiso gestionado de todos los privilegios, se desactiva de forma efectiva.

Los nombres de todos los permisos gestionados comienzan con System:, por ejemplo System: Add Sudo rule o System: Modify Services. Las versiones anteriores de IdM utilizaban un esquema diferente para los permisos por defecto. Por ejemplo, el usuario no podía eliminarlos y sólo podía asignarlos a los privilegios. La mayoría de estos permisos por defecto se han convertido en permisos gestionados, sin embargo, los siguientes permisos siguen utilizando el esquema anterior:

  • Añadir la tarea de reconstrucción de miembros automáticos
  • Añadir subentradas de configuración
  • Añadir acuerdos de replicación
  • Certificado Retirar Retención
  • Obtener el estado de los certificados de la CA
  • Rango de lectura del ADN
  • Modificar la gama de ADN
  • Leer la configuración de los gestores de PassSync
  • Modificar la configuración de los gestores de PassSync
  • Leer los acuerdos de replicación
  • Modificar los acuerdos de replicación
  • Eliminar los acuerdos de replicación
  • Leer la configuración de la base de datos LDBM
  • Solicitar certificado
  • Solicitar certificado ignorando las ACL de la CA
  • Solicitar certificados de un host diferente
  • Recuperar certificados de la CA
  • Revocar el certificado
  • Escribir la configuración IPA
Nota

Si intentas modificar un permiso gestionado desde la línea de comandos, el sistema no te permite cambiar los atributos que no puedes modificar, el comando falla. Si intentas modificar un permiso gestionado desde la interfaz web, los atributos que no puedes modificar están desactivados.

22.1.3. Privilegios en IdM

Un privilegio es un grupo de permisos aplicables a un rol.
Mientras que un permiso proporciona los derechos para hacer una sola operación, hay ciertas tareas de IdM que requieren múltiples permisos para tener éxito. Por lo tanto, un privilegio combina los diferentes permisos necesarios para realizar una tarea específica.
Por ejemplo, añadir un usuario requiere los siguientes permisos:

  • Crear una nueva entrada de usuario
  • Restablecer la contraseña de un usuario
  • Añadir el nuevo usuario al grupo de usuarios IPA por defecto

La combinación de estas tres tareas de bajo nivel en una tarea de nivel superior en forma de privilegio denominada Add User facilita la gestión de los roles. Además de usuarios y grupos de usuarios, también se asignan privilegios a hosts y grupos de hosts, así como a servicios de red. Esta práctica permite un control detallado de las operaciones de un conjunto de usuarios en un conjunto de hosts que utilizan servicios de red específicos.

Nota

Un privilegio no puede contener otros privilegios.

22.1.4. Roles en IdM

Un rol es una lista de privilegios que los usuarios especificados para el rol poseen.
En efecto, los permisos conceden la capacidad de realizar determinadas tareas de bajo nivel (crear una entrada de usuario, añadir una entrada a un grupo, etc.), los privilegios combinan uno o más de estos permisos necesarios para una tarea de nivel superior (como crear un nuevo usuario en un grupo determinado). Las funciones reúnen los privilegios necesarios: por ejemplo, una función de administrador de usuarios podría añadir, modificar y eliminar usuarios.

Importante

Los roles se utilizan para clasificar las acciones permitidas. No se utilizan como una herramienta para implementar la separación de privilegios o para proteger de la escalada de privilegios.

Nota

Los roles no pueden contener otros roles.

22.1.5. Funciones predefinidas en la gestión de identidades

Red Hat Identity Management proporciona la siguiente gama de funciones predefinidas:

Tabla 22.1. Roles predefinidos en la gestión de identidades

PapelPrivilegioDescripción

Servicio de asistencia técnica

Modificación de usuarios y restablecimiento de contraseñas, modificación de la pertenencia a grupos

Responsable de realizar tareas sencillas de administración de usuarios

Especialista en seguridad informática

Administradores de Netgroups, Administrador de HBAC, Administrador de Sudo

Responsable de la gestión de la política de seguridad, como los controles de acceso basados en el host, las reglas sudo

Especialista en TI

Administradores de hosts, administradores de grupos de hosts, administradores de servicios, administradores de autómatas

Responsable de la gestión de los anfitriones

Arquitecto de seguridad

Administrador de Delegación, Administradores de Replicación, Configuración IPA de Escritura, Administrador de Políticas de Contraseña

Responsable de la gestión del entorno de gestión de identidades, la creación de fideicomisos, la creación de acuerdos de replicación

Administrador de usuarios

Administradores de usuarios, administradores de grupos, administradores de usuarios de escenario

Responsable de la creación de usuarios y grupos

22.2. Gestión de permisos en la interfaz web de IdM

Esta sección describe cómo gestionar los permisos en la Gestión de identidades (IdM) mediante la interfaz web (IdM Web UI).

Requisitos previos

Procedimiento

  1. Para añadir un nuevo permiso, abra el submenú Role-Based Access Control en la pestaña IPA Server y seleccione Permissions:

    Tarea de permisos

  2. Se abre la lista de permisos: Haga clic en el botón Add en la parte superior de la lista de los permisos:

    Añadir un nuevo permiso

  3. Se abre el formulario Add Permission. Especifique el nombre del nuevo permiso y defina sus propiedades en consecuencia:

    Formulario para añadir un permiso

  4. Seleccione el tipo de regla de enlace apropiado:

    • permission es el tipo de permiso por defecto, que otorga acceso a través de privilegios y roles
    • all especifica que el permiso se aplica a todos los usuarios autentificados
    • anonymous especifica que el permiso se aplica a todos los usuarios, incluidos los no autentificados

      Nota

      No es posible añadir permisos con un tipo de regla de vinculación no predeterminado a los privilegios. Tampoco se puede establecer un permiso que ya esté presente en un privilegio con un tipo de regla de vinculación no predeterminado.

  5. Elija los derechos a conceder con este permiso en Granted rights.
  6. Definir el método para identificar las entradas de destino para el permiso:

    • Type especifica un tipo de entrada, como usuario, host o servicio. Si se elige un valor para el ajuste Type, en Effective Attributes aparece una lista de todos los posibles atributos a los que se podrá acceder a través de este ACI para ese tipo de entrada. Si se define Type, se establece Subtree y Target DN a uno de los valores predefinidos.
    • Subtree (obligatorio) especifica una entrada de subárbol; todas las entradas por debajo de esta entrada de subárbol son el objetivo. Proporcione una entrada de subárbol existente, ya que Subtree no acepta comodines ni nombres de dominio (DN) inexistentes. Por ejemplo cn=automount,dc=example,dc=com
    • Extra target filter utiliza un filtro LDAP para identificar a qué entradas se aplica el permiso. El filtro puede ser cualquier filtro LDAP válido, por ejemplo: (!(objectclass=posixgroup))
      IdM comprueba automáticamente la validez del filtro dado. Si introduces un filtro no válido, IdM te advierte de ello cuando intentas guardar el permiso.
    • Target DN especifica el nombre de dominio (DN) y acepta comodines. Por ejemplo uid=*,cn=users,cn=accounts,dc=com
    • Member of group establece el filtro de destino a los miembros del grupo dado. Después de especificar la configuración del filtro y hacer clic en Add, IdM valida el filtro. Si todos los ajustes de permisos son correctos, IdM realizará la búsqueda. Si alguna de las configuraciones de permisos es incorrecta, IdM mostrará un mensaje informando sobre qué configuración es incorrecta.
  7. Añadir atributos al permiso:

    • Si establece Type, elija el Effective attributes de la lista de atributos ACI disponibles.
    • Si no ha utilizado Type, añada los atributos manualmente escribiéndolos en el campo Effective attributes. Añada un solo atributo a la vez; para añadir varios atributos, haga clic en Add para añadir otro campo de entrada.

      Importante

      Si no establece ningún atributo para el permiso, éste incluye todos los atributos por defecto.

  8. Termine de añadir los permisos con los botones de Add en la parte inferior del formulario:

    • Haga clic en el botón Add para guardar el permiso y volver a la lista de permisos.
    • También puede guardar el permiso y continuar añadiendo permisos adicionales en el mismo formulario haciendo clic en el botón Add and Add another
    • El botón Add and Edit le permite guardar y continuar editando el permiso recién creado.
  9. Optional. También puede editar las propiedades de un permiso existente haciendo clic en su nombre de la lista de permisos para mostrar la página Permission settings.
  10. Optional. Si necesita eliminar un permiso existente, haga clic en el botón Delete una vez que haya marcado la casilla junto a su nombre en la lista, para mostrar el cuadro de diálogo Remove permissions.

    Nota

    Las operaciones en los permisos gestionados por defecto están restringidas: los atributos que no puede modificar están desactivados en la interfaz web de IdM y no puede eliminar los permisos gestionados por completo.
    Sin embargo, puede desactivar efectivamente un permiso gestionado que tenga un tipo de enlace establecido como permiso, eliminando el permiso gestionado de todos los privilegios.

Por ejemplo, para permitir a los que tienen el permiso escribir el atributo de miembro en el grupo de ingenieros (para que puedan añadir o eliminar miembros):
Ejemplo para añadir un permiso

22.3. Gestión de privilegios en la IdM WebUI

Esta sección describe cómo gestionar los privilegios en IdM mediante la interfaz web (IdM Web UI).

Requisitos previos

Procedimiento

  1. Para añadir un nuevo privilegio, abra el submenú Role-Based Access Control en la pestaña IPA Server y seleccione Privileges:

    Tarea de privilegios

  2. Se abre la lista de privilegios. Haga clic en el botón Add en la parte superior de la lista de privilegios:

    Añadir un nuevo privilegio

  3. Se abre el formulario Add Privilege. Introduzca el nombre y una descripción del privilegio:

    Formulario para añadir un privilegio

  4. Haga clic en el botón Add and Edit para guardar el nuevo privilegio y continuar con la página de configuración de privilegios para añadir permisos.
  5. Edite las propiedades de los privilegios haciendo clic en el nombre del privilegio en la lista de privilegios. Se abre la página de configuración de privilegios.
  6. La pestaña Permissions muestra una lista de permisos incluidos en el privilegio seleccionado. Haga clic en el botón Add situado en la parte superior de la lista para añadir permisos al privilegio:

    Añadir permisos

  7. Marque la casilla junto al nombre de cada permiso que desee añadir y utilice el botón > para mover los permisos a la columna Prospective:

    Selección de permisos

  8. Confirme haciendo clic en el botón Add.
  9. Optional. Si necesita eliminar permisos, haga clic en el botón Delete después de marcar la casilla de verificación junto al permiso correspondiente: se abre el cuadro de diálogo Remove privileges from permissions.
  10. Optional. Si necesita eliminar un privilegio existente, haga clic en el botón Delete después de marcar la casilla de verificación junto a su nombre en la lista: se abre el diálogo Remove privileges.

22.4. Gestión de funciones en la interfaz web de IdM

Esta sección describe cómo gestionar los roles en la Gestión de Identidades (IdM) mediante la interfaz web (IdM Web UI).

Requisitos previos

Procedimiento

  1. Para añadir un nuevo rol, abra el submenú Role-Based Access Control en la pestaña IPA Server y seleccione Roles:

    Tarea de roles

  2. Se abre la lista de roles. Haga clic en el botón Add en la parte superior de la lista de las instrucciones de control de acceso basado en roles.

    Añadir un nuevo rol

  3. Se abre el formulario Add Role. Introduzca el nombre de la función y una descripción:

    Formulario para añadir un rol

  4. Haga clic en el botón Add and Edit para guardar el nuevo rol y vaya a la página de configuración de roles para añadir privilegios y usuarios.
  5. Edite las propiedades de los roles haciendo clic en el nombre del rol en la lista de roles. Se abre la página de configuración de roles.
  6. Añada miembros utilizando las pestañas Users, Users Groups, Hosts, Host Groups o Services, haciendo clic en el botón Add en la parte superior de la(s) lista(s) correspondiente(s).

    Añadir usuarios

  7. En la ventana que se abre, seleccione los miembros de la izquierda y utilice el botón > para moverlos a la columna Prospective.

    Selección de usuarios

  8. En la parte superior de la pestaña Privileges, haga clic en Add.

    Añadir privilegios

  9. Seleccione los privilegios de la izquierda y utilice el botón > para moverlos a la columna Prospective.

    Selección de privilegios

  10. Haga clic en el botón Add para guardar.
  11. Optional. Si necesita eliminar privilegios o miembros de un rol, haga clic en el botón Delete después de marcar la casilla de verificación junto al nombre de la entidad que desea eliminar. Se abrirá un cuadro de diálogo.
  12. Optional. Si necesita eliminar un rol existente, haga clic en el botón Delete después de marcar la casilla de verificación junto a su nombre en la lista, para mostrar el diálogo Remove roles.

Capítulo 23. Uso de una vista de identificación para anular el valor de un atributo de usuario en un cliente IdM

Si un usuario de Gestión de identidades (IdM) desea anular algunos de sus atributos de usuario o grupo almacenados en el servidor LDAP de IdM, por ejemplo, el nombre de inicio de sesión, el directorio principal, el certificado utilizado para la autenticación o las claves de SSH, usted, como administrador de IdM, puede redefinir estos valores para un cliente de IdM específico, utilizando las vistas de IdM ID. Por ejemplo, puede especificar un directorio de inicio diferente para un usuario en el cliente IdM que el usuario utiliza más comúnmente para iniciar sesión en IdM.

Este capítulo describe cómo redefinir un valor de atributo POSIX asociado a un usuario de IdM en un host inscrito en IdM como cliente. En concreto, el capítulo describe cómo redefinir el nombre de inicio de sesión del usuario y el directorio raíz.

Este capítulo incluye las siguientes secciones:

23.1. Vistas de identificación

Una vista de ID en la gestión de identidades (IdM) es una vista del lado del cliente de IdM que especifica la siguiente información:

  • Nuevos valores para los atributos de usuario o grupo POSIX definidos de forma centralizada
  • El host o los hosts cliente en los que se aplican los nuevos valores.

Una vista de ID contiene una o más anulaciones. Un override es un reemplazo específico de un valor de atributo POSIX definido centralmente.

Sólo se puede definir una vista de ID para un cliente IdM de forma centralizada en los servidores IdM. No se pueden configurar anulaciones del lado del cliente para un cliente IdM de forma local.

Por ejemplo, puede utilizar las vistas de ID para lograr los siguientes objetivos:

  • Defina diferentes valores de atributos para diferentes entornos. Por ejemplo, puede permitir que el administrador de IdM u otro usuario de IdM tenga diferentes directorios personales en diferentes clientes de IdM: puede configurar /home/encrypted/username para que sea el directorio personal de este usuario en un cliente de IdM y /dropbox/username en otro cliente. El uso de las vistas de ID en esta situación es conveniente, ya que de lo contrario, por ejemplo, el cambio de fallback_homedir, override_homedir u otras variables de directorio personal en el archivo /etc/sssd/sssd.conf del cliente afectaría a todos los usuarios. Véase Añadir una vista de ID para anular el directorio principal de un usuario IdM en un cliente IdM para ver un procedimiento de ejemplo.
  • Reemplazar un valor de atributo generado previamente con un valor diferente, como anular el UID de un usuario. Esta capacidad puede ser útil cuando se quiere lograr un cambio en todo el sistema que de otro modo sería difícil de hacer en el lado de LDAP, por ejemplo, hacer 1009 el UID de un usuario IdM. Los rangos de ID de IdM, que se utilizan para generar un UID de usuario de IdM, nunca comienzan tan bajos como 1000 o incluso 10000. Si existe una razón para que un usuario de IdM suplante a un usuario local con UID 1009 en todos los clientes de IdM, puede utilizar las vistas de ID para anular el UID de este usuario de IdM que se generó cuando se creó el usuario en IdM.
Importante

Sólo se pueden aplicar vistas de ID a los clientes de IdM, no a los servidores de IdM.

Recursos adicionales

  • También puede utilizar las vistas de ID en entornos que incluyan Active Directory (AD). Para obtener más detalles, consulte el capítulo Vistas de ID y migración de entornos existentes a la confianza en el Windows integration guide.
  • También puede configurar vistas de ID para hosts que no forman parte de un dominio de gestión de identidades centralizado. Para más detalles, consulte el capítulo Vistas del lado del cliente de SSSD en la guía System-level authentication guide.

23.2. Posible impacto negativo de las opiniones de ID en el rendimiento del SSSD

Cuando se define una vista de ID, IdM coloca el valor de anulación deseado en la caché del demonio de servicios de seguridad del sistema (SSSD) del servidor de IdM. El SSSD que se ejecuta en un cliente de IdM recupera entonces el valor de anulación de la caché del servidor.

La aplicación de una vista de ID puede tener un impacto negativo en el rendimiento del demonio de servicios de seguridad del sistema (SSSD), porque ciertas optimizaciones y vistas de ID no pueden ejecutarse al mismo tiempo. Por ejemplo, las vistas de ID impiden que SSSD optimice el proceso de búsqueda de grupos en el servidor:

  • Con las vistas de ID, SSSD debe comprobar cada miembro en la lista devuelta de nombres de miembros del grupo si el nombre del grupo está anulado.
  • Sin las vistas de ID, SSSD sólo puede recoger los nombres de usuario del atributo de miembro del objeto de grupo.

Este efecto negativo se hace más evidente cuando la caché de SSSD está vacía o después de borrar la caché, lo que hace que todas las entradas sean inválidas.

23.3. Atributos que una vista de identificación puede anular

Las vistas de ID consisten en anulaciones de ID de usuario y de grupo. Las anulaciones definen los nuevos valores de atributos POSIX.

Las anulaciones de ID de usuario y grupo pueden definir nuevos valores para los siguientes atributos POSIX:

Atributos del usuario
  • Nombre de usuario (uid)
  • Entrada de GECOS (gecos)
  • Número de UID (uidNumber)
  • Número GID (gidNumber)
  • Shell de inicio de sesión (loginShell)
  • Directorio de inicio (homeDirectory)
  • Claves públicas SSH (ipaSshPubkey)
  • Certificado (userCertificate)
Atributos del grupo
  • Nombre del grupo (cn)
  • Número de GID del grupo (gidNumber)

23.4. Obtención de ayuda para los comandos de la vista de identificación

Puede obtener ayuda para los comandos relacionados con las vistas de ID de Identity Management (IdM) en la interfaz de línea de comandos (CLI) de IdM.

Requisitos previos

  • Ha obtenido un ticket Kerberos para un usuario IdM.

Procedimiento

  • Para mostrar todos los comandos utilizados para gestionar las vistas y anulaciones de ID:

    $ ipa help idviews
    ID Views
    
    Manage ID Views
    
    IPA allows to override certain properties of users and groups[...]
    [...]
    Topic commands:
      idoverridegroup-add          Add a new Group ID override
      idoverridegroup-del          Delete a Group ID override
    [...]
  • Para mostrar la ayuda detallada de un comando concreto, añada la opción --help al comando:

    $ ipa idview-add --help
    Usage: ipa [global-options] idview-add NAME [options]
    
    Add a new ID View.
    Options:
      -h, --help      show this help message and exit
      --desc=STR      Description
    [...]

23.5. Uso de una vista de ID para anular el nombre de inicio de sesión de un usuario de IdM en un host específico

Esta sección describe cómo crear una vista de ID para un cliente de gestión de identidades (IdM) específico que anule un valor de atributo POSIX asociado a un usuario IdM específico. El procedimiento utiliza el ejemplo de una vista de ID que permite a un usuario de IdM llamado idm_user iniciar sesión en un cliente de IdM llamado host1 utilizando el nombre de inicio de sesión user_1234.

Requisitos previos

  • Está conectado como un usuario con los privilegios necesarios, por ejemplo admin.

Procedimiento

  1. Cree una nueva vista de identificación. Por ejemplo, para crear una vista de ID llamada example_for_host1:

    $ ipa idview-add example_for_host1
    ---------------------------
    Added ID View "example_for_host1"
    ---------------------------
      ID View Name: example_for_host1
  2. Añada una anulación de usuario a la vista de ID de example_for_host1. Para anular el inicio de sesión del usuario:

    • Introduzca el comando ipa idoverrideuser-add
    • Añadir el nombre de la vista de identificación
    • Añade el nombre del usuario, también llamado ancla
    • Añade la opción --login:

      $ ipa idoverrideuser-add example_for_host1 idm_user --login=user_1234
      -----------------------------
      Added User ID override "idm_user"
      -----------------------------
        Anchor to override: idm_user
        User login: user_1234

      Para obtener una lista de las opciones disponibles, ejecute ipa idoverrideuser-add --help.

      Nota

      El comando ipa idoverrideuser-add --certificate reemplaza todos los certificados existentes para la cuenta en la vista de ID especificada. Para añadir un certificado adicional, utilice el comando ipa idoverrideuser-add-cert:

      $ ipa idoverrideuser-add-cert example_for_host1 user --certificate="MIIEATCC..."
  3. Opcional: Utilizando el comando ipa idoverrideuser-mod, puede especificar nuevos valores de atributos para una anulación de usuario existente.
  4. Aplicar example_for_host1 al host host1.idm.example.com:

    $ ipa idview-apply example_for_host1 --hosts=host1.idm.example.com
    -----------------------------
    Applied ID View "example_for_host1"
    -----------------------------
    hosts: host1.idm.example.com
    ---------------------------------------------
    Number of hosts the ID View was applied to: 1
    ---------------------------------------------
    Nota

    El comando ipa idview-apply también acepta la opción --hostgroups. La opción aplica la vista de ID a los hosts que pertenecen al grupo de hosts especificado, pero no asocia la vista de ID con el grupo de hosts en sí. En cambio, la opción --hostgroups expande los miembros del grupo de hosts especificado y aplica la opción --hosts individualmente a cada uno de ellos.

    Esto significa que si se añade un host al grupo de hosts en el futuro, la vista de ID no se aplica al nuevo host.

  5. Para aplicar la nueva configuración al sistema host1.idm.example.com inmediatamente:

    1. SSH al sistema como root:

      $ ssh root@host1
      Password:
    2. Borrar la caché de SSSD:

      root@host1 ~]# sss_cache -E
    3. Reinicie el demonio SSSD:
    root@host1 ~]# systemctl restart sssd

Pasos de verificación

  • Si tienes las credenciales de user_1234, puedes usarlas para iniciar sesión en IdM en host1:

    1. SSH a host1 usando user_1234 como nombre de inicio de sesión:

      [root@r8server ~]# ssh user_1234@host1.idm.example.com
      Password:
      
      Last login: Sun Jun 21 22:34:25 2020 from 192.168.122.229
      [user_1234@host1 ~]$
    2. Muestra el directorio de trabajo:

      [user_1234@host1 ~]$ pwd
      /home/idm_user/
  • Alternativamente, si tiene credenciales de root en host1, puede utilizarlas para comprobar la salida del comando id para idm_user y user_1234:

    [root@host1 ~]# id idm_user
    uid=779800003(user_1234) gid=779800003(idm_user) groups=779800003(idm_user)
    [root@host1 ~]# user_1234
    uid=779800003(user_1234) gid=779800003(idm_user) groups=779800003(idm_user)

23.6. Modificación de una vista IdM ID

Una vista de ID en Gestión de Identidades (IdM) anula un valor de atributo POSIX asociado a un usuario específico de IdM. Esta sección describe cómo modificar una vista de ID existente. En concreto, se describe cómo modificar una vista de ID para permitir que el usuario llamado idm_user utilice el directorio /home/user_1234/ como directorio principal del usuario en lugar de /home/idm_user/ en el cliente IdM host1.idm.example.com.

Requisitos previos

  • Tienes acceso de root a host1.idm.example.com.
  • Está conectado como un usuario con los privilegios necesarios, por ejemplo admin.
  • Tiene una vista de ID configurada para idm_user que se aplica al cliente host1 IdM.

Procedimiento

  1. Como root, cree el directorio que desea que idm_user utilice en host1.idm.example.com como directorio principal del usuario:

    [root@host1 /]# mkdir /home/user_1234/
  2. Cambia la propiedad del directorio:

    [root@host1 /]# chown idm_user:idm_user /home/user_1234/
  3. Muestra la vista de ID, incluyendo los hosts a los que se aplica actualmente la vista de ID. Para mostrar la vista de ID denominada example_for_host1:

    $ ipa idview-show example_for_host1 --all
      dn: cn=example_for_host1,cn=views,cn=accounts,dc=idm,dc=example,dc=com
      ID View Name: example_for_host1
      User object override: idm_user
      Hosts the view applies to: host1.idm.example.com
      objectclass: ipaIDView, top, nsContainer

    La salida muestra que la vista de ID se aplica actualmente a host1.idm.example.com.

  4. Modificar la anulación del usuario de la vista example_for_host1 ID. Para anular el directorio de inicio del usuario:

    • Introduzca el comando ipa idoverrideuser-add
    • Añadir el nombre de la vista de identificación
    • Añade el nombre del usuario, también llamado ancla
    • Añade la opción --homedir:

      $ ipa idoverrideuser-mod example_for_host1 idm_user --homedir=/home/user_1234
      -----------------------------
      Modified an User ID override "idm_user"
      -----------------------------
        Anchor to override: idm_user
        User login: user_1234
        Home directory: /home/user_1234/

    Para ver una lista de las opciones disponibles, ejecute ipa idoverrideuser-mod --help.

  5. Para aplicar la nueva configuración al sistema host1.idm.example.com inmediatamente:

    1. SSH al sistema como root:

      $ ssh root@host1
      Password:
    2. Borrar la caché de SSSD:

      root@host1 ~]# sss_cache -E
    3. Reinicie el demonio SSSD:
    root@host1 ~]# systemctl restart sssd

Pasos de verificación

  1. SSH a host1 como idm_user:

    [root@r8server ~]# ssh idm_user@host1.idm.example.com
    Password:
    
    Last login: Sun Jun 21 22:34:25 2020 from 192.168.122.229
    [user_1234@host1 ~]$
  2. Imprime el directorio de trabajo:

    [user_1234@host1 ~]$ pwd
    /home/user_1234/

23.7. Añadir una vista de ID para anular el directorio principal de un usuario de IdM en un cliente de IdM

Una vista de ID en la gestión de identidades (IdM) anula un valor de atributo POSIX asociado a un usuario IdM específico. En esta sección se describe cómo crear una vista de ID que se aplique a idm_user en un cliente IdM llamado host1 para que el usuario pueda utilizar el directorio /home/user_1234/ como directorio principal del usuario en lugar de /home/idm_user/.

Requisitos previos

  • Tienes acceso de root a host1.idm.example.com.
  • Está conectado como un usuario con los privilegios necesarios, por ejemplo admin.

Procedimiento

  1. Como root, cree el directorio que desea que idm_user utilice en host1.idm.example.com como directorio principal del usuario:

    [root@host1 /]# mkdir /home/user_1234/
  2. Cambia la propiedad del directorio:

    [root@host1 /]# chown idm_user:idm_user /home/user_1234/
  3. Cree una vista de identificación. Por ejemplo, para crear una vista de ID llamada example_for_host1:

    $ ipa idview-add example_for_host1
    ---------------------------
    Added ID View "example_for_host1"
    ---------------------------
      ID View Name: example_for_host1
  4. Añada una anulación de usuario a la vista de ID de example_for_host1. Para anular el directorio de inicio del usuario:

    • Introduzca el comando ipa idoverrideuser-add
    • Añadir el nombre de la vista de identificación
    • Añade el nombre del usuario, también llamado ancla
    • Añade la opción --homedir:
    $ ipa idoverrideuser-add example_for_host1 idm_user --homedir=/home/user_1234
    -----------------------------
    Added User ID override "idm_user"
    -----------------------------
      Anchor to override: idm_user
      Home directory: /home/user_1234/
  5. Aplicar example_for_host1 al host host1.idm.example.com:

    $ ipa idview-apply example_for_host1 --hosts=host1.idm.example.com
    -----------------------------
    Applied ID View "example_for_host1"
    -----------------------------
    hosts: host1.idm.example.com
    ---------------------------------------------
    Number of hosts the ID View was applied to: 1
    ---------------------------------------------
    Nota

    El comando ipa idview-apply también acepta la opción --hostgroups. La opción aplica la vista de ID a los hosts que pertenecen al grupo de hosts especificado, pero no asocia la vista de ID con el grupo de hosts en sí. En cambio, la opción --hostgroups expande los miembros del grupo de hosts especificado y aplica la opción --hosts individualmente a cada uno de ellos.

    Esto significa que si se añade un host al grupo de hosts en el futuro, la vista de ID no se aplica al nuevo host.

  6. Para aplicar la nueva configuración al sistema host1.idm.example.com inmediatamente:

    1. SSH al sistema como root:

      $ ssh root@host1
      Password:
    2. Borrar la caché de SSSD:

      root@host1 ~]# sss_cache -E
    3. Reinicie el demonio SSSD:
    root@host1 ~]# systemctl restart sssd

Pasos de verificación

  1. SSH a host1 como idm_user:

    [root@r8server ~]# ssh idm_user@host1.idm.example.com
    Password:
    Activate the web console with: systemctl enable --now cockpit.socket
    
    Last login: Sun Jun 21 22:34:25 2020 from 192.168.122.229
    [idm_user@host1 /]$
  2. Imprime el directorio de trabajo:

    [idm_user@host1 /]$ pwd
    /home/user_1234/

23.8. Aplicación de una vista de ID a un grupo de hosts de IdM

El comando ipa idview-apply acepta la opción --hostgroups. Sin embargo, la opción actúa como una operación única que aplica la vista de ID a los hosts que actualmente pertenecen al grupo de hosts especificado, pero no asocia dinámicamente la vista de ID con el propio grupo de hosts. La opción --hostgroups expande los miembros del grupo de hosts especificado y aplica la opción --hosts individualmente a cada uno de ellos.

Si más tarde añade un nuevo host al grupo de hosts, debe aplicar la vista de ID al nuevo host manualmente, utilizando el comando ipa idview-apply con la opción --hosts.

Del mismo modo, si se elimina un host de un grupo de hosts, la vista de ID se sigue asignando al host después de la eliminación. Para desasignar la vista de ID del host eliminado, debe ejecutar el comando ipa idview-unapply id_view_name --hosts=name_of_the_removed_host comando.

Esta sección describe cómo lograr los siguientes objetivos:

  1. Cómo crear un grupo de hosts y añadir hosts a él.
  2. Cómo aplicar una vista de identificación al grupo de hosts.
  3. Cómo añadir un nuevo host al grupo de hosts y aplicar la vista de ID al nuevo host.

Requisitos previos

Procedimiento

  1. Cree un grupo de hosts y añada hosts a él:

    1. Cree un grupo de hosts. Por ejemplo, para crear un grupo de hosts llamado baltimore:

      [root@master ~]# ipa hostgroup-add --desc="Baltimore hosts" baltimore
      ---------------------------
      Added hostgroup "baltimore"
      ---------------------------
      Host-group: baltimore
      Description: Baltimore hosts
    2. Añade hosts al grupo de hosts. Por ejemplo, para añadir el host102 y host103 al grupo de hosts baltimore:

      [root@master ~]# ipa hostgroup-add-member --hosts={host102,host103} baltimore
      Host-group: baltimore
      Description: Baltimore hosts
      Member hosts: host102.idm.example.com, host103.idm.example.com
      -------------------------
      Number of members added 2
      -------------------------
  2. Aplicar una vista de ID a los hosts del grupo de hosts. Por ejemplo, para aplicar la vista de ID example_for_host1 al grupo de hosts baltimore:

    [root@master ~]# ipa idview-apply --hostgroups=baltimore
    ID View Name: example_for_host1
    -----------------------------------------
    Applied ID View "example_for_host1"
    -----------------------------------------
      hosts: host102.idm.example.com, host103.idm.example.com
    ---------------------------------------------
    Number of hosts the ID View was applied to: 2
    ---------------------------------------------
  3. Añade un nuevo host al grupo de hosts y aplica la vista de ID al nuevo host:

    1. Añade un nuevo host al grupo de hosts. Por ejemplo, para añadir el host somehost.idm.example.com al grupo de hosts baltimore:

      [root@master ~]# ipa hostgroup-add-member --hosts=somehost.idm.example.com baltimore
        Host-group: baltimore
        Description: Baltimore hosts
        Member hosts:  host102.idm.example.com, host103.idm.example.com,somehost.idm.example.com
      -------------------------
      Number of members added 1
      -------------------------
    2. Opcionalmente, muestre la información de la vista ID. Por ejemplo, para mostrar los detalles sobre la vista ID de example_for_host1:

      [root@master ~]# ipa idview-show example_for_host1 --all
        dn: cn=example_for_host1,cn=views,cn=accounts,dc=idm,dc=example,dc=com
        ID View Name: example_for_host1
      [...]
        Hosts the view applies to: host102.idm.example.com, host103.idm.example.com
        objectclass: ipaIDView, top, nsContainer

      La salida muestra que la vista de ID no se aplica a somehost.idm.example.com, el host recién agregado en el grupo de hosts baltimore.

    3. Aplique la vista de ID al nuevo host. Por ejemplo, para aplicar la vista de ID de example_for_host1 a somehost.idm.example.com:

      [root@master ~]# ipa idview-apply --host=somehost.idm.example.com
      ID View Name: example_for_host1
      -----------------------------------------
      Applied ID View "example_for_host1"
      -----------------------------------------
        hosts: somehost.idm.example.com
      ---------------------------------------------
      Number of hosts the ID View was applied to: 1
      ---------------------------------------------

Pasos de verificación

  • Vuelva a mostrar la información de la vista de identificación:

    [root@master ~]# ipa idview-show example_for_host1 --all
      dn: cn=example_for_host1,cn=views,cn=accounts,dc=idm,dc=example,dc=com
      ID View Name: example_for_host1
    [...]
      Hosts the view applies to: host102.idm.example.com, host103.idm.example.com, somehost.idm.example.com
      objectclass: ipaIDView, top, nsContainer

    La salida muestra que la vista de ID se aplica ahora a somehost.idm.example.com, el host recién añadido en el grupo de hosts baltimore.

Capítulo 24. Ajuste manual de los rangos de identificación

Un maestro de IdM genera números de identificación de usuario (UID) y de grupo (GID) únicos. Al crear y asignar diferentes rangos de ID a las réplicas, también se asegura de que nunca generen los mismos números de ID. Por defecto, este proceso es automático. Sin embargo, puede ajustar manualmente el rango de ID de IdM durante la instalación del maestro de IdM, o definir manualmente el rango de ID de ADN de una réplica.

24.1. Rangos de identificación

Los números de identificación se dividen en ID ranges. Mantener rangos numéricos separados para servidores individuales y réplicas elimina la posibilidad de que un número de identificación emitido para una entrada ya sea utilizado por otra entrada en otro servidor o réplica.

Tenga en cuenta que hay dos tipos distintos de rangos de ID:

  • El rango de ID de IdM, que se asigna durante la instalación del maestro de IdM. Este rango no puede ser modificado después de su creación. Sin embargo, si lo necesita, puede crear un nuevo rango de IdM ID además del original. Para obtener más información, consulte Asignación automática de ran gos de ID y Adición de un nuevo rango de ID de IdM.
  • Los rangos de ID de asignación numérica distribuida (DNA), que pueden ser modificados por el usuario. Estos tienen que encajar dentro de un rango de ID de IdM existente. Para obtener más información, consulte Ajuste manual de los rangos de ID de ADN.

    Las réplicas también pueden tener asignado un rango de ID de ADN next. Una réplica utiliza su siguiente rango cuando se le acaban los ID de su rango actual. Los siguientes rangos se asignan automáticamente cuando se elimina una réplica o se pueden establecer manualmente.

Los rangos son actualizados y compartidos entre el maestro y las réplicas por el plug-in DNA, como parte de la instancia del servidor de directorio del dominio.

La definición del rango de ADN se establece mediante dos atributos: el siguiente número disponible del servidor (el extremo inferior del rango de ADN) y su valor máximo (el extremo superior del rango de ADN). El rango inferior inicial se establece durante la configuración de la instancia del plug-in. Después, el plug-in actualiza el valor inferior. La división de los números disponibles en rangos permite a los servidores asignar continuamente números sin que se solapen unos con otros.

24.2. Asignación automática de rangos de ID

Por defecto, se asigna automáticamente un rango de ID de IdM durante la instalación del maestro de IdM. El comando ipa-server-install selecciona y asigna aleatoriamente un rango de 200.000 IDs de un total de 10.000 rangos posibles. La selección de un rango aleatorio de este modo reduce significativamente la probabilidad de que se produzcan conflictos de ID en caso de que decida fusionar dos dominios IdM separados en el futuro.

Nota

Este rango de ID de IdM no puede modificarse después de su creación. Sólo puede ajustar manualmente los rangos de ID de Asignación Numérica Distribuida (DNA), utilizando los comandos descritos en Ajuste manual de los rangos de ID de DNA. Durante la instalación se crea automáticamente un rango de ADN que coincide con el rango de ID de IdM.

Si tiene un único servidor IdM instalado, éste controla todo el rango de ID de ADN. Cuando se instala una nueva réplica y la réplica solicita su propio rango de ID de ADN, el rango de ID inicial del maestro se divide y se distribuye entre el maestro y la réplica: la réplica recibe la mitad del rango de ID de ADN restante que está disponible en el maestro inicial. El maestro y la réplica utilizan entonces sus respectivas porciones del rango de ID original para las nuevas entradas de usuarios o grupos. Además, si la réplica está a punto de agotar su rango de IDs asignado y quedan menos de 100 IDs, la réplica se pone en contacto con los otros servidores disponibles para solicitar un nuevo rango de IDs de ADN.

Importante

Cuando se instala una réplica, ésta does not recibe inmediatamente un rango de ID. Una réplica recibe un rango de ID la primera vez que se utiliza el plug-in de DNA, por ejemplo cuando se añade un usuario por primera vez. Hasta entonces, la réplica no tiene un rango de ID definido.

Si el maestro inicial deja de funcionar antes de que la réplica le solicite un rango de ID de ADN, la réplica no puede contactar con el maestro para solicitar el rango de ID. El intento de añadir un nuevo usuario en la réplica falla entonces. En tales situaciones, puede averiguar qué rango de ID está asignado al maestro inhabilitado, y asignar un rango de ID a la réplica manualmente.

24.3. Asignación manual del rango de ID de IdM durante la instalación del servidor

Puede anular el comportamiento predeterminado y establecer un rango de ID de IdM manualmente en lugar de que se asigne al azar.

Importante

No establezca rangos de ID que incluyan valores de UID de 1000 e inferiores; estos valores están reservados para el uso del sistema. Tampoco establezca un rango de ID que incluya el valor 0; el servicio SSSD no maneja el valor 0 de ID.

Procedimiento

  • Puede definir el rango de ID de IdM manualmente durante la instalación del servidor utilizando las dos opciones siguientes con ipa-server-install:

    • --idstart da el valor inicial de los números UID y GID.
    • --idmax da el número máximo de UID y GID; por defecto, el valor es el valor inicial de --idstart más 199.999.

Pasos de verificación

  • Para comprobar si el rango de ID se ha asignado correctamente, puede mostrar el rango de ID de IdM asignado utilizando el comando ipa idrange-find:

    # ipa idrange-find
    ---------------
    1 range matched
    ---------------
      Range name: IDM.EXAMPLE.COM_id_range
      First Posix ID of the range: 882200000
      Number of IDs in the range: 200000
      Range type: local domain range
    ----------------------------
    Number of entries returned 1
    ----------------------------

24.4. Añadir un nuevo rango de IDM

En algunos casos, es posible que desee crear un nuevo rango de IdM ID además del original; por ejemplo, cuando una réplica se ha quedado sin ID y el rango de IdM ID original se ha agotado.

Importante

La adición de un nuevo rango de ID de IdM no crea automáticamente nuevos rangos de ID de ADN. Es necesario asignar manualmente nuevos rangos de ID de ADN según sea necesario. Para obtener más información sobre cómo hacerlo, consulte Ajustar rangos de ID de ADN manualmente.

Procedimiento

  • Para crear un nuevo rango de IDM, utilice el comando ipa idrange-add. Debe especificar el nombre del nuevo rango, el primer número de ID del rango y el tamaño del rango:
# ipa idrange-add IDM.EXAMPLE.COM_new_range --base-id=1000000 --range-size=200000
------------------------------------------
Added ID range "IDM.EXAMPLE.COM_new_range"
------------------------------------------
  Range name: IDM.EXAMPLE.COM_new_range
  First Posix ID of the range: 1000000
  Number of IDs in the range: 200000
  Range type: local domain range

Pasos de verificación

  • Puede comprobar si el nuevo rango está configurado correctamente utilizando el comando ipa idrange-find:
# ipa idrange-find
----------------
2 ranges matched
----------------
  Range name: IDM.EXAMPLE.COM_id_range
  First Posix ID of the range: 882200000
  Number of IDs in the range: 200000
  Range type: local domain range

  Range name: IDM.EXAMPLE.COM_new_range
  First Posix ID of the range: 1000000
  Number of IDs in the range: 200000
  Range type: local domain range
----------------------------
Number of entries returned 2
----------------------------

24.5. Visualización de los rangos de ID de ADN actualmente asignados

Puede mostrar tanto el rango de ID de asignación numérica distribuida (DNA) actualmente activo en un servidor, como su siguiente rango de DNA si tiene uno asignado.

Procedimiento

  • Para mostrar qué rangos de ID de ADN están configurados para los servidores en la topología, utilice los siguientes comandos:

    • ipa-replica-manage dnarange-show muestra el rango de ID de ADN actual que está establecido en todos los servidores o, si se especifica un servidor, sólo en el servidor especificado, por ejemplo:

      # ipa-replica-manage dnarange-show
      masterA.example.com: 1001-1500
      masterB.example.com: 1501-2000
      masterC.example.com: No range set
      
      # ipa-replica-manage dnarange-show masterA.example.com
      masterA.example.com: 1001-1500
    • ipa-replica-manage dnanextrange-show muestra el siguiente rango de ID de ADN establecido actualmente en todos los servidores o, si se especifica un servidor, sólo en el servidor especificado, por ejemplo:

      # ipa-replica-manage dnanextrange-show
      masterA.example.com: 2001-2500
      masterB.example.com: No on-deck range set
      masterC.example.com: No on-deck range set
      
      # ipa-replica-manage dnanextrange-show masterA.example.com
      masterA.example.com: 2001-2500

24.6. Ampliación automática del rango de identificación del ADN

Cuando se elimina una réplica en funcionamiento, el comando ipa-replica-manage del recupera los rangos de ID de ADN que se asignaron a la réplica y los añade como rango siguiente a otra réplica de IdM disponible. Esto garantiza que los rangos de ID de ADN se utilicen de forma eficiente.

Después de eliminar una réplica, puede verificar qué rangos de ID de ADN están configurados para otros servidores utilizando los comandos descritos en Visualización de rangos de ID de ADN actualmente asignados.

24.7. Ajuste manual del rango de identificación del ADN

En ciertas situaciones, es necesario ajustar manualmente un rango de ID de asignación numérica distribuida (DNA), por ejemplo cuando:

  • Una réplica se ha quedado sin IDs y el rango de IDs de IdM se ha agotado

    Una réplica ha agotado el rango de ID de ADN que se le asignó, y la solicitud de ID adicionales ha fallado porque no hay más ID libres en el rango de IdM.

    Para resolver esta situación, amplíe el rango de ID de ADN asignado a la réplica. Puede hacerlo de dos maneras:

    • Acorte el rango de ID de ADN asignado a una réplica diferente, y luego asigne los nuevos valores disponibles a la réplica agotada.
    • Cree un nuevo rango de IdM, y luego establezca un nuevo rango de ID de ADN para la réplica dentro de este rango de IdM creado.

      Para obtener información sobre cómo crear un nuevo rango de IdM ID, consulte Añadir un nuevo rango de IdM ID.

  • Una réplica dejó de funcionar

    El rango de ID de ADN de una réplica no se recupera automáticamente cuando la réplica muere y necesita ser eliminada, lo que significa que el rango de ID de ADN previamente asignado a la réplica no está disponible. Desea recuperar el rango de ID de ADN y ponerlo a disposición de otras réplicas.

    Si desea recuperar un rango de ID de ADN perteneciente a una réplica que dejó de funcionar y asignarlo a otro servidor, primero debe averiguar cuáles son los valores del rango de ID, antes de asignar manualmente dicho rango a un servidor diferente. Además, para evitar la duplicación de UIDs o GIDs, asegúrese de que ningún valor de ID del rango recuperado haya sido asignado previamente a un usuario o grupo; puede hacerlo examinando los UIDs y GIDs de los usuarios y grupos existentes.

Puede ajustar manualmente un rango de ID de ADN para una réplica utilizando los comandos de Ajustar manualmente los rangos de ID de ADN.

Nota

Si se asigna un nuevo rango de ID de ADN, los UID de las entradas ya existentes en el servidor o la réplica no cambian. Esto no supone un problema porque, aunque se cambie el rango de ID de ADN actual, IdM mantiene un registro de los rangos que se asignaron en el pasado.

24.8. Ajuste manual de los rangos de identificación del ADN

En algunos casos, es posible que tenga que ajustar manualmente los rangos de ID de asignación numérica distribuida (DNA) para las réplicas existentes, por ejemplo para reasignar un rango de ID de DNA asignado a una réplica que no funciona. Para obtener más información, consulte Ajuste manual de rangos de ID de ADN.

Al ajustar manualmente un intervalo de ID de ADN, asegúrese de que el nuevo intervalo ajustado está incluido en el intervalo de ID de IdM; puede comprobarlo mediante el comando ipa idrange-find. De lo contrario, el comando fallará.

Importante

Tenga cuidado de no crear rangos de ID que se solapen. Si alguno de los rangos de ID que asigna a los servidores o a las réplicas se superpone, podría dar lugar a que dos servidores diferentes asignen el mismo valor de ID a entradas diferentes.

Requisitos previos

Procedimiento

  • Para definir el rango de ID de ADN actual para un servidor especificado, utilice la opción ipa-replica-manage dnarange-set:

    # ipa-replica-manage dnarange-set masterA.example.com 1250-1499
  • Para definir el siguiente rango de ID de ADN para un servidor especificado, utilice la opción ipa-replica-manage dnanextrange-set:

    # ipa-replica-manage dnanextrange-set masterB.example.com 1500-5000

Pasos de verificación

Capítulo 25. Configuración de IdM para el aprovisionamiento externo de usuarios

Como administrador del sistema, puede configurar la Gestión de Identidades (IdM) para que admita el aprovisionamiento de usuarios mediante una solución externa para la gestión de identidades.

En lugar de utilizar la utilidad ipa, el administrador del sistema de aprovisionamiento externo puede acceder al LDAP de IdM utilizando la utilidad ldapmodify. El administrador puede añadir usuarios de etapa individuales desde la CLI utilizando ldapmodify o utilizando un archivo LDIF.

Se supone que usted, como administrador de IdM, confía plenamente en su sistema de aprovisionamiento externo para que sólo añada usuarios validados. Sin embargo, al mismo tiempo no quiere asignar a los administradores del sistema de aprovisionamiento externo el rol de IdM de User Administrator para que puedan añadir nuevos usuarios activos directamente.

Puede configurar una secuencia de comandos para trasladar automáticamente los usuarios escalonados creados por el sistema de aprovisionamiento externo a usuarios activos.

Este capítulo contiene estas secciones:

  1. Preparar la gestión de identidades (IdM) para utilizar un sistema de aprovisionamiento externo para añadir usuarios de etapa a IdM.
  2. Creación de un script para mover los usuarios añadidos por el sistema de aprovisionamiento externo de la etapa a los usuarios activos.
  3. Utilizar un sistema de aprovisionamiento externo para añadir un usuario de etapa IdM. Puede hacerlo de dos maneras:

Materiales adicionales

Para ver ejemplos y plantillas para utilizar ldapmodify como administrador completo de IdM para realizar operaciones de gestión de usuarios y grupos que requieren privilegios superiores, consulte Uso de ldapmodify.

25.1. Preparación de las cuentas de IdM para la activación automática de las cuentas de usuario de la etapa

Este procedimiento muestra cómo configurar dos cuentas de usuario de IdM para que las utilice un sistema de aprovisionamiento externo. Al añadir las cuentas a un grupo con una política de contraseñas adecuada, se permite que el sistema de aprovisionamiento externo gestione el aprovisionamiento de usuarios en IdM. A continuación, la cuenta de usuario que utilizará el sistema externo para añadir usuarios de etapa se denomina provisionator. La cuenta de usuario que se utilizará para activar automáticamente los usuarios de escenario se denomina activator.

Requisitos previos

  • El host en el que se realiza el procedimiento está inscrito en IdM.

Procedimiento

  1. Inicie sesión como administrador de IdM:

    $ kinit admin
  2. Cree un usuario llamado provisionator con privilegios para añadir usuarios de escenario.

    1. Añade la cuenta de usuario del provisionador:
    $ ipa user-add provisionator --first=provisioning --last=account --password
    1. Conceder al usuario provisionador los privilegios necesarios.

      1. Cree un rol personalizado, System Provisioning, para gestionar la adición de usuarios del escenario:

        $ ipa role-add --desc \ "Responsable de los usuarios de la etapa de aprovisionamiento" \ "Aprovisionamiento del sistema"
      2. Añada el privilegio Stage User Provisioning al rol. Este privilegio proporciona la capacidad de añadir usuarios de escenario:

        $ ipa role-add-privilege \ "System Provisioning" --privileges="Stage User Provisioning"
      3. Añade el usuario provisionador al rol:

        $ ipa role-add-member --users=provisionator \ "System Provisioning"
      4. Verifique que el provisionador existe en IdM:
      $ ipa user-find provisionator --all --raw
      --------------
      1 user matched
      --------------
        dn: uid=provisionator,cn=users,cn=accounts,dc=idm,dc=example,dc=com
        uid: provisionator
        [...]
  3. Cree un usuario, activator, con los privilegios para gestionar las cuentas de usuario.

    1. Añade la cuenta de usuario del activador:

      $ ipa user-add activator --first=activation --last=account --password
    2. Conceda al usuario activador los privilegios necesarios añadiendo el usuario a la función predeterminada User Administrator:

      $ ipa role-add-member --users=activator \ "User Administrator"
  4. Cree un grupo de usuarios para las cuentas de la aplicación:

    $ ipa group-add application-accounts
  5. Actualice la política de contraseñas para el grupo. La siguiente política evita la caducidad de la contraseña y el bloqueo de la cuenta, pero compensa los posibles riesgos exigiendo contraseñas complejas:

    $ ipa pwpolicy-add application-accounts --maxlife=10000 --minlife=0 --history=0 --minclasses=4 --minlength=8 --priority=1 --maxfail=0 --failinterval=1 --lockouttime=0
  6. (Opcional) Compruebe que la política de contraseñas existe en IdM:

    $ ipa pwpolicy-show application-accounts
      Group: application-accounts
      Max lifetime (days): 10000
      Min lifetime (hours): 0
      History size: 0
    [...]
  7. Añade las cuentas de aprovisionamiento y activación al grupo de cuentas de aplicación:

    $ ipa group-add-member application-accounts --users={provisionator,activator}
  8. Cambie las contraseñas de las cuentas de usuario:

    $ kpasswd provisionator
    $ kpasswd activator

    El cambio de las contraseñas es necesario porque las contraseñas de los nuevos usuarios de IdM caducan inmediatamente.

Recursos adicionales:

25.2. Configuración de la activación automática de las cuentas de usuario de la etapa IdM

Este procedimiento muestra cómo crear un script para activar a los usuarios de la etapa. El sistema ejecuta el script automáticamente a intervalos de tiempo especificados. Esto garantiza que las nuevas cuentas de usuario se activen automáticamente y estén disponibles para su uso poco después de su creación.

Importante

El procedimiento asume que el propietario del sistema de aprovisionamiento externo ya ha validado a los usuarios y que éstos no requieren una validación adicional en el lado de IdM antes de que el script los añada a IdM.

Basta con activar el proceso de activación en uno solo de sus servidores de IdM.

Requisitos previos

Procedimiento

  1. Generar un archivo keytab para la cuenta de activación:

    # ipa-getkeytab -s server.idm.example.com -p \ "activator" -k /etc/krb5.ipa-activation.keytab

    Si desea activar el proceso de activación en más de un servidor IdM, genere el archivo keytab en un solo servidor. A continuación, copie el archivo keytab en los demás servidores.

  2. Cree un script, /usr/local/sbin/ipa-activate-all, con el siguiente contenido para activar a todos los usuarios:

    #!/bin/bash
    
    kinit -k -i activator
    
    ipa stageuser-find --all --raw | grep "  uid:" | cut -d ":" -f 2 | while read uid; do ipa stageuser-activate ${uid}; done
  3. Edite los permisos y la propiedad del script ipa-activate-all para que sea ejecutable:

    # chmod 755 /usr/local/sbin/ipa-activate-all
    # chown root:root /usr/local/sbin/ipa-activate-all
  4. Cree un archivo de unidad systemd, /etc/systemd/system/ipa-activate-all.service, con el siguiente contenido:

    [Unit]
    Description=Scan IdM every minute for any stage users that must be activated
    
    [Service]
    Environment=KRB5_CLIENT_KTNAME=/etc/krb5.ipa-activation.keytab
    Environment=KRB5CCNAME=FILE:/tmp/krb5cc_ipa-activate-all
    ExecStart=/usr/local/sbin/ipa-activate-all
  5. Cree un temporizador systemd, /etc/systemd/system/ipa-activate-all.timer, con el siguiente contenido:

    [Unit]
    Description=Scan IdM every minute for any stage users that must be activated
    
    [Timer]
    OnBootSec=15min
    OnUnitActiveSec=1min
    
    [Install]
    WantedBy=multi-user.target
  6. Recarga la nueva configuración:

    # systemctl daemon-reload
  7. Activar ipa-activate-all.timer:

    # systemctl enable ipa-activate-all.timer
  8. Inicio ipa-activate-all.timer:

    # systemctl start ipa-activate-all.timer
  9. (Opcional) Compruebe que el demonio ipa-activate-all.timer se está ejecutando:

    # systemctl status ipa-activate-all.timer
    ● ipa-activate-all.timer - Scan IdM every minute for any stage users that must be activated
       Loaded: loaded (/etc/systemd/system/ipa-activate-all.timer; enabled; vendor preset: disabled)
       Active: active (waiting) since Wed 2020-06-10 16:34:55 CEST; 15s ago
      Trigger: Wed 2020-06-10 16:35:55 CEST; 44s left
    
    Jun 10 16:34:55 server.idm.example.com systemd[1]: Started Scan IdM every minute for any stage users that must be activated.

25.3. Añadir una etapa IdM definida por el usuario en un archivo LDIF

En esta sección se describe cómo un administrador de un sistema de aprovisionamiento externo puede acceder a IdM LDAP y utilizar un archivo LDIF para añadir usuarios del escenario. Aunque el ejemplo siguiente muestra la adición de un solo usuario, se pueden añadir varios usuarios en un archivo en modo masivo.

Requisitos previos

  • El administrador de IdM ha creado la cuenta provisionator y una contraseña para ella. Para obtener más información, consulte Preparación de las cuentas de IdM para la activación automática de las cuentas de usuario del escenario.
  • Usted, como administrador externo, conoce la contraseña de la cuenta provisionator.
  • Puedes acceder mediante SSH al servidor IdM desde tu servidor LDAP.
  • Puede suministrar el conjunto mínimo de atributos que debe tener un usuario de la etapa IdM para permitir el correcto procesamiento del ciclo de vida del usuario, a saber

    • El distinguished name (dn)
    • El common name (cn)
    • El last name (sn)
    • El uid

Procedimiento

  1. En el servidor externo, cree un archivo LDIF que contenga información sobre el nuevo usuario:

    dn: uid=stageidmuser,cn=staged users,cn=accounts,cn=provisioning,dc=idm,dc=example,dc=com
    changetype: add
    objectClass: top
    objectClass: inetorgperson
    uid: stageidmuser
    sn: surname
    givenName: first_name
    cn: full_name
  2. Transfiera el archivo LDIF del servidor externo al servidor IdM:

    $ scp add-stageidmuser.ldif provisionator@server.idm.example.com:/provisionator/
    Password:
    add-stageidmuser.ldif                                                                                          100%  364   217.6KB/s   00:00
  3. Utilice el protocolo SSH para conectarse al servidor IdM como provisionator:

    $ ssh provisionator@server.idm.example.com
    Password:
    [provisionator@server ~]$
  4. En el servidor de IdM, obtenga el ticket de concesión de tickets (TGT) de Kerberos para la cuenta del provisionador:

    [provisionator@server ~]$ kinit provisionator
  5. Introduzca el comando ldapadd con la opción -f y el nombre del archivo LDIF. Especifique el nombre del servidor IdM y el número de puerto:

    ~]$ ldapadd -h server.idm.example.com -p 389 -f  add-stageidmuser.ldif
    SASL/GSSAPI authentication started
    SASL username: provisionator@IDM.EXAMPLE.COM
    SASL SSF: 256
    SASL data security layer installed.
    adding the entry "uid=stageidmuser,cn=staged users,cn=accounts,cn=provisioning,dc=idm,dc=example,dc=com"

25.4. Añadir un usuario del escenario IdM directamente desde la CLI usando ldapmodify

Esta sección describe cómo un administrador de un sistema de aprovisionamiento externo puede acceder al LDAP de Gestión de Identidades (IdM) y utilizar la utilidad ldapmodify para añadir un usuario de escenario.

Requisitos previos

  • El administrador de IdM ha creado la cuenta provisionator y una contraseña para ella. Para obtener más información, consulte Preparación de las cuentas de IdM para la activación automática de las cuentas de usuario de escenario.
  • Usted, como administrador externo, conoce la contraseña de la cuenta provisionator.
  • Puedes acceder mediante SSH al servidor IdM desde tu servidor LDAP.
  • Puede suministrar el conjunto mínimo de atributos que debe tener un usuario de la etapa IdM para permitir el correcto procesamiento del ciclo de vida del usuario, a saber

    • El distinguished name (dn)
    • El common name (cn)
    • El last name (sn)
    • El uid

Procedimiento

  1. Utilice el protocolo SSH para conectarse al servidor de IdM utilizando su identidad y credenciales de IdM:

    $ ssh provisionator@server.idm.example.com
    Password:
    [provisionator@server ~]$
  2. Obtenga el TGT de la cuenta provisionator, un usuario de IdM con un rol para agregar nuevos usuarios de escenario:

    $ kinit provisionator
  3. Introduzca el comando ldapmodify y especifique Generic Security Services API (GSSAPI) como mecanismo de Simple Authentication and Security Layer (SASL) a utilizar para la autenticación. Especifique el nombre del servidor IdM y el puerto:

    # ldapmodify -h server.idm.example.com -p 389 -Y GSSAPI
    SASL/GSSAPI authentication started
    SASL username: provisionator@IDM.EXAMPLE.COM
    SASL SSF: 56
    SASL data security layer installed.
  4. Introduzca la dirección dn del usuario que va a añadir:

    dn: uid=stageuser,cn=staged users,cn=accounts,cn=provisioning,dc=idm,dc=example,dc=com
  5. Introduzca add como el tipo de cambio que está realizando:

    tipo de cambio: añadir
  6. Especifique las categorías de clase de objeto LDAP necesarias para permitir el correcto procesamiento del ciclo de vida del usuario:

    objectClass: top
    objectClass: inetorgperson

    Se pueden especificar clases de objetos adicionales.

  7. Introduzca la dirección uid del usuario:

    uid: stageuser
  8. Introduzca la dirección cn del usuario:

    cn: Babs Jensen
  9. Introduzca el apellido del usuario:

    sn: Jensen
  10. Vuelva a pulsar Enter para confirmar que es el final de la entrada:

    [Enter]
    
    adding new entry "uid=stageuser,cn=staged users,cn=accounts,cn=provisioning,dc=idm,dc=example,dc=com"
  11. Salga de la conexión mediante Ctrl C .

Pasos de verificación

Verifique el contenido de la entrada del escenario para asegurarse de que su sistema de aprovisionamiento ha añadido todos los atributos POSIX necesarios y la entrada del escenario está lista para ser activada.

  • Para mostrar los atributos LDAP del nuevo usuario del escenario, introduzca el comando ipa stageuser-show --all --raw:

    $ ipa stageuser-show stageuser --all --raw
      dn: uid=stageuser,cn=staged users,cn=accounts,cn=provisioning,dc=idm,dc=example,dc=com
      uid: stageuser
      sn: Jensen
      cn: Babs Jensen
      has_password: FALSE
      has_keytab: FALSE
      nsaccountlock: TRUE
      objectClass: top
      objectClass: inetorgperson
      objectClass: organizationalPerson
      objectClass: person
    1. Tenga en cuenta que el usuario está explícitamente desactivado por el atributo nsaccountlock.

Capítulo 26. Uso de ldapmodify para gestionar los usuarios de IdM de forma externa

Puede modificar el LDAP de Identity Management (IdM) directamente desde la interfaz de línea de comandos (CLI) utilizando las utilidades ldapmodify y ldapdelete. Las utilidades proporcionan una funcionalidad completa para añadir, editar y eliminar el contenido del directorio. Puede utilizar estas utilidades para gestionar tanto las entradas de configuración del servidor como los datos de las entradas de usuario. Las utilidades también se pueden utilizar para escribir scripts para realizar una gestión masiva de uno o más directorios.

26.1. Plantillas para gestionar externamente las cuentas de usuario de IdM

Esta sección describe las plantillas para varias operaciones de gestión de usuarios en IdM. Las plantillas muestran los atributos que debe modificar mediante ldapmodify para lograr los siguientes objetivos:

  • Añadir un nuevo usuario de escenario
  • Modificar el atributo de un usuario
  • Habilitación de un usuario
  • Desactivar un usuario
  • Conservación de un usuario

Las plantillas están formateadas en el formato de intercambio de datos LDAP (LDIF). LDIF es un formato estándar de intercambio de datos en texto plano para representar el contenido del directorio LDAP y las solicitudes de actualización.

Utilizando las plantillas, puede configurar el proveedor LDAP de su sistema de aprovisionamiento para gestionar las cuentas de usuario de IdM.

Para ver ejemplos de procedimientos detallados, consulte las siguientes secciones:

Plantillas para añadir un nuevo usuario de escenario

  • Una plantilla para añadir un usuario con UID and GID assigned automatically. El nombre distinguido (DN) de la entrada creada debe empezar por uid=user_login:

    dn: uid=user_login,cn=staged users,cn=accounts,cn=provisioning,dc=idm,dc=example,dc=com
    changetype: add
    objectClass: top
    objectClass: inetorgperson
    uid: user_login
    sn: surname
    givenName: first_name
    cn: full_name
  • Una plantilla para añadir un usuario con UID and GID assigned statically:

    dn: uid=user_login,cn=staged users,cn=accounts,cn=provisioning,dc=idm,dc=example,dc=com
    changetype: add
    objectClass: top
    objectClass: person
    objectClass: inetorgperson
    objectClass: organizationalperson
    objectClass: posixaccount
    uid: user_login
    uidNumber: UID_number
    gidNumber: GID_number
    sn: surname
    givenName: first_name
    cn: full_name
    homeDirectory: /home/user_login

    No es necesario especificar ninguna clase de objeto IdM cuando se añaden usuarios de escenario. IdM añade estas clases automáticamente después de que se activen los usuarios.

Plantillas para modificar los usuarios existentes

  • Modifying a user’s attribute:

    dn: distinguished_name
    changetype: modify
    replace: attribute_to_modify
    attribute_to_modify: new_value
  • Disabling a user:

    dn: distinguished_name
    changetype: modify
    replace: nsAccountLock
    nsAccountLock: TRUE
  • Enabling a user:

    dn: distinguished_name
    changetype: modify
    replace: nsAccountLock
    nsAccountLock: FALSE

    La actualización del atributo nssAccountLock no tiene ningún efecto sobre los usuarios de la etapa y los preservados. Aunque la operación de actualización se complete con éxito, el valor del atributo sigue siendo nssAccountLock: TRUE.

  • Preserving a user:

    dn: distinguished_name
    changetype: modrdn
    newrdn: uid=user_login
    deleteoldrdn: 0
    newsuperior: cn=deleted users,cn=accounts,cn=provisioning,dc=idm,dc=example,dc=com
Nota

Antes de modificar un usuario, obtenga el nombre distinguido (DN) del usuario mediante una búsqueda con el nombre de usuario. En el siguiente ejemplo, el usuario user_allowed_to_modify_user_entries es un usuario autorizado a modificar la información de usuarios y grupos, por ejemplo activator o administrador de IdM. La contraseña del ejemplo es la de este usuario:

[...]
# ldapsearch -LLL -x -D "uid=user_allowed_to_modify_user_entries,cn=users,cn=accounts,dc=idm,dc=example,dc=com" -w "Secret123" -H ldap://r8server.idm.example.com -b "cn=users,cn=accounts,dc=idm,dc=example,dc=com" uid=test_user
dn: uid=test_user,cn=users,cn=accounts,dc=idm,dc=example,dc=com
memberOf: cn=ipausers,cn=groups,cn=accounts,dc=idm,dc=example,dc=com

26.2. Plantillas para gestionar externamente las cuentas de grupo de IdM

En esta sección se describen las plantillas para varias operaciones de gestión de grupos de usuarios en IdM. Las plantillas muestran los atributos que debe modificar mediante ldapmodify para lograr los siguientes objetivos:

  • Crear un nuevo grupo
  • Borrar un grupo existente
  • Añadir un miembro a un grupo
  • Eliminar un miembro de un grupo

Las plantillas están formateadas en el formato de intercambio de datos LDAP (LDIF). LDIF es un formato estándar de intercambio de datos en texto plano para representar el contenido del directorio LDAP y las solicitudes de actualización.

Utilizando las plantillas, puede configurar el proveedor LDAP de su sistema de aprovisionamiento para gestionar las cuentas de grupo de IdM.

Crear un nuevo grupo

dn: cn=group_name,cn=groups,cn=accounts,dc=idm,dc=example,dc=com
changetype: add
objectClass: top
objectClass: ipaobject
objectClass: ipausergroup
objectClass: groupofnames
objectClass: nestedgroup
objectClass: posixgroup
uid: group_name
cn: group_name
gidNumber: GID_number

Modificación de los grupos

  • Deleting an existing group:

    dn: group_distinguished_name
    changetype: delete
  • Adding a member to a group:

    dn: group_distinguished_name
    changetype: modify
    add: member
    member: uid=user_login,cn=users,cn=accounts,dc=idm,dc=example,dc=com

    No añada usuarios de la etapa o conservados a los grupos. Aunque la operación de actualización se complete con éxito, los usuarios no se actualizarán como miembros del grupo. Sólo los usuarios activos pueden pertenecer a los grupos.

  • Removing a member from a group:

    dn: distinguished_name
    changetype: modify
    delete: member
    member: uid=user_login,cn=users,cn=accounts,dc=idm,dc=example,dc=com
Nota

Antes de modificar un grupo, obtenga el nombre distinguido (DN) del grupo buscando con el nombre del grupo.

# ldapsearch -YGSSAPI -H ldap://server.idm.example.com -b "cn=groups,cn=accounts,dc=idm,dc=example,dc=com" "cn=group_name"
dn: cn=group_name,cn=groups,cn=accounts,dc=idm,dc=example,dc=com
ipaNTSecurityIdentifier: S-1-5-21-1650388524-2605035987-2578146103-11017
cn: testgroup
objectClass: top
objectClass: groupofnames
objectClass: nestedgroup
objectClass: ipausergroup
objectClass: ipaobject
objectClass: posixgroup
objectClass: ipantgroupattrs
ipaUniqueID: 569bf864-9d45-11ea-bea3-525400f6f085
gidNumber: 1997010017

26.3. Conservación de un usuario IdM con ldapmodify

Esta sección describe cómo utilizar ldapmodify para conservar un usuario de IdM; es decir, cómo desactivar una cuenta de usuario después de que el empleado haya dejado la empresa.

Requisitos previos

  • Puede autenticarse como usuario de IdM con un rol para preservar a los usuarios.

Procedimiento

  1. Inicie sesión como usuario de IdM con un rol para preservar usuarios:

    $ kinit admin
  2. Introduzca el comando ldapmodify y especifique la API de servicios de seguridad genéricos (GSSAPI) como el mecanismo de capa de seguridad y autenticación simple (SASL) que se utilizará para la autenticación:

    # ldapmodify -Y GSSAPI
    SASL/GSSAPI authentication started
    SASL username: admin@IDM.EXAMPLE.COM
    SASL SSF: 256
    SASL data security layer installed.
  3. Introduzca la dirección dn del usuario que desea conservar:

    dn: uid=user1,cn=users,cn=accounts,dc=idm,dc=example,dc=com
  4. Introduzca modrdn como el tipo de cambio que desea realizar:

    tipo de cambio: modrdn
  5. Especifique el newrdn para el usuario:

    newrdn: uid=user1
  6. Indique que desea conservar el usuario:

    deleteoldrdn: 0
  7. Especifique la dirección new superior DN:

    newsuperior: cn=usuarios eliminados,cn=cuentas,cn=aprovisionamiento,dc=idm,dc=ejemplo,dc=com

    La conservación de un usuario mueve la entrada a una nueva ubicación en el árbol de información del directorio (DIT). Por esta razón, debe especificar el DN de la nueva entrada padre como el nuevo DN superior.

  8. Vuelva a pulsar Enter para confirmar que es el final de la entrada:

    [Enter]
    
    modifying rdn of entry "uid=user1,cn=users,cn=accounts,dc=idm,dc=example,dc=com"
  9. Salga de la conexión mediante Ctrl C .

Pasos de verificación

  • Verifique que el usuario ha sido preservado, listando todos los usuarios preservados:

    $ ipa user-find --preserved=true
    --------------
    1 user matched
    --------------
      User login: user1
      First name: First 1
      Last name: Last 1
      Home directory: /home/user1
      Login shell: /bin/sh
      Principal name: user1@IDM.EXAMPLE.COM
      Principal alias: user1@IDM.EXAMPLE.COM
      Email address: user1@idm.example.com
      UID: 1997010003
      GID: 1997010003
      Account disabled: True
      Preserved user: True
    ----------------------------
    Number of entries returned 1
    ----------------------------

Capítulo 27. Gestión de hosts en IdM CLI

En este capítulo se presentan los hosts y las entradas de hosts en Identity Management (IdM), así como las siguientes operaciones que se realizan al gestionar los hosts y las entradas de hosts en la CLI de IdM:

El capítulo también contiene una tabla resumen de los requisitos previos, el contexto y las consecuencias de estas operaciones.

27.1. Hosts en IdM

La Gestión de Identidades (IdM) gestiona estas identidades:

  • Usuarios
  • Servicios
  • Anfitriones

Un host representa una máquina. Como identidad IdM, un host tiene una entrada en el LDAP de IdM, es decir, la instancia 389 del servidor IdM.

La entrada de host en IdM LDAP se utiliza para establecer relaciones entre otros hosts e incluso servicios dentro del dominio. Estas relaciones forman parte de delegating autorización y control a los hosts dentro del dominio. Cualquier host puede ser utilizado en las reglas de host-based access control (HBAC).

El dominio de IdM establece una comunidad entre las máquinas, con información de identidad común, políticas comunes y servicios compartidos. Cualquier máquina que pertenezca a un dominio funciona como cliente del mismo, lo que significa que utiliza los servicios que el dominio proporciona. El dominio IdM proporciona tres servicios principales específicos para las máquinas:

  • DNS
  • Kerberos
  • Gestión de certificados

Los hosts en IdM están estrechamente relacionados con los servicios que se ejecutan en ellos:

  • Las entradas de servicio están asociadas a un host.
  • Un host almacena tanto los principales de Kerberos del host como los del servicio.

27.2. Inscripción del anfitrión

Esta sección describe la inscripción de hosts como clientes de IdM y lo que ocurre durante y después de la inscripción. La sección compara la inscripción de hosts y usuarios de IdM. La sección también describe los tipos alternativos de autenticación disponibles para los hosts.

La inscripción de un anfitrión consiste en:

  • Creación de una entrada de host en IdM LDAP: posiblemente utilizando el comandoipa host-add en la CLI de IdM, o la operación equivalente de la interfaz web de IdM.
  • Configurar los servicios de IdM en el host, por ejemplo, el demonio de servicios de seguridad del sistema (SSSD), Kerberos y certmonger, y unir el host al dominio de IdM.

Las dos acciones pueden realizarse por separado o conjuntamente.

Si se realizan por separado, permiten dividir las dos tareas entre dos usuarios con diferentes niveles de privilegio. Esto es útil para los despliegues masivos.

El comando ipa-client-install puede realizar las dos acciones juntas. El comando crea una entrada de host en el LDAP de IdM si esa entrada aún no existe, y configura los servicios Kerberos y SSSD para el host. El comando introduce el host en el dominio IdM y le permite identificar el servidor IdM con el que se conectará. Si el host pertenece a una zona DNS gestionada por IdM, ipa-client-install también añade registros DNS para el host. El comando debe ejecutarse en el cliente.

27.2.1. Privilegios de usuario necesarios para la inscripción en el host

La operación de inscripción de hosts requiere autenticación para evitar que un usuario sin privilegios añada máquinas no deseadas al dominio de IdM. Los privilegios necesarios dependen de varios factores, por ejemplo:

  • Si se crea una entrada de host por separado de la ejecución de ipa-client-install
  • Si se utiliza una contraseña de un solo uso (OTP) para la inscripción
Privilegios de usuario para crear manualmente una entrada de host en IdM LDAP

El privilegio de usuario necesario para crear una entrada de host en IdM LDAP mediante el comando CLI ipa host-add o la interfaz web de IdM es Host Administrators. El privilegio Host Administrators se puede obtener a través del rol IT Specialist.

Privilegios de usuario para unir el cliente al dominio IdM

Los hosts se configuran como clientes IdM durante la ejecución del comando ipa-client-install. El nivel de credenciales necesario para ejecutar el comando ipa-client-install depende de cuál de los siguientes escenarios de inscripción se encuentre:

  • La entrada del host en IdM LDAP no existe. Para este escenario, necesita las credenciales de un administrador completo o el rol Host Administrators. Un administrador completo es un miembro del grupo admins. La función Host Administrators proporciona privilegios para añadir hosts y registrar hosts. Para más detalles sobre este escenario, consulte Instalación de un cliente con credenciales de usuario: instalación interactiva.
  • La entrada del host en IdM LDAP existe. Para este escenario, se necesitan las credenciales de un administrador limitado para ejecutar ipa-client-install con éxito. El administrador limitado en este caso tiene el rol Enrollment Administrator, que proporciona el privilegio Host Enrollment. Para obtener más detalles, consulte Instalación de un cliente con credenciales de usuario: instalación interactiva.
  • La entrada del host en el LDAP de IdM existe, y un administrador completo o limitado ha generado un OTP para el host. En este caso, puede instalar un cliente IdM como un usuario normal si ejecuta el comando ipa-client-install con la opción --password, proporcionando la OTP correcta. Para obtener más información, consulte Instalación de un cliente mediante una contraseña de un solo uso: Instalación interactiva.

Tras la inscripción, los hosts de IdM autentican cada nueva sesión para poder acceder a los recursos de IdM. La autenticación de la máquina es necesaria para que el servidor IdM confíe en ella y acepte las conexiones IdM del software cliente instalado en esa máquina. Después de autenticar al cliente, el servidor IdM puede responder a sus solicitudes.

27.2.2. Registro y autenticación de hosts y usuarios de IdM: comparación

Existen muchas similitudes entre los usuarios y los hosts en IdM. En esta sección se describen algunas de las similitudes que se pueden observar durante la etapa de inscripción, así como las que se refieren a la autenticación durante la etapa de despliegue.

  • La etapa de inscripción (Tabla 27.1, “Inscripción de usuarios y hosts”):

    • Un administrador puede crear una entrada LDAP tanto para un usuario como para un host antes de que el usuario o el host se unan realmente a IdM: para el usuario del escenario, el comando es ipa stageuser-add; para el host, el comando es ipa host-add.
    • Durante la ejecución del comando ipa-client-install en el host se crea un archivo que contiene una key table o, abreviado, keytab, una clave simétrica que se asemeja en cierta medida a una contraseña de usuario, lo que hace que el host se una al reino IdM. De forma análoga, se pide a un usuario que cree una contraseña cuando activa su cuenta, uniéndose así al reino IdM.
    • Mientras que la contraseña de usuario es el método de autenticación por defecto para un usuario, el keytab es el método de autenticación por defecto para un host. El keytab se almacena en un archivo en el host.

    Tabla 27.1. Inscripción de usuarios y hosts

    AcciónUsuarioAnfitrión

    Antes de la inscripción

    $ ipa stageuser-add user_name [--password]

    $ ipa host-add host_name [--random]

    Activación de la cuenta

    $ ipa stageuser-activate user_name

    $ ipa-client install [--password] (debe ejecutarse en el propio host)

  • La etapa de despliegue (Tabla 27.2, “Autenticación de la sesión del usuario y del host”):

    • Cuando un usuario inicia una nueva sesión, se autentifica utilizando una contraseña; del mismo modo, cada vez que se enciende, el host se autentifica presentando su archivo keytab. El demonio de servicios de seguridad del sistema (SSSD) gestiona este proceso en segundo plano.
    • Si la autenticación tiene éxito, el usuario o el host obtiene un ticket de concesión de Kerberos (TGT).
    • El TGT se utiliza entonces para obtener billetes específicos para servicios concretos.

    Tabla 27.2. Autenticación de la sesión del usuario y del host

     UsuarioAnfitrión

    Medio de autentificación por defecto

    Password

    Keytabs

    Iniciar una sesión (usuario ordinario)

    $ kinit user_name

    [switch on the host]

    El resultado de una autenticación exitosa

    TGT para obtener acceso a servicios específicos

    TGT para obtener acceso a servicios específicos

Los TGT y otros tiques Kerberos se generan como parte de los servicios y políticas Kerberos definidos por el servidor. La concesión inicial de un ticket Kerberos, la renovación de las credenciales Kerberos e incluso la destrucción de la sesión Kerberos son gestionadas automáticamente por los servicios IdM.

27.2.3. Opciones alternativas de autenticación para los hosts de IdM

Además de los keytabs, IdM admite otros dos tipos de autenticación de máquinas:

  • Claves SSH. La clave pública SSH para el host se crea y se carga en la entrada del host. A partir de ahí, el demonio de servicios de seguridad del sistema (SSSD) utiliza IdM como proveedor de identidad y puede trabajar en conjunto con OpenSSH y otros servicios para hacer referencia a las claves públicas ubicadas centralmente en IdM.
  • Certificados de máquina. En este caso, la máquina utiliza un certificado SSL emitido por la autoridad de certificación del servidor de IdM y almacenado en el servidor de directorio de IdM. El certificado se envía entonces a la máquina para que lo presente cuando se autentique en el servidor. En el cliente, los certificados son gestionados por un servicio llamado certmonger.

27.3. Operaciones de acogida

Esta sección enumera las operaciones más comunes relacionadas con la inscripción y habilitación de hosts, y explica los requisitos previos, el contexto y las consecuencias de realizarlas.

Tabla 27.3. Operaciones de acogida parte 1

Acción¿Cuáles son los requisitos de la acción?¿Cuándo tiene sentido ejecutar el comando?¿Cómo realiza la acción un administrador del sistema? ¿Qué comando(s) ejecuta?

Enrolling a client

consulte Preparación del sistema para la instalación del cliente de gestión de identidades en Installing_Identity_Management

Cuando quiera que el host se una al reino de IdM.

La inscripción de máquinas como clientes en el dominio IdM es un proceso de dos partes. Se crea una entrada de host para el cliente (y se almacena en la instancia 389 del servidor de directorios) cuando se ejecuta el comando ipa host-add y, a continuación, se crea un keytab para aprovisionar al cliente. Ambas partes son realizadas automáticamente por el comando ipa-client-install. También es posible realizar estos pasos por separado; esto permite a los administradores preparar las máquinas y el IdM antes de configurar los clientes. Esto permite escenarios de configuración más flexibles, incluyendo despliegues masivos.

Disabling a client

El host debe tener una entrada en IdM. El host debe tener un keytab activo.

Cuando se desea eliminar el host del ámbito de IdM temporalmente, quizás por motivos de mantenimiento.

ipa host-disable host_name

Enabling a client

El host debe tener una entrada en IdM.

Cuando quieras que el host temporalmente desactivado vuelva a estar activo.

ipa-getkeytab

Re-enrolling a client

El host debe tener una entrada en IdM.

Cuando se ha perdido el host original pero se ha instalado un host con el mismo nombre de host.

ipa-client-install --keytab o ipa-client-install --force-join

Un-enrolling a client

El host debe tener una entrada en IdM.

Si desea eliminar el host del ámbito de IdM de forma permanente.

ipa-client-install --uninstall

Tabla 27.4. Operaciones de acogida parte 2

Acción¿En qué máquina puede el administrador ejecutar los comandos?¿Qué ocurre cuando se realiza la acción? ¿Cuáles son las consecuencias para el funcionamiento del host en IdM? ¿Qué limitaciones se introducen/suprimen?

Enrolling a client

En el caso de una inscripción en dos pasos: ipa host-add puede ejecutarse en cualquier cliente IdM; el segundo paso de ipa-client-install debe ejecutarse en el propio cliente

Por defecto, esto configura SSSD para conectarse a un servidor IdM para la autenticación y autorización. Opcionalmente se puede configurar el Pluggable Authentication Module (PAM) y el Name Switching Service (NSS) para trabajar con un servidor IdM sobre Kerberos y LDAP.

Disabling a client

Cualquier máquina en IdM, incluso el propio host

La clave Kerberos y el certificado SSL del host se invalidan, y todos los servicios que se ejecutan en el host se desactivan.

Enabling a client

Cualquier máquina en IdM. Si se ejecuta en el host deshabilitado, es necesario suministrar las credenciales LDAP.

La clave Kerberos del host y el certificado SSL vuelven a ser válidos, y todos los servicios IdM que se ejecutan en el host se vuelven a habilitar.

Re-enrolling a client

El host que se va a reinscribir. Es necesario suministrar las credenciales LDAP.

Se genera una nueva clave Kerberos para el host, sustituyendo la anterior.

Un-enrolling a client

El anfitrión que se va a dar de baja.

El comando desconfigura IdM e intenta devolver la máquina a su estado anterior. Parte de este proceso consiste en desinscribir la máquina del servidor IdM. La desinscripción consiste en desactivar la clave de la máquina en el servidor IdM. La entidad de seguridad de la máquina en /etc/krb5.keytab (host/<fqdn>@REALM) se utiliza para autenticarse en el servidor IdM para desinscribirse. Si esta entidad de seguridad no existe, la desinscripción fallará y el administrador tendrá que desactivar la entidad de seguridad del host (ipa host-disable <fqdn>).

27.4. Entrada de host en IdM LDAP

Esta sección describe el aspecto de una entrada de host en la Gestión de identidades (IdM) y los atributos que puede contener.

Una entrada de host LDAP contiene toda la información relevante sobre el cliente dentro de IdM:

  • Entradas de servicio asociadas al host
  • El anfitrión y el director del servicio
  • Normas de control de acceso
  • Información sobre la máquina, como su ubicación física y su sistema operativo
Nota

Tenga en cuenta que la pestaña IdM Web UI IdentityHosts no muestra toda la información sobre un host concreto almacenada en el LDAP de IdM.

27.4.1. Propiedades de configuración de la entrada del host

Una entrada de host puede contener información sobre el host que está fuera de su configuración del sistema, como su ubicación física, dirección MAC, claves y certificados.

Esta información puede establecerse cuando se crea la entrada del host si se crea manualmente. Alternativamente, la mayor parte de esta información se puede añadir a la entrada del host después de que el host esté inscrito en el dominio.

Tabla 27.5. Propiedades de configuración del host

Campo UIOpción de línea de comandosDescripción

Descripción

--desc=description

Una descripción del anfitrión.

Localidad

--locality=locality

La ubicación geográfica del anfitrión.

Ubicación

--location=location

La ubicación física del host, como el rack de su centro de datos.

Plataforma

--platform=string

El hardware o la arquitectura del host.

Sistema operativo

--os=string

El sistema operativo y la versión del host.

Dirección MAC

--macaddress=address

La dirección MAC del host. Se trata de un atributo con varios valores. El complemento NIS utiliza la dirección MAC para crear un mapa NIS ethers para el host.

Claves públicas SSH

--sshpubkey=string

La clave pública SSH completa para el host. Este es un atributo multivaluado, por lo que se pueden establecer múltiples claves.

Nombre del director (no editable)

--principalname=principal

El nombre de la entidad de seguridad Kerberos para el host. Por defecto es el nombre del host durante la instalación del cliente, a menos que se establezca explícitamente una entidad de seguridad diferente en -p. Esto puede ser cambiado usando las herramientas de línea de comandos, pero no puede ser cambiado en la UI.

Establecer una contraseña única

--password=string

Esta opción establece una contraseña para el host que se puede utilizar en la inscripción masiva.

-

--random

Esta opción genera una contraseña aleatoria que se utilizará en la inscripción masiva.

-

--certificate=string

Un blob de certificado para el host.

-

--updatedns

Establece si el host puede actualizar dinámicamente sus entradas DNS si su dirección IP cambia.

27.5. Añadir entradas de host IdM desde la CLI de IdM

Esta sección describe cómo añadir entradas de host en Identity Management (IdM) mediante la interfaz de línea de comandos (CLI).

Las entradas de host se crean con el comando host-add. Este comando añade la entrada de host al servidor de directorio IdM. Consulte la página de manual ipa host escribiendo ipa help host en su CLI para obtener la lista completa de opciones disponibles con host-add.

Hay varios escenarios diferentes cuando se añade un host a IdM:

  • En su forma más básica, especifica sólo el nombre del host del cliente para añadirlo al ámbito de Kerberos y crear una entrada en el servidor LDAP de IdM:

    $ ipa host-add client1.example.com
  • Si el servidor IdM está configurado para gestionar DNS, añada el host a los registros de recursos DNS utilizando la opción --ip-address.

    Ejemplo 27.1. Creación de entradas de host con direcciones IP estáticas

    $ ipa host-add --ip-address=192.168.166.31 client1.example.com
  • Si el host que se va a añadir no tiene una dirección IP estática o si no se conoce la dirección IP en el momento de configurar el cliente, utilice la opción --force con el comando ipa host-add.

    Ejemplo 27.2. Creación de entradas de host con DHCP

    $ ipa host-add --force client1.example.com

    Por ejemplo, los ordenadores portátiles pueden estar preconfigurados como clientes de IdM, pero no tienen direcciones IP en el momento de su configuración. El uso de --force crea esencialmente una entrada de marcador de posición en el servicio DNS de IdM. Cuando el servicio DNS actualiza dinámicamente sus registros, se detecta la dirección IP actual del host y se actualiza su registro DNS.

27.6. Eliminación de entradas de host desde la CLI de IdM

  • Utilice el comando host-del para eliminar los registros de host. Si su dominio IdM tiene DNS integrado, utilice la opción --updatedns para eliminar los registros asociados de cualquier tipo para el host del DNS:

    $ ipa host-del --updatedns client1.example.com

27.7. Volver a inscribir a un cliente de Gestión de Identidades

27.7.1. Reinscripción de clientes en IdM

Esta sección describe cómo volver a inscribir a un cliente de gestión de identidades (IdM).

Si una máquina cliente ha sido destruida y ha perdido la conexión con los servidores de IdM, por ejemplo debido a un fallo de hardware del cliente, y todavía tienes su keytab, puedes volver a inscribir al cliente. En este caso, lo que quieres es que el cliente vuelva al entorno IdM con el mismo nombre de host.

Durante la reinscripción, el cliente genera una nueva clave Kerberos y claves SSH, pero la identidad del cliente en la base de datos LDAP no cambia. Después de la reinscripción, el host tiene sus claves y otra información en el mismo objeto LDAP con la misma FQDN que anteriormente, antes de la pérdida de conexión de la máquina con los servidores IdM.

Importante

Sólo puede volver a inscribir a los clientes cuya entrada de dominio aún está activa. Si ha desinstalado un cliente (mediante ipa-client-install --uninstall) o ha desactivado su entrada de host (mediante ipa host-disable), no podrá volver a inscribirlo.

No se puede volver a inscribir a un cliente después de haberle cambiado el nombre. Esto se debe a que en la Gestión de Identidades, el atributo clave de la entrada del cliente en LDAP es el nombre de host del cliente, su FQDN. A diferencia de la reinscripción de un cliente, durante la cual el objeto LDAP del cliente no cambia, el resultado de cambiar el nombre de un cliente es que éste tiene sus claves y otra información en un objeto LDAP diferente con un nuevo FQDN. Por lo tanto, la única forma de cambiar el nombre de un cliente es desinstalar el host de IdM, cambiar el nombre del host e instalarlo como cliente de IdM con un nuevo nombre. Para más detalles sobre cómo cambiar el nombre de un cliente, consulte Sección 27.8, “Renombrar los sistemas cliente de Gestión de Identidades”.

27.7.1.1. Qué ocurre durante la reinscripción de los clientes

Durante la reinscripción, la gestión de la identidad:

  • Revoca el certificado original del host
  • Crea nuevas claves SSH
  • Genera un nuevo keytab

27.7.2. Reinscripción de un cliente mediante credenciales de usuario: Reinscripción interactiva

Este procedimiento describe la reinscripción de un cliente de gestión de identidades de forma interactiva utilizando las credenciales de un usuario autorizado.

  1. Vuelva a crear la máquina cliente con el mismo nombre de host.
  2. Ejecute el comando ipa-client-install --force-join en la máquina cliente:

    # ipa-client-install --force-join
  3. El script solicita un usuario cuya identidad se utilizará para reinscribir al cliente. Podría ser, por ejemplo, un usuario de hostadmin con el rol de administrador de inscripciones:

    User authorized to enroll computers: hostadmin
    Password for hostadmin@EXAMPLE.COM:

Recursos adicionales

27.7.3. Reinscripción de un cliente mediante el uso de la ficha de clave del cliente: Reinscripción no interactiva

Requisitos previos

  • Haga una copia de seguridad del archivo keytab original del cliente, por ejemplo en el directorio /tmp o /root.

Procedimiento

Este procedimiento describe la reinscripción de un cliente de gestión de identidades (IdM) de forma no interactiva mediante el uso del llavero del sistema cliente. Por ejemplo, la reinscripción mediante el llavero del cliente es adecuada para una instalación automatizada.

  1. Vuelva a crear la máquina cliente con el mismo nombre de host.
  2. Copie el archivo keytab desde la ubicación de la copia de seguridad al directorio /etc/ en la máquina cliente recreada.
  3. Utilice la utilidad ipa-client-install para volver a inscribir el cliente, y especifique la ubicación del keytab con la opción --keytab:

    # ipa-client-install --keytab /etc/krb5.keytab
    Nota

    El keytab especificado en la opción --keytab sólo se utiliza cuando se autentifica para iniciar la inscripción. Durante la reinscripción, IdM genera un nuevo keytab para el cliente.

27.7.4. Probar un cliente de gestión de identidades después de la instalación

La interfaz de línea de comandos le informa de que el ipa-client-install se ha realizado con éxito, pero también puede hacer su propia prueba.

Para comprobar que el cliente de gestión de identidades puede obtener información sobre los usuarios definidos en el servidor, compruebe que puede resolver un usuario definido en el servidor. Por ejemplo, para comprobar el usuario predeterminado admin:

[user@client1 ~]$ id admin
uid=1254400000(admin) gid=1254400000(admins) groups=1254400000(admins)

Para comprobar que la autenticación funciona correctamente, su - como otro usuario de IdM:

[user@client1 ~]$ su - idm_user
Last login: Thu Oct 18 18:39:11 CEST 2018 from 192.168.122.1 on pts/0
[idm_user@client1 ~]$

27.8. Renombrar los sistemas cliente de Gestión de Identidades

Las siguientes secciones describen cómo cambiar el nombre del host de un sistema cliente de Gestión de Identidades.

Aviso

Cambiar el nombre de un cliente es un procedimiento manual. No lo realice a menos que sea absolutamente necesario cambiar el nombre del host.

El cambio de nombre de un cliente de Gestión de Identidades implica:

  1. Preparar el anfitrión. Para más detalles, consulte Sección 27.8.1, “Requisitos previos”
  2. Desinstalar el cliente IdM del host. Para más detalles, consulte Sección 27.8.2, “Desinstalación de un cliente de gestión de identidades”
  3. Cambiar el nombre del host. Para más detalles, consulte Sección 27.8.3, “Cambiar el nombre del sistema anfitrión”
  4. Instalar el cliente IdM en el host con el nuevo nombre. Para más detalles, consulte Sección 27.8.4, “Reinstalación de un cliente de gestión de identidades”
  5. Configurar el host después de la instalación del cliente IdM. Para más detalles, consulte Sección 27.8.5, “Volver a añadir servicios, volver a generar certificados y volver a añadir grupos de hosts”

27.8.1. Requisitos previos

Antes de desinstalar el cliente actual, tome nota de ciertas configuraciones para el cliente. Aplicará esta configuración después de volver a inscribir la máquina con un nuevo nombre de host.

  • Identificar qué servicios se están ejecutando en la máquina:

    • Utilice el comando ipa service-find, e identifique los servicios con certificados en la salida:

      $ ipa service-find old-client-name.example.com
    • Además, cada host tiene un host service por defecto que no aparece en la salida de ipa service-find. El principal del servicio del host, también llamado host principal, es host/old-client-name.example.com.
  • Para todos los directores de servicio mostrados por ipa service-find old-client-name.example.comdetermine la ubicación de las fichas de claves correspondientes en el old-client-name.example.com sistema:

    # find / -name "*.keytab"

    Cada servicio en el sistema cliente tiene una entidad de seguridad Kerberos de la forma service_name/host_name@REALM, como ldap/old-client-name.example.com@EXAMPLE.COM.

  • Identifica todos los grupos de hosts a los que pertenece la máquina.

    # ipa hostgroup-find old-client-name.example.com

27.8.2. Desinstalación de un cliente de gestión de identidades

La desinstalación de un cliente elimina el cliente del dominio de Gestión de Identidades, junto con toda la configuración específica de Gestión de Identidades de los servicios del sistema, como System Security Services Daemon (SSSD). Esto restablece la configuración anterior del sistema cliente.

Procedimiento

  1. Ejecute el comando ipa-client-install --uninstall:

    [root@client]# ipa-client-install --uninstall
  2. Elimine manualmente del servidor las entradas DNS del host cliente:

    [root@server]# ipa dnsrecord-del
    Record name: old-client-client
    Zone name: idm.example.com
    No option to delete specific record provided.
    Delete all? Yes/No (default No): yes
    ------------------------
    Deleted record "old-client-name"
  3. Para cada keytab identificado que no sea /etc/krb5.keytab, elimine los antiguos principales:

    [root@client ~]# ipa-rmkeytab -k /path/to/keytab -r EXAMPLE.COM
  4. En un servidor IdM, elimine la entrada del host. Esto elimina todos los servicios y revoca todos los certificados emitidos para ese host:

    [root@server ~]# ipa host-del client.example.com

27.8.3. Cambiar el nombre del sistema anfitrión

Cambie el nombre de la máquina según sea necesario. Por ejemplo:

[root@client]# hostnamectl set-hostname new-client-name.example.com

Ahora puede volver a instalar el cliente de gestión de identidades en el dominio de gestión de identidades con el nuevo nombre de host.

27.8.4. Reinstalación de un cliente de gestión de identidades

Instale un cliente en su host renombrado siguiendo el procedimiento descrito en Instalación de un cliente de gestión de identidades: Escenario básico en Installing Identity Management.

27.8.5. Volver a añadir servicios, volver a generar certificados y volver a añadir grupos de hosts

  1. En el servidor de gestión de identidades (IdM), añada un nuevo keytab para cada servicio identificado en Sección 27.8.1, “Requisitos previos”.

    [root@server ~]# ipa service-add service_name/new-client-name
  2. Generar certificados para servicios que tenían un certificado asignado en Sección 27.8.1, “Requisitos previos”. Puede hacer esto:

    • Uso de las herramientas de administración de IdM
    • Utilizando la utilidad certmonger
  3. Vuelva a añadir el cliente a los grupos de hosts identificados en Sección 27.8.1, “Requisitos previos”.

27.9. Desactivación y reactivación de las entradas de host

Esta sección describe cómo desactivar y volver a activar los hosts en la Gestión de Identidades (IdM).

27.9.1. Desactivación de hosts

Realice este procedimiento para desactivar una entrada de host en IdM.

Los servicios de dominio, los hosts y los usuarios pueden acceder a un host activo. Puede haber situaciones en las que sea necesario eliminar un host activo temporalmente, por razones de mantenimiento, por ejemplo. Eliminar el host en tales situaciones no es deseable, ya que elimina la entrada del host y toda la configuración asociada de forma permanente. En su lugar, elija la opción de desactivar el host.

Desactivar un host impide que los usuarios del dominio accedan a él sin eliminarlo permanentemente del dominio. Esto puede hacerse utilizando el comando host-disable. Al deshabilitar un host se eliminan los keytabs actuales y activos del mismo.

Por ejemplo:

$ kinit admin
$ ipa host-disable client.example.com

Al desactivar un host, éste deja de estar disponible para todos los usuarios, hosts y servicios de IdM.

Importante

Desactivar una entrada de host no sólo desactiva ese host. También desactiva todos los servicios configurados en ese host.

27.9.2. Reactivación de hosts

Esta sección describe cómo volver a habilitar un host IdM desactivado.

Al deshabilitar un host se eliminan sus keytabs activos, lo que hace que el host desaparezca del dominio IdM sin tocar su entrada de configuración.

Para volver a habilitar un host, utilice el comando ipa-getkeytab, añadiendo:

  • la opción -s para especificar a qué servidor de IdM solicitar el keytab
  • la opción -p para especificar el nombre del director
  • la opción -k para especificar el archivo en el que guardar el keytab.

Por ejemplo, para solicitar un nuevo keytab de host a server.example.com para client.example.com, y almacenar el keytab en el archivo /etc/krb5.keytab:

$  ipa-getkeytab -s server.example.com -p host/client.example.com -k /etc/krb5.keytab -D "cn=directory manager" -w password
Nota

También puede utilizar las credenciales del administrador, especificando -D "uid=admin,cn=users,cn=accounts,dc=example,dc=com". Es importante que las credenciales correspondan a un usuario autorizado a crear el keytab para el host.

Si el comando ipa-getkeytab se ejecuta en un cliente o servidor IdM activo, puede ejecutarse sin ninguna credencial LDAP (-D y -w) si el usuario tiene un TGT obtenido mediante, por ejemplo, kinit admin. Para ejecutar el comando directamente en el host deshabilitado, proporcione las credenciales LDAP para autenticarse en el servidor IdM.

Capítulo 28. Añadir entradas de host desde la interfaz web de IdM

En este capítulo se presentan los hosts en la Gestión de identidades (IdM) y el funcionamiento de la adición de una entrada de host en la interfaz web de IdM.

28.1. Hosts en IdM

La Gestión de Identidades (IdM) gestiona estas identidades:

  • Usuarios
  • Servicios
  • Anfitriones

Un host representa una máquina. Como identidad IdM, un host tiene una entrada en el LDAP de IdM, es decir, la instancia 389 del servidor IdM.

La entrada de host en IdM LDAP se utiliza para establecer relaciones entre otros hosts e incluso servicios dentro del dominio. Estas relaciones forman parte de delegating autorización y control a los hosts dentro del dominio. Cualquier host puede ser utilizado en las reglas de host-based access control (HBAC).

El dominio de IdM establece una comunidad entre las máquinas, con información de identidad común, políticas comunes y servicios compartidos. Cualquier máquina que pertenezca a un dominio funciona como cliente del mismo, lo que significa que utiliza los servicios que el dominio proporciona. El dominio IdM proporciona tres servicios principales específicos para las máquinas:

  • DNS
  • Kerberos
  • Gestión de certificados

Los hosts en IdM están estrechamente relacionados con los servicios que se ejecutan en ellos:

  • Las entradas de servicio están asociadas a un host.
  • Un host almacena tanto los principales de Kerberos del host como los del servicio.

28.2. Inscripción del anfitrión

Esta sección describe la inscripción de hosts como clientes de IdM y lo que ocurre durante y después de la inscripción. La sección compara la inscripción de hosts y usuarios de IdM. La sección también describe los tipos alternativos de autenticación disponibles para los hosts.

La inscripción de un anfitrión consiste en:

  • Creación de una entrada de host en IdM LDAP: posiblemente utilizando el comandoipa host-add en la CLI de IdM, o la operación equivalente de la interfaz web de IdM.
  • Configurar los servicios de IdM en el host, por ejemplo, el demonio de servicios de seguridad del sistema (SSSD), Kerberos y certmonger, y unir el host al dominio de IdM.

Las dos acciones pueden realizarse por separado o conjuntamente.

Si se realizan por separado, permiten dividir las dos tareas entre dos usuarios con diferentes niveles de privilegio. Esto es útil para los despliegues masivos.

El comando ipa-client-install puede realizar las dos acciones juntas. El comando crea una entrada de host en el LDAP de IdM si esa entrada aún no existe, y configura los servicios Kerberos y SSSD para el host. El comando introduce el host en el dominio IdM y le permite identificar el servidor IdM con el que se conectará. Si el host pertenece a una zona DNS gestionada por IdM, ipa-client-install también añade registros DNS para el host. El comando debe ejecutarse en el cliente.

28.2.1. Privilegios de usuario necesarios para la inscripción en el host

La operación de inscripción de hosts requiere autenticación para evitar que un usuario sin privilegios añada máquinas no deseadas al dominio de IdM. Los privilegios necesarios dependen de varios factores, por ejemplo:

  • Si se crea una entrada de host por separado de la ejecución de ipa-client-install
  • Si se utiliza una contraseña de un solo uso (OTP) para la inscripción
Privilegios de usuario para crear manualmente una entrada de host en IdM LDAP

El privilegio de usuario necesario para crear una entrada de host en IdM LDAP mediante el comando CLI ipa host-add o la interfaz web de IdM es Host Administrators. El privilegio Host Administrators se puede obtener a través del rol IT Specialist.

Privilegios de usuario para unir el cliente al dominio IdM

Los hosts se configuran como clientes IdM durante la ejecución del comando ipa-client-install. El nivel de credenciales necesario para ejecutar el comando ipa-client-install depende de cuál de los siguientes escenarios de inscripción se encuentre:

  • La entrada del host en IdM LDAP no existe. Para este escenario, necesita las credenciales de un administrador completo o el rol Host Administrators. Un administrador completo es un miembro del grupo admins. La función Host Administrators proporciona privilegios para añadir hosts y registrar hosts. Para más detalles sobre este escenario, consulte Instalación de un cliente con credenciales de usuario: instalación interactiva.
  • La entrada del host en IdM LDAP existe. Para este escenario, se necesitan las credenciales de un administrador limitado para ejecutar ipa-client-install con éxito. El administrador limitado en este caso tiene el rol Enrollment Administrator, que proporciona el privilegio Host Enrollment. Para obtener más detalles, consulte Instalación de un cliente con credenciales de usuario: instalación interactiva.
  • La entrada del host en el LDAP de IdM existe, y un administrador completo o limitado ha generado un OTP para el host. En este caso, puede instalar un cliente IdM como un usuario normal si ejecuta el comando ipa-client-install con la opción --password, proporcionando la OTP correcta. Para obtener más información, consulte Instalación de un cliente mediante una contraseña de un solo uso: Instalación interactiva.

Tras la inscripción, los hosts de IdM autentican cada nueva sesión para poder acceder a los recursos de IdM. La autenticación de la máquina es necesaria para que el servidor IdM confíe en ella y acepte las conexiones IdM del software cliente instalado en esa máquina. Después de autenticar al cliente, el servidor IdM puede responder a sus solicitudes.

28.2.2. Registro y autenticación de hosts y usuarios de IdM: comparación

Existen muchas similitudes entre los usuarios y los hosts en IdM. En esta sección se describen algunas de las similitudes que se pueden observar durante la etapa de inscripción, así como las que se refieren a la autenticación durante la etapa de despliegue.

  • La etapa de inscripción (Tabla 28.1, “Inscripción de usuarios y hosts”):

    • Un administrador puede crear una entrada LDAP tanto para un usuario como para un host antes de que el usuario o el host se unan realmente a IdM: para el usuario del escenario, el comando es ipa stageuser-add; para el host, el comando es ipa host-add.
    • Durante la ejecución del comando ipa-client-install en el host se crea un archivo que contiene una key table o, abreviado, keytab, una clave simétrica que se asemeja en cierta medida a una contraseña de usuario, lo que hace que el host se una al reino IdM. De forma análoga, se pide a un usuario que cree una contraseña cuando activa su cuenta, uniéndose así al reino IdM.
    • Mientras que la contraseña de usuario es el método de autenticación por defecto para un usuario, el keytab es el método de autenticación por defecto para un host. El keytab se almacena en un archivo en el host.

    Tabla 28.1. Inscripción de usuarios y hosts

    AcciónUsuarioAnfitrión

    Antes de la inscripción

    $ ipa stageuser-add user_name [--password]

    $ ipa host-add host_name [--random]

    Activación de la cuenta

    $ ipa stageuser-activate user_name

    $ ipa-client install [--password] (debe ejecutarse en el propio host)

  • La etapa de despliegue (Tabla 28.2, “Autenticación de la sesión del usuario y del host”):

    • Cuando un usuario inicia una nueva sesión, se autentifica utilizando una contraseña; del mismo modo, cada vez que se enciende, el host se autentifica presentando su archivo keytab. El demonio de servicios de seguridad del sistema (SSSD) gestiona este proceso en segundo plano.
    • Si la autenticación tiene éxito, el usuario o el host obtiene un ticket de concesión de Kerberos (TGT).
    • El TGT se utiliza entonces para obtener billetes específicos para servicios concretos.

    Tabla 28.2. Autenticación de la sesión del usuario y del host

     UsuarioAnfitrión

    Medio de autentificación por defecto

    Password

    Keytabs

    Iniciar una sesión (usuario ordinario)

    $ kinit user_name

    [switch on the host]

    El resultado de una autenticación exitosa

    TGT para obtener acceso a servicios específicos

    TGT para obtener acceso a servicios específicos

Los TGT y otros tiques Kerberos se generan como parte de los servicios y políticas Kerberos definidos por el servidor. La concesión inicial de un ticket Kerberos, la renovación de las credenciales Kerberos e incluso la destrucción de la sesión Kerberos son gestionadas automáticamente por los servicios IdM.

28.2.3. Opciones alternativas de autenticación para los hosts de IdM

Además de los keytabs, IdM admite otros dos tipos de autenticación de máquinas:

  • Claves SSH. La clave pública SSH para el host se crea y se carga en la entrada del host. A partir de ahí, el demonio de servicios de seguridad del sistema (SSSD) utiliza IdM como proveedor de identidad y puede trabajar en conjunto con OpenSSH y otros servicios para hacer referencia a las claves públicas ubicadas centralmente en IdM.
  • Certificados de máquina. En este caso, la máquina utiliza un certificado SSL emitido por la autoridad de certificación del servidor de IdM y almacenado en el servidor de directorio de IdM. El certificado se envía entonces a la máquina para que lo presente cuando se autentique en el servidor. En el cliente, los certificados son gestionados por un servicio llamado certmonger.

28.3. Entrada de host en IdM LDAP

Esta sección describe el aspecto de una entrada de host en la Gestión de identidades (IdM) y los atributos que puede contener.

Una entrada de host LDAP contiene toda la información relevante sobre el cliente dentro de IdM:

  • Entradas de servicio asociadas al host
  • El anfitrión y el director del servicio
  • Normas de control de acceso
  • Información sobre la máquina, como su ubicación física y su sistema operativo
Nota

Tenga en cuenta que la pestaña IdM Web UI IdentityHosts no muestra toda la información sobre un host concreto almacenada en el LDAP de IdM.

28.3.1. Propiedades de configuración de la entrada del host

Una entrada de host puede contener información sobre el host que está fuera de su configuración del sistema, como su ubicación física, dirección MAC, claves y certificados.

Esta información puede establecerse cuando se crea la entrada del host si se crea manualmente. Alternativamente, la mayor parte de esta información se puede añadir a la entrada del host después de que el host esté inscrito en el dominio.

Tabla 28.3. Propiedades de configuración del host

Campo UIOpción de línea de comandosDescripción

Descripción

--desc=description

Una descripción del anfitrión.

Localidad

--locality=locality

La ubicación geográfica del anfitrión.

Ubicación

--location=location

La ubicación física del host, como el rack de su centro de datos.

Plataforma

--platform=string

El hardware o la arquitectura del host.

Sistema operativo

--os=string

El sistema operativo y la versión del host.

Dirección MAC

--macaddress=address

La dirección MAC del host. Se trata de un atributo con varios valores. El complemento NIS utiliza la dirección MAC para crear un mapa NIS ethers para el host.

Claves públicas SSH

--sshpubkey=string

La clave pública SSH completa para el host. Este es un atributo multivaluado, por lo que se pueden establecer múltiples claves.

Nombre del director (no editable)

--principalname=principal

El nombre de la entidad de seguridad Kerberos para el host. Por defecto es el nombre del host durante la instalación del cliente, a menos que se establezca explícitamente una entidad de seguridad diferente en -p. Esto puede ser cambiado usando las herramientas de línea de comandos, pero no puede ser cambiado en la UI.

Establecer una contraseña única

--password=string

Esta opción establece una contraseña para el host que se puede utilizar en la inscripción masiva.

-

--random

Esta opción genera una contraseña aleatoria que se utilizará en la inscripción masiva.

-

--certificate=string

Un blob de certificado para el host.

-

--updatedns

Establece si el host puede actualizar dinámicamente sus entradas DNS si su dirección IP cambia.

28.4. Añadir entradas de host desde la interfaz web

  1. Abra la pestaña Identity y seleccione la subpestaña Hosts.
  2. Haga clic en Añadir en la parte superior de la lista de hosts.

    Figura 28.1. Añadir entradas de host

    hosts list
  3. Introduzca el nombre de la máquina y seleccione el dominio de las zonas configuradas en la lista desplegable. Si el host ya tiene asignada una dirección IP estática, inclúyala con la entrada del host para que la entrada DNS se cree completamente.

    El campo Class no tiene ningún propósito específico por el momento.

    Figura 28.2. Asistente para añadir host

    host add

    Las zonas DNS se pueden crear en IdM. Si el servidor IdM no gestiona el servidor DNS, la zona puede introducirse manualmente en el área del menú, como un campo de texto normal.

    Nota

    Seleccione la casilla Force si desea omitir la comprobación de si el host se puede resolver mediante DNS.

  4. Haga clic en el botón Add and Edit para ir directamente a la página de entrada ampliada e introducir más información de atributos. Se puede incluir información sobre el hardware del host y la ubicación física con la entrada del host.

    Figura 28.3. Página de entrada ampliada

    host attr

Capítulo 29. Gestión de los hosts mediante libros de juego de Ansible

Ansible es una herramienta de automatización que se utiliza para configurar sistemas, desplegar software y realizar actualizaciones continuas. Ansible incluye soporte para la gestión de identidades (IdM), y puede utilizar módulos de Ansible para automatizar la gestión de hosts.

En este capítulo se describen las siguientes operaciones que se realizan cuando se gestionan los hosts y las entradas de hosts mediante los libros de reproducción de Ansible:

29.1. Garantizar la presencia de una entrada de host de IdM con FQDN utilizando los libros de juego de Ansible

En esta sección se describe cómo garantizar la presencia de entradas de host en Identity Management (IdM) mediante los libros de juego de Ansible. Las entradas de host sólo se definen por su fully-qualified domain names (FQDNs).

Especificar el nombre FQDN del host es suficiente si se cumple al menos una de las siguientes condiciones:

  • El servidor IdM no está configurado para gestionar el DNS.
  • El host no tiene una dirección IP estática o la dirección IP no se conoce en el momento de configurar el host. Al añadir un host definido únicamente por un FQDN se crea esencialmente una entrada de marcador de posición en el servicio DNS de IdM. Por ejemplo, los ordenadores portátiles pueden estar preconfigurados como clientes IdM, pero no tienen direcciones IP en el momento en que se configuran. Cuando el servicio DNS actualiza dinámicamente sus registros, se detecta la dirección IP actual del host y se actualiza su registro DNS.
Nota

Sin Ansible, las entradas de host se crean en IdM mediante el comando ipa host-add. El resultado de añadir un host a IdM es el estado del host presente en IdM. Debido a la dependencia de Ansible en la idempotencia, para añadir un host a IdM utilizando Ansible, debe crear un libro de jugadas en el que se define el estado del host como presente: state: present.

Requisitos previos

  • Conoce la contraseña del administrador de IdM.
  • El paquete ansible-freeipa está instalado en el controlador Ansible.

Procedimiento

  1. Cree un archivo de inventario, por ejemplo inventory.file, y defina en él ipaserver:

    [ipaserver]
    server.idm.example.com
  2. Crea un archivo de playbook de Ansible con el FQDN del host cuya presencia en IdM quieres asegurar. Para simplificar este paso, puedes copiar y modificar el ejemplo en el archivo /usr/share/doc/ansible-freeipa/playbooks/host/add-host.yml:

    ---
    - name: Host present
      hosts: ipaserver
      become: true
    
      tasks:
      - name: Host host01.idm.example.com present
        ipahost:
          ipaadmin_password: MySecret123
          name: host01.idm.example.com
          state: present
          force: yes
  3. Ejecuta el libro de jugadas:

    $ ansible-playbook -v -i path_to_inventory_directory/inventory.file path_to_playbooks_directory/ensure-host-is-present.yml
Nota

El procedimiento da lugar a la creación de una entrada de host en el servidor LDAP de IdM, pero no a la inscripción del host en el ámbito de Kerberos de IdM. Para ello, debe implementar el host como cliente de IdM. Para obtener más detalles, consulte Instalación de un cliente de gestión de identidades mediante un libro de jugadas de Ansible.

Pasos de verificación

  1. Inicie sesión en su servidor IdM como administrador:

    $ ssh admin@server.idm.example.com
    Password:
  2. Introduzca el comando ipa host-show y especifique el nombre del host:

    $ ipa host-show host01.idm.example.com
      Host name: host01.idm.example.com
      Principal name: host/host01.idm.example.com@IDM.EXAMPLE.COM
      Principal alias: host/host01.idm.example.com@IDM.EXAMPLE.COM
      Password: False
      Keytab: False
      Managed by: host01.idm.example.com

La salida confirma que host01.idm.example.com existe en IdM.

29.2. Garantizar la presencia de una entrada de host de IdM con información de DNS utilizando los libros de juego de Ansible

En esta sección se describe cómo garantizar la presencia de entradas de host en Identity Management (IdM) mediante los libros de juego de Ansible. Las entradas de host se definen por su fully-qualified domain names (FQDNs) y sus direcciones IP.

Nota

Sin Ansible, las entradas de host se crean en IdM mediante el comando ipa host-add. El resultado de añadir un host a IdM es el estado del host presente en IdM. Debido a la dependencia de Ansible en la idempotencia, para añadir un host a IdM utilizando Ansible, debe crear un libro de jugadas en el que se define el estado del host como presente: state: present.

Requisitos previos

  • Conoce la contraseña del administrador de IdM.
  • El paquete ansible-freeipa está instalado en el controlador Ansible.

Procedimiento

  1. Cree un archivo de inventario, por ejemplo inventory.file, y defina en él ipaserver:

    [ipaserver]
    server.idm.example.com
  2. Cree un archivo de playbook de Ansible con el fully-qualified domain name (FQDN) del host cuya presencia en IdM desea asegurar. Además, si el servidor IdM está configurado para gestionar DNS y conoce la dirección IP del host, especifique un valor para el parámetro ip_address. La dirección IP es necesaria para que el host exista en los registros de recursos DNS. Para simplificar este paso, puede copiar y modificar el ejemplo en el archivo /usr/share/doc/ansible-freeipa/playbooks/host/host-present.yml. También puede incluir otra información adicional:

    ---
    - name: Host present
      hosts: ipaserver
      become: true
    
      tasks:
      - name: Ensure host01.idm.example.com is present
        ipahost:
          ipaadmin_password: MySecret123
          name: host01.idm.example.com
          description: Example host
          ip_address: 192.168.0.123
          locality: Lab
          ns_host_location: Lab
          ns_os_version: CentOS 7
          ns_hardware_platform: Lenovo T61
          mac_address:
          - "08:00:27:E3:B1:2D"
          - "52:54:00:BD:97:1E"
          state: present
  3. Ejecuta el libro de jugadas:

    $ ansible-playbook -v -i path_to_inventory_directory/inventory.file path_to_playbooks_directory/ensure-host-is-present.yml
Nota

El procedimiento da lugar a la creación de una entrada de host en el servidor LDAP de IdM, pero no a la inscripción del host en el ámbito de Kerberos de IdM. Para ello, debe implementar el host como cliente de IdM. Para obtener más detalles, consulte Instalación de un cliente de gestión de identidades mediante un libro de jugadas de Ansible.

Pasos de verificación

  1. Inicie sesión en su servidor IdM como administrador:

    $ ssh admin@server.idm.example.com
    Password:
  2. Introduzca el comando ipa host-show y especifique el nombre del host:

    $ ipa host-show host01.idm.example.com
      Host name: host01.idm.example.com
      Description: Example host
      Locality: Lab
      Location: Lab
      Platform: Lenovo T61
      Operating system: CentOS 7
      Principal name: host/host01.idm.example.com@IDM.EXAMPLE.COM
      Principal alias: host/host01.idm.example.com@IDM.EXAMPLE.COM
      MAC address: 08:00:27:E3:B1:2D, 52:54:00:BD:97:1E
      Password: False
      Keytab: False
      Managed by: host01.idm.example.com

La salida confirma que host01.idm.example.com existe en IdM.

29.3. Garantizar la presencia de múltiples entradas de host IdM con contraseñas aleatorias utilizando los playbooks de Ansible

El módulo ipahost permite al administrador del sistema asegurar la presencia o ausencia de múltiples entradas de host en IdM utilizando una sola tarea Ansible. Esta sección describe cómo asegurar la presencia de múltiples entradas de host que sólo están definidas por su fully-qualified domain names (FQDNs). La ejecución del playbook de Ansible genera contraseñas aleatorias para los hosts.

Nota

Sin Ansible, las entradas de host se crean en IdM mediante el comando ipa host-add. El resultado de añadir un host a IdM es el estado del host presente en IdM. Debido a la dependencia de Ansible en la idempotencia, para añadir un host a IdM utilizando Ansible, debe crear un libro de jugadas en el que se define el estado del host como presente: state: present.

Requisitos previos

  • Conoce la contraseña del administrador de IdM.
  • El paquete ansible-freeipa está instalado en el controlador Ansible.

Procedimiento

  1. Cree un archivo de inventario, por ejemplo inventory.file, y defina en él ipaserver:

    [ipaserver]
    server.idm.example.com
  2. Crea un archivo de playbook de Ansible con el fully-qualified domain name (FQDN) de los hosts cuya presencia en IdM quieres asegurar. Para que el playbook de Ansible genere una contraseña aleatoria para cada host incluso cuando el host ya existe en IdM y update_password se limita a on_create, añade las opciones random: yes y force: yes. Para simplificar este paso, puedes copiar y modificar el ejemplo del archivo Markdown de /usr/share/doc/ansible-freeipa/README-host.md:

    ---
    - name: Ensure hosts with random password
      hosts: ipaserver
      become: true
    
      tasks:
      - name: Hosts host01.idm.example.com and host02.idm.example.com present with random passwords
        ipahost:
          ipaadmin_password: MySecret123
          hosts:
          - name: host01.idm.example.com
            random: yes
            force: yes
          - name: host02.idm.example.com
            random: yes
            force: yes
        register: ipahost
  3. Ejecuta el libro de jugadas:

    $ ansible-playbook -v -i path_to_inventory_directory/inventory.file path_to_playbooks_directory/ensure-hosts-are-present.yml
    [...]
    TASK [Hosts host01.idm.example.com and host02.idm.example.com present with random passwords]
    changed: [r8server.idm.example.com] => {"changed": true, "host": {"host01.idm.example.com": {"randompassword": "0HoIRvjUdH0Ycbf6uYdWTxH"}, "host02.idm.example.com": {"randompassword": "5VdLgrf3wvojmACdHC3uA3s"}}}

Pasos de verificación

  1. Inicie sesión en su servidor IdM como administrador:

    $ ssh admin@server.idm.example.com
    Password:
  2. Introduzca el comando ipa host-show y especifique el nombre de uno de los hosts:

    $ ipa host-show host01.idm.example.com
      Host name: host01.idm.example.com
      Password: True
      Keytab: False
      Managed by: host01.idm.example.com

La salida confirma que host01.idm.example.com existe en IdM con una contraseña aleatoria.

29.4. Garantizar la presencia de una entrada de host de IdM con múltiples direcciones IP utilizando los playbooks de Ansible

En esta sección se describe cómo garantizar la presencia de una entrada de host en Identity Management (IdM) mediante los libros de juego de Ansible. La entrada de host se define por su fully-qualified domain name (FQDN) y sus múltiples direcciones IP.

Nota

A diferencia de la utilidad ipa host, el módulo de Ansible ipahost puede asegurar la presencia o ausencia de varias direcciones IPv4 e IPv6 para un host. El comando ipa host-mod no puede manejar direcciones IP.

Requisitos previos

  • Conoce la contraseña del administrador de IdM.
  • El paquete ansible-freeipa está instalado en el controlador Ansible.

Procedimiento

  1. Cree un archivo de inventario, por ejemplo inventory.file, y defina en él ipaserver:

    [ipaserver]
    server.idm.example.com
  2. Cree un archivo Ansible playbook. Especifique, como name de la variable ipahost, el fully-qualified domain name (FQDN) del host cuya presencia en IdM desea asegurar. Especifique cada uno de los múltiples valores de IPv4 e IPv6 ip_address en una línea separada utilizando la sintaxis - ip_address sintaxis. Para simplificar este paso, puede copiar y modificar el ejemplo en el archivo /usr/share/doc/ansible-freeipa/playbooks/host/host-member-ipaddresses-present.yml. También puede incluir información adicional:

    ---
    - name: Host member IP addresses present
      hosts: ipaserver
      become: true
    
      tasks:
      - name: Ensure host101.example.com IP addresses present
        ipahost:
          ipaadmin_password: MySecret123
          name: host01.idm.example.com
          ip_address:
          - 192.168.0.123
          - fe80::20c:29ff:fe02:a1b3
          - 192.168.0.124
          - fe80::20c:29ff:fe02:a1b4
          force: yes
  3. Ejecuta el libro de jugadas:

    $ ansible-playbook -v -i path_to_inventory_directory/inventory.file path_to_playbooks_directory/ensure-host-with-multiple-IP-addreses-is-present.yml
Nota

El procedimiento crea una entrada de host en el servidor LDAP de IdM, pero no inscribe el host en el ámbito de IdM Kerberos. Para ello, debe implementar el host como cliente de IdM. Para obtener más detalles, consulte Instalación de un cliente de gestión de identidades mediante un libro de jugadas de Ansible.

Pasos de verificación

  1. Inicie sesión en su servidor IdM como administrador:

    $ ssh admin@server.idm.example.com
    Password:
  2. Introduzca el comando ipa host-show y especifique el nombre del host:

    $ ipa host-show host01.idm.example.com
      Principal name: host/host01.idm.example.com@IDM.EXAMPLE.COM
      Principal alias: host/host01.idm.example.com@IDM.EXAMPLE.COM
      Password: False
      Keytab: False
      Managed by: host01.idm.example.com

    La salida confirma que host01.idm.example.com existe en IdM.

  3. Para verificar que las múltiples direcciones IP del host existen en los registros DNS de IdM, introduzca el comando ipa dnsrecord-show y especifique la siguiente información:

    • El nombre del dominio IdM
    • El nombre del anfitrión

      $ ipa dnsrecord-show idm.example.com host01
      [...]
        Record name: host01
        A record: 192.168.0.123, 192.168.0.124
        AAAA record: fe80::20c:29ff:fe02:a1b3, fe80::20c:29ff:fe02:a1b4

    La salida confirma que todas las direcciones IPv4 e IPv6 especificadas en el libro de jugadas están correctamente asociadas a la entrada de host host01.idm.example.com.

29.5. Garantizar la ausencia de una entrada en el host de IdM utilizando los playbooks de Ansible

En esta sección se describe cómo garantizar la ausencia de entradas de host en Identity Management (IdM) mediante los libros de juego de Ansible.

Requisitos previos

  • Credenciales de administrador de IdM

Procedimiento

  1. Cree un archivo de inventario, por ejemplo inventory.file, y defina en él ipaserver:

    [ipaserver]
    server.idm.example.com
  2. Cree un archivo de playbook de Ansible con el fully-qualified domain name (FQDN) del host cuya ausencia de IdM desea asegurar. Si tu dominio IdM tiene DNS integrado, utiliza la opción updatedns: yes para eliminar los registros asociados de cualquier tipo para el host desde el DNS.

    Para simplificar este paso, puede copiar y modificar el ejemplo en el archivo /usr/share/doc/ansible-freeipa/playbooks/host/delete-host.yml:

    ---
    - name: Host absent
      hosts: ipaserver
      become: true
    
      tasks:
      - name: Host host01.idm.example.com absent
        ipahost:
          ipaadmin_password: MySecret123
          name: host01.idm.example.com
          updatedns: yes
          state: absent
  3. Ejecuta el libro de jugadas:

    $ ansible-playbook -v -i path_to_inventory_directory/inventory.file path_to_playbooks_directory/ensure-host-absent.yml
Nota

El procedimiento da como resultado:

  • El host no está presente en el reino de IdM Kerberos.
  • La entrada del host no está presente en el servidor LDAP de IdM.

Para eliminar la configuración específica de IdM de los servicios del sistema, como el demonio de servicios de seguridad del sistema (SSSD), del propio host cliente, debe ejecutar el comando ipa-client-install --uninstall en el cliente. Para obtener más detalles, consulte Desinstalación de un cliente IdM.

Pasos de verificación

  1. Entre en ipaserver como administrador:

    $ ssh admin@server.idm.example.com
    Password:
    [admin@server /]$
  2. Mostrar información sobre host01.idm.example.com:

    $ ipa host-show host01.idm.example.com
    ipa: ERROR: host01.idm.example.com: host not found

La salida confirma que el host no existe en IdM.

Recursos adicionales

  • Puede ver las definiciones de las variables de ipahost, así como ejemplos de libros de juego de Ansible para garantizar la presencia, la ausencia y la desactivación de hosts en el archivo /usr/share/doc/ansible-freeipa/README-host.md Markdown.
  • En el directorio /usr/share/doc/ansible-freeipa/playbooks/host hay más libros de juego.

Capítulo 30. Gestión de grupos de hosts mediante la CLI de IdM

En este capítulo se presentan los grupos de hosts en Identity Management (IdM) y se describen las siguientes operaciones para gestionar los grupos de hosts y sus miembros en la interfaz de línea de comandos (CLI):

  • Ver los grupos de acogida y sus miembros
  • Creación de grupos de acogida
  • Borrado de grupos de hosts
  • Añadir miembros del grupo de anfitriones
  • Eliminación de miembros del grupo anfitrión
  • Añadir administradores de miembros de grupos anfitriones
  • Eliminación de los administradores de los miembros del grupo anfitrión

30.1. Grupos de acogida en IdM

Los grupos de hosts de IdM pueden utilizarse para centralizar el control de importantes tareas de gestión, en particular el control de acceso.

Definición de grupos de acogida

Un grupo de hosts es una entidad que contiene un conjunto de hosts IdM con reglas de control de acceso comunes y otras características. Por ejemplo, se pueden definir grupos de hosts en función de los departamentos de la empresa, las ubicaciones físicas o los requisitos de control de acceso.

Un grupo de hosts en IdM puede incluir:

  • Servidores y clientes de IdM
  • Otros grupos de acogida de IdM

Grupos de hosts creados por defecto

Por defecto, el servidor IdM crea el grupo de hosts ipaservers para todos los hosts del servidor IdM.

Miembros directos e indirectos del grupo

Los atributos de grupo en IdM se aplican tanto a los miembros directos como a los indirectos: cuando el grupo de host B es miembro del grupo de host A, todos los miembros del grupo de host B se consideran miembros indirectos del grupo de host A.

30.2. Visualización de los grupos de hosts de IdM mediante la CLI

Esta sección describe cómo ver los grupos de hosts de IdM mediante la interfaz de línea de comandos (CLI).

Requisitos previos

Procedimiento

  1. Encuentre todos los grupos de hosts utilizando el comando ipa hostgroup-find.

    $ ipa hostgroup-find
    -------------------
    1 hostgroup matched
    -------------------
      Host-group: ipaservers
      Description: IPA server hosts
    ----------------------------
    Number of entries returned 1
    ----------------------------

    Para mostrar todos los atributos de un grupo de hosts, añada la opción --all. Por ejemplo:

    $ ipa hostgroup-find --all
    -------------------
    1 hostgroup matched
    -------------------
      dn: cn=ipaservers,cn=hostgroups,cn=accounts,dc=idm,dc=local
      Host-group: ipaservers
      Description: IPA server hosts
      Member hosts: xxx.xxx.xxx.xxx
      ipauniqueid: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
      objectclass: top, groupOfNames, nestedGroup, ipaobject, ipahostgroup
    ----------------------------
    Number of entries returned 1
    ----------------------------

30.3. Creación de grupos de hosts IdM mediante la CLI

Esta sección describe cómo crear grupos de hosts IdM mediante la interfaz de línea de comandos (CLI).

Requisitos previos

Procedimiento

  1. Añade un grupo de hosts con el comando ipa hostgroup-add.
    Por ejemplo, para crear un grupo de hosts IdM llamado group_name y darle una descripción:

    $ ipa hostgroup-add --desc 'My new host group' group_name
    ---------------------
    Added hostgroup "group_name"
    ---------------------
      Host-group: group_name
      Description: My new host group
    ---------------------

30.4. Eliminación de grupos de hosts IdM mediante la CLI

En esta sección se describe cómo eliminar grupos de hosts IdM mediante la interfaz de línea de comandos (CLI).

Requisitos previos

Procedimiento

  1. Elimine un grupo de hosts con el comando ipa hostgroup-del.
    Por ejemplo, para eliminar el grupo de hosts IdM denominado group_name:

    $ ipa hostgroup-del group_name
    --------------------------
    Deleted hostgroup "group_name"
    --------------------------
Nota

La eliminación de un grupo no elimina los miembros del grupo del IdM.

30.5. Adición de miembros del grupo de hosts IdM mediante la CLI

Puede añadir hosts y grupos de hosts como miembros de un grupo de hosts IdM mediante un único comando.

Requisitos previos

  • Privilegios de administrador para gestionar el IdM o el rol de administrador de usuarios.
  • Un ticket Kerberos activo. Para más detalles, consulte Uso de kinit para iniciar sesión en IdM manualmente.
  • Optional. Utilice el comando ipa hostgroup-find para encontrar hosts y grupos de hosts.

Procedimiento

  1. Para añadir un miembro a un grupo de hosts, utilice la dirección ipa hostgroup-add-member y proporcione la información pertinente. Puedes especificar el tipo de miembro a añadir utilizando estas opciones

    • Utilice la opción --hosts para añadir uno o varios hosts a un grupo de hosts IdM.
      Por ejemplo, para añadir el host denominado example_member al grupo denominado group_name:

      $ ipa hostgroup-add-member group_name --hosts example_member
      Host-group: group_name
      Description: My host group
      Member hosts: example_member
      -------------------------
      Number of members added 1
      -------------------------
    • Utilice la opción --hostgroups para añadir uno o varios grupos de hosts a un grupo de hosts IdM.
      Por ejemplo, para añadir el grupo de hosts denominado nested_group al grupo denominado group_name:

      $ ipa hostgroup-add-member group_name --hostgroups nested_group
      Host-group: group_name
      Description: My host group
      Member host-groups: nested_group
      -------------------------
      Number of members added 1
      -------------------------
    • Puede añadir varios hosts y varios grupos de hosts a un grupo de hosts IdM con un solo comando utilizando la siguiente sintaxis:

      $ ipa hostgroup-add-member group_name --hosts={host1,host2} --hostgroups={group1,group2}
Importante

Cuando añada un grupo de hosts como miembro de otro grupo de hosts, no cree grupos recursivos. Por ejemplo, si el grupo A es miembro del grupo B, no añada el grupo B como miembro del grupo A. Los grupos recursivos pueden provocar un comportamiento imprevisible.

30.6. Eliminación de los miembros del grupo de hosts de IdM mediante la CLI

Puede eliminar tanto los hosts como los grupos de hosts de un grupo de hosts IdM mediante un único comando.

Requisitos previos

  • Privilegios de administrador para gestionar el IdM o el rol de administrador de usuarios.
  • Un ticket Kerberos activo. Para más detalles, consulte Uso de kinit para iniciar sesión en IdM manualmente.
  • Optional. Utilice el comando ipa hostgroup-find para confirmar que el grupo incluye al miembro que desea eliminar.

Procedimiento

  1. Para eliminar un miembro del grupo de hosts, utilice el comando ipa hostgroup-remove-member y proporcione la información pertinente. Puedes especificar el tipo de miembro a eliminar utilizando estas opciones

    • Utilice la opción --hosts para eliminar uno o varios hosts de un grupo de hosts IdM.
      Por ejemplo, para eliminar el host denominado example_member del grupo denominado group_name:

      $ ipa hostgroup-remove-member group_name --hosts example_member
      Host-group: group_name
      Description: My host group
      -------------------------
      Number of members removed 1
      -------------------------
    • Utilice la opción --hostgroups para eliminar uno o varios grupos de hosts de un grupo de hosts IdM.
      Por ejemplo, para eliminar el grupo de hosts denominado nested_group del grupo denominado group_name:

      $ ipa hostgroup-remove-member group_name --hostgroups example_member
      Host-group: group_name
      Description: My host group
      -------------------------
      Number of members removed 1
      -------------------------
Nota

La eliminación de un grupo no elimina los miembros del grupo del IdM.

  • Puede eliminar varios hosts y varios grupos de hosts de un grupo de hosts IdM en un solo comando utilizando la siguiente sintaxis:

    $ ipa hostgroup-remove-member group_name --hosts={host1,host2} --hostgroups={group1,group2}

30.7. Adición de administradores de grupos de hosts IdM mediante la CLI

Puede añadir hosts y grupos de hosts como administradores miembros a un grupo de hosts IdM mediante un único comando. Los administradores miembros pueden añadir hosts o grupos de hosts a los grupos de hosts IdM, pero no pueden cambiar los atributos de un grupo de hosts.

Requisitos previos

  • Privilegios de administrador para gestionar el IdM o el rol de administrador de usuarios.
  • Un ticket Kerberos activo. Para más detalles, consulte Uso de kinit para iniciar sesión en IdM manualmente.
  • Debes tener el nombre del host o grupo de host que estás añadiendo como miembros gestores y el nombre del grupo de host que quieres que gestionen.

Procedimiento

  1. Optional. Utilice el comando ipa hostgroup-find para encontrar hosts y grupos de hosts.
  2. Para añadir un gestor de miembros a un grupo de hosts, utilice la dirección ipa hostgroup-add-member-manager.

    Por ejemplo, para añadir el usuario llamado example_member como miembro administrador del grupo llamado group_name:

    $ ipa hostgroup-add-member-manager group_name --user example_member
    Host-group: group_name
    Member hosts: server.idm.example.com
    Member host-groups: project_admins
    Member of netgroups: group_name
    Membership managed by users: example_member
    -------------------------
    Number of members added 1
    -------------------------
  3. Utilice la opción --groups para añadir uno o varios grupos de hosts como gestores miembros de un grupo de hosts IdM.

    Por ejemplo, para añadir el grupo de hosts llamado admin_group como miembro administrador del grupo llamado group_name:

    $ ipa hostgroup-add-member-manager group_name --groups admin_group
    Host-group: group_name
    Member hosts: server.idm.example.com
    Member host-groups: project_admins
    Member of netgroups: group_name
    Membership managed by groups: admin_group
    Membership managed by users: example_member
    -------------------------
    Number of members added 1
    -------------------------
Nota

Después de añadir un gestor de miembros a un grupo de hosts, la actualización puede tardar algún tiempo en extenderse a todos los clientes de su entorno de gestión de identidades.

Pasos de verificación

  • Utilizar el comando ipa group-show para verificar que el usuario y el grupo del host se han añadido como administradores miembros.

    $ ipa hostgroup-show group_name
    Host-group: group_name
    Member hosts: server.idm.example.com
    Member host-groups: project_admins
    Membership managed by groups: admin_group
    Membership managed by users: example_member

Recursos adicionales

  • Consulte ipa hostgroup-add-member-manager --help para más detalles.
  • Consulte ipa hostgroup-show --help para más detalles.

30.8. Eliminación de gestores de grupos de hosts IdM mediante la CLI

Puede eliminar hosts y grupos de hosts como administradores miembros de un grupo de hosts IdM mediante un único comando. Los administradores miembros pueden eliminar administradores miembros de grupos de hosts de IdM, pero no pueden cambiar los atributos de un grupo de hosts.

Requisitos previos

  • Privilegios de administrador para gestionar el IdM o el rol de administrador de usuarios.
  • Un ticket Kerberos activo. Para más detalles, consulte Uso de kinit para iniciar sesión en IdM manualmente.
  • Debe tener el nombre del grupo de host del gestor de miembros existente que está eliminando y el nombre del grupo de host que está gestionando.

Procedimiento

  1. Optional. Utilice el comando ipa hostgroup-find para encontrar hosts y grupos de hosts.
  2. Para eliminar un gestor de miembros de un grupo de hosts, utilice el comando ipa hostgroup-remove-member-manager.

    Por ejemplo, para eliminar al usuario llamado example_member como miembro administrador del grupo llamado group_name:

    $ ipa hostgroup-remove-member-manager group_name --user example_member
    Host-group: group_name
    Member hosts: server.idm.example.com
    Member host-groups: project_admins
    Member of netgroups: group_name
    Membership managed by groups: nested_group
    ---------------------------
    Number of members removed 1
    ---------------------------
  3. Utilice la opción --groups para eliminar uno o varios grupos de hosts como administrador de miembros de un grupo de hosts IdM.

    Por ejemplo, para eliminar el grupo de hosts llamado nested_group como administrador de miembros del grupo llamado group_name:

    $ ipa hostgroup-remove-member-manager group_name --groups nested_group
    Host-group: group_name
    Member hosts: server.idm.example.com
    Member host-groups: project_admins
    Member of netgroups: group_name
    ---------------------------
    Number of members removed 1
    ---------------------------
Nota

Después de eliminar un gestor de miembros de un grupo de hosts, la actualización puede tardar algún tiempo en extenderse a todos los clientes de su entorno de Gestión de identidades.

Pasos de verificación

  • Utilice el comando ipa group-show para verificar que el usuario y el grupo del host se han eliminado como administradores miembros.

    $ ipa hostgroup-show group_name
    Host-group: group_name
    Member hosts: server.idm.example.com
    Member host-groups: project_admins

Recursos adicionales

  • Consulte ipa hostgroup-remove-member-manager --help para más detalles.
  • Consulte ipa hostgroup-show --help para más detalles.

Capítulo 31. Gestión de grupos de hosts mediante la interfaz web de IdM

En este capítulo se presentan los grupos de hosts en la Gestión de identidades (IdM) y se describen las siguientes operaciones para gestionar los grupos de hosts y sus miembros en la interfaz web (Web UI):

  • Ver los grupos de acogida y sus miembros
  • Creación de grupos de acogida
  • Borrado de grupos de hosts
  • Añadir miembros del grupo de anfitriones
  • Eliminación de miembros del grupo anfitrión
  • Añadir administradores de miembros de grupos anfitriones
  • Eliminación de los administradores de los miembros del grupo anfitrión

31.1. Grupos de acogida en IdM

Los grupos de hosts de IdM pueden utilizarse para centralizar el control de importantes tareas de gestión, en particular el control de acceso.

Definición de grupos de acogida

Un grupo de hosts es una entidad que contiene un conjunto de hosts IdM con reglas de control de acceso comunes y otras características. Por ejemplo, se pueden definir grupos de hosts en función de los departamentos de la empresa, las ubicaciones físicas o los requisitos de control de acceso.

Un grupo de hosts en IdM puede incluir:

  • Servidores y clientes de IdM
  • Otros grupos de acogida de IdM

Grupos de hosts creados por defecto

Por defecto, el servidor IdM crea el grupo de hosts ipaservers para todos los hosts del servidor IdM.

Miembros directos e indirectos del grupo

Los atributos de grupo en IdM se aplican tanto a los miembros directos como a los indirectos: cuando el grupo de host B es miembro del grupo de host A, todos los miembros del grupo de host B se consideran miembros indirectos del grupo de host A.

31.2. Visualización de los grupos de hosts en la interfaz web de IdM

Esta sección describe cómo ver los grupos de hosts de IdM mediante la interfaz web (Web UI).

Requisitos previos

Procedimiento

  1. Haga clic en Identity → Groups, y seleccione la pestaña Host Groups.

    • La página enumera los grupos de hosts existentes y sus descripciones.
    • Puede buscar un grupo de hosts específico.

    idm viendo grupos de hosts

  2. Haga clic en un grupo de la lista para mostrar los hosts que pertenecen a este grupo. Puede limitar los resultados a los miembros directos o indirectos.

    idm viendo los miembros del grupo anfitrión

  3. Seleccione la pestaña Host Groups para mostrar los grupos de hosts que pertenecen a este grupo (grupos de hosts anidados). Puede limitar los resultados a los miembros directos o indirectos.

    idm viendo los miembros del grupo anfitrión grupo anidado

31.3. Creación de grupos de hosts en la interfaz web de IdM

Esta sección describe cómo crear grupos de hosts de IdM mediante la interfaz web (Web UI).

Requisitos previos

Procedimiento

  1. Haga clic en Identity → Groups, y seleccione la pestaña Host Groups.
  2. Haga clic en Add. Aparece el cuadro de diálogo Add host group.
  3. Proporcione la información sobre el grupo: nombre (obligatorio) y descripción (opcional).
  4. Haga clic en Add para confirmar.

    idm creando grupos de hosts

31.4. Eliminación de grupos de hosts en la interfaz web de IdM

Esta sección describe cómo eliminar los grupos de hosts IdM mediante la interfaz web (Web UI).

Requisitos previos

Procedimiento

  1. Haga clic en Identity → Groups y seleccione la pestaña Host Groups.
  2. Seleccione el grupo de hosts IdM que desea eliminar y haga clic en Delete. Aparece un diálogo de confirmación.
  3. Haga clic en Delete para confirmar

    idm borrando grupos de hosts

Nota

La eliminación de un grupo de hosts no elimina los miembros del grupo del IdM.

31.5. Añadir miembros del grupo de hosts en la interfaz web de IdM

Esta sección describe cómo añadir miembros de grupos de hosts en IdM mediante la interfaz web (Web UI).

Requisitos previos

Procedimiento

  1. Haga clic en Identity → Groups y seleccione la pestaña Host Groups.
  2. Haga clic en el nombre del grupo al que desea añadir miembros.
  3. Haga clic en la pestaña Hosts o Host groups según el tipo de miembros que desee añadir. Aparece el diálogo correspondiente.
  4. Seleccione los hosts o grupos de hosts que desee añadir y haga clic en el botón de flecha > para moverlos a la columna Prospective.
  5. Haga clic en Add para confirmar.

    idm añadiendo miembros del grupo de hosts

31.6. Eliminación de miembros del grupo de hosts en la interfaz web de IdM

Esta sección describe cómo eliminar miembros de grupos de hosts en IdM mediante la interfaz web (Web UI).

Requisitos previos

Procedimiento

  1. Haga clic en Identity → Groups y seleccione la pestaña Host Groups.
  2. Haga clic en el nombre del grupo del que desea eliminar miembros.
  3. Haga clic en la pestaña Hosts o Host groups según el tipo de miembros que desee eliminar.
  4. Seleccione la casilla junto al miembro que desea eliminar.
  5. Haga clic en Eliminar. Aparece un diálogo de confirmación.

    idm eliminando miembros del grupo de hosts

  6. Haga clic en Eliminar para confirmar. Los miembros seleccionados se eliminan.

31.7. Adición de administradores de grupos de hosts IdM mediante la interfaz web

Esta sección describe cómo añadir usuarios o grupos de usuarios como administradores de miembros de grupos de hosts en IdM mediante la interfaz web (Web UI). Los administradores miembros pueden añadir administradores miembros de grupos de hosts a los grupos de hosts de IdM, pero no pueden cambiar los atributos de un grupo de hosts.

Requisitos previos

  • Privilegios de administrador para gestionar el IdM o el rol de administrador de usuarios.
  • Ha iniciado una sesión en la interfaz web de IdM. Para obtener más información, consulte Acceso a la interfaz web de IdM en un navegador web.
  • Debes tener el nombre del grupo de hosts que estás añadiendo como miembros administradores y el nombre del grupo de hosts que quieres que administren.

Procedimiento

  1. Haga clic en Identity → Groups y seleccione la pestaña Host Groups.

    hostgroups
  2. Haga clic en el nombre del grupo al que desea añadir administradores miembros.
  3. Haga clic en la pestaña de gestores de miembros User Groups o Users según el tipo de gestores de miembros que desee añadir. Aparecerá el diálogo correspondiente.
  4. Haga clic en Add.

    group membermanagers
  5. Seleccione los usuarios o grupos de usuarios que desee añadir y haga clic en el botón de flecha > para moverlos a la columna Prospective.
  6. Haga clic en Add para confirmar.
Nota

Después de añadir un gestor de miembros a un grupo de hosts, la actualización puede tardar algún tiempo en extenderse a todos los clientes de su entorno de gestión de identidades.

Pasos de verificación

  • En el cuadro de diálogo del grupo anfitrión, compruebe que el grupo de usuarios o el usuario se ha añadido a la lista de grupos o usuarios de los administradores de miembros.

    membermanager added

31.8. Eliminación de los administradores de grupos de hosts de IdM mediante la interfaz web

Esta sección describe cómo eliminar usuarios o grupos de usuarios como administradores de miembros de grupos de hosts en IdM mediante la interfaz web (Web UI). Los administradores de miembros pueden eliminar a los administradores de miembros de grupos de hosts de IdM, pero no pueden cambiar los atributos de un grupo de hosts.

Requisitos previos

  • Privilegios de administrador para gestionar el IdM o el rol de administrador de usuarios.
  • Ha iniciado una sesión en la interfaz web de IdM. Para obtener más información, consulte Acceso a la interfaz web de IdM en un navegador web.
  • Debe tener el nombre del grupo de host del gestor de miembros existente que está eliminando y el nombre del grupo de host que está gestionando.

Procedimiento

  1. Haga clic en Identity → Groups y seleccione la pestaña Host Groups.

    hostgroup tab
  2. Haga clic en el nombre del grupo del que desea eliminar a los administradores miembros.
  3. Haga clic en la pestaña de gestores de miembros User Groups o Users según el tipo de gestores de miembros que desee eliminar. Aparecerá el diálogo correspondiente.
  4. Seleccione el usuario o los grupos de usuarios que desea eliminar y haga clic en Delete.
  5. Haga clic en Delete para confirmar.

    idm removing host group member managers
    Nota

    Después de eliminar un gestor de miembros de un grupo de hosts, la actualización puede tardar algún tiempo en extenderse a todos los clientes de su entorno de Gestión de identidades.

Pasos de verificación

  • En el cuadro de diálogo del grupo anfitrión, compruebe que el grupo de usuarios o el usuario se ha eliminado de la lista de grupos o usuarios de los administradores de miembros.

    remove membermanager verification

Capítulo 32. Gestión de grupos de hosts mediante los playbooks de Ansible

En este capítulo se describe el uso de Ansible para realizar las siguientes operaciones relacionadas con los grupos de hosts en la gestión de identidades (IdM):

32.1. Garantizar la presencia de los grupos de hosts de IdM mediante los playbooks de Ansible

En esta sección se describe cómo garantizar la presencia de grupos de hosts en Identity Management (IdM) mediante los libros de juego de Ansible.

Nota

Sin Ansible, las entradas de grupos de hosts se crean en IdM mediante el comando ipa hostgroup-add. El resultado de añadir un grupo de hosts a IdM es el estado del grupo de hosts presente en IdM. Debido a la dependencia de Ansible en la idempotencia, para añadir un grupo de hosts a IdM utilizando Ansible, debe crear un libro de jugadas en el que se define el estado del grupo de hosts como presente: state: present.

Requisitos previos

  • Conoce la contraseña del administrador de IdM.
  • Ha instalado el paquete ansible-freeipa en el controlador de Ansible.

Procedimiento

  1. Cree un archivo de inventario, por ejemplo inventory.file, y defina en él ipaserver con la lista de servidores IdM a los que dirigirse:

    [ipaserver]
    server.idm.example.com
  2. Cree un archivo de playbook de Ansible con la información necesaria del grupo de hosts. Por ejemplo, para garantizar la presencia de un grupo de hosts llamado databases, especifique name: databases en la tarea - ipahostgroup. Para simplificar este paso, puede copiar y modificar el ejemplo en el archivo /usr/share/doc/ansible-freeipa/playbooks/user/ensure-hostgroup-is-present.yml.

    ---
    - name: Playbook to handle hostgroups
      hosts: ipaserver
      become: true
    
      tasks:
      # Ensure host-group databases is present
      - ipahostgroup:
          ipaadmin_password: MySecret123
          name: databases
          state: present

    En el libro de jugadas, state: present significa una solicitud para añadir el grupo de hosts a IdM a menos que ya exista allí.

  3. Ejecuta el libro de jugadas:

    $ ansible-playbook -v -i path_to_inventory_directory/inventory.file path_to_playbooks_directory/ensure-hostgroup-is-present.yml

Pasos de verificación

  1. Entre en ipaserver como administrador:

    $ ssh admin@server.idm.example.com
    Password:
    [admin@server /]$
  2. Solicitar un ticket Kerberos para el administrador:

    $ kinit admin
    Password for admin@IDM.EXAMPLE.COM:
  3. Muestra información sobre el grupo de hosts cuya presencia en IdM desea asegurar:

    $ ipa hostgroup-show databases
      Host-group: databases

El grupo de hosts databases existe en IdM.

32.2. Garantizar la presencia de los hosts en los grupos de hosts de IdM mediante los libros de juego de Ansible

En esta sección se describe cómo garantizar la presencia de hosts en grupos de hosts en Identity Management (IdM) mediante los libros de juego de Ansible.

Requisitos previos

Procedimiento

  1. Cree un archivo de inventario, por ejemplo inventory.file, y defina en él ipaserver con la lista de servidores IdM a los que dirigirse:

    [ipaserver]
    server.idm.example.com
  2. Cree un archivo de playbook de Ansible con la información necesaria del host. Especifique el nombre del grupo de hosts con el parámetro name de la variable ipahostgroup. Especifique el nombre del host con el parámetro host de la variable ipahostgroup. Para simplificar este paso, puede copiar y modificar los ejemplos en el archivo /usr/share/doc/ansible-freeipa/playbooks/hostgroup/ensure-hosts-and-hostgroups-are-present-in-hostgroup.yml:

    ---
    - name: Playbook to handle hostgroups
      hosts: ipaserver
      become: true
    
      tasks:
      # Ensure host-group databases is present
      - ipahostgroup:
          ipaadmin_password: MySecret123
          name: databases
          host:
          - db.idm.example.com
          action: member

    Este libro de jugadas añade el host db.idm.example.com al grupo de hosts databases. La línea action: member indica que cuando se ejecuta el libro de jugadas, no se intenta añadir el grupo databases. En su lugar, sólo se intenta añadir db.idm.example.com a databases.

  3. Ejecuta el libro de jugadas:

    $ ansible-playbook -v -i path_to_inventory_directory/inventory.file path_to_playbooks_directory/ensure-hosts-or-hostgroups-are-present-in-hostgroup.yml

Pasos de verificación

  1. Entre en ipaserver como administrador:

    $ ssh admin@server.idm.example.com
    Password:
    [admin@server /]$
  2. Solicitar un ticket Kerberos para el administrador:

    $ kinit admin
    Password for admin@IDM.EXAMPLE.COM:
  3. Muestra información sobre un grupo de hosts para ver qué hosts están presentes en él:

    $ ipa hostgroup-show databases
      Host-group: databases
      Member hosts: db.idm.example.com

El host db.idm.example.com está presente como miembro del grupo de hosts databases.

32.3. Anidación de grupos de hosts de IdM mediante libros de juego de Ansible

En esta sección se describe cómo garantizar la presencia de grupos de hosts anidados en los grupos de hosts de Identity Management (IdM) mediante los libros de juego de Ansible.

Requisitos previos

Procedimiento

  1. Cree un archivo de inventario, por ejemplo inventory.file, y defina en él ipaserver con la lista de servidores IdM a los que dirigirse:

    [ipaserver]
    server.idm.example.com
  2. Cree un archivo de playbook de Ansible con la información necesaria del grupo de hosts. Para asegurarse de que un grupo de hosts anidado A existe en un grupo de hosts B: en el libro de jugadas de Ansible, especifique, entre las variables - ipahostgroup, el nombre del grupo de hosts B con la variable name. Especifique el nombre del grupo de hosts anidado A con la variable hostgroup. Para simplificar este paso, puede copiar y modificar los ejemplos en el archivo /usr/share/doc/ansible-freeipa/playbooks/hostgroup/ensure-hosts-and-hostgroups-are-present-in-hostgroup.yml:

    ---
    - name: Playbook to handle hostgroups
      hosts: ipaserver
      become: true
    
      tasks:
      # Ensure hosts and hostgroups are present in existing databases hostgroup
      - ipahostgroup:
          ipaadmin_password: MySecret123
          name: databases
          hostgroup:
          - mysql-server
          - oracle-server
          action: member

    Este libro de jugadas de Ansible garantiza la presencia de los grupos de hosts myqsl-server y oracle-server en el grupo de hosts databases. La línea action: member indica que cuando se ejecuta el libro de jugadas, no se intenta añadir el grupo databases a IdM.

  3. Ejecuta el libro de jugadas:

    $ ansible-playbook -v -i path_to_inventory_directory/inventory.file path_to_playbooks_directory/ensure-hosts-or-hostgroups-are-present-in-hostgroup.yml

Pasos de verificación

  1. Entre en ipaserver como administrador:

    $ ssh admin@server.idm.example.com
    Password:
    [admin@server /]$
  2. Solicitar un ticket Kerberos para el administrador:

    $ kinit admin
    Password for admin@IDM.EXAMPLE.COM:
  3. Muestra información sobre el grupo de hosts en el que hay grupos de hosts anidados:

    $ ipa hostgroup-show databases
      Host-group: databases
      Member hosts: db.idm.example.com
      Member host-groups: mysql-server, oracle-server

Los grupos de hosts mysql-server y oracle-server existen en el grupo de hosts databases.

32.4. Garantizar la presencia de los administradores miembros en los grupos de hosts de IDM utilizando Ansible Playbooks

El siguiente procedimiento describe cómo garantizar la presencia de los administradores de miembros en los hosts y grupos de hosts de IdM mediante un libro de jugadas de Ansible.

Requisitos previos

  • Conoce la contraseña del administrador de IdM.
  • Ha instalado el paquete ansible-freeipa en el controlador de Ansible.
  • Debes tener el nombre del host o grupo de host que estás añadiendo como miembros gestores y el nombre del grupo de host que quieres que gestionen.

Procedimiento

  1. Cree un archivo de inventario, por ejemplo inventory.file, y defina en él ipaserver:

    [ipaserver]
    server.idm.example.com
  2. Cree un archivo de playbook de Ansible con la información necesaria para la gestión del host y de los miembros del grupo del host:

    ---
    
    - name: Playbook to handle host group membership management
      hosts: ipaserver
      become: true
    
      tasks:
      - name: Ensure member manager user example_member is present for group_name
          ipahostgroup:
            ipaadmin_password: MySecret123
            name: group_name
            membermanager_user: example_member
    
      - name: Ensure member manager group project_admins is present for group_name
          ipahostgroup:
            ipaadmin_password: MySecret123
            name: group_name
            membermanager_group: project_admins
  3. Ejecuta el libro de jugadas:

    $ ansible-playbook -v -i path_to_inventory_directory/inventory.file path_to_playbooks_directory/add-member-managers-host-groups.yml

Pasos de verificación

Puede verificar si el grupo group_name contiene example_member y project_admins como administradores miembros utilizando el comando ipa group-show:

  1. Entre en ipaserver como administrador:

    $ ssh admin@server.idm.example.com
    Password:
    [admin@server /]$
  2. Mostrar información sobre testhostgroup:

    ipaserver]$ ipa hostgroup-show group_name
      Host-group: group_name
      Member hosts: server.idm.example.com
      Member host-groups: testhostgroup2
      Membership managed by groups: project_admins
      Membership managed by users: example_member

Recursos adicionales

  • Véase ipa hostgroup-add-member-manager --help.
  • Consulte la página de manual ipa.

32.5. Garantizar la ausencia de hosts de los grupos de hosts de IdM mediante los libros de juego de Ansible

En esta sección se describe cómo garantizar la ausencia de hosts de los grupos de hosts en la gestión de identidades (IdM) mediante los libros de juego de Ansible.

Requisitos previos

Procedimiento

  1. Cree un archivo de inventario, por ejemplo inventory.file, y defina en él ipaserver con la lista de servidores IdM a los que dirigirse:

    [ipaserver]
    server.idm.example.com
  2. Cree un archivo de playbook de Ansible con la información necesaria sobre el host y el grupo de hosts. Especifique el nombre del grupo de hosts utilizando el parámetro name de la variable ipahostgroup. Especifique el nombre del host cuya ausencia del grupo de hosts desea asegurar utilizando el parámetro host de la variable ipahostgroup. Para simplificar este paso, puede copiar y modificar los ejemplos del archivo /usr/share/doc/ansible-freeipa/playbooks/hostgroup/ensure-hosts-and-hostgroups-are-absent-in-hostgroup.yml:

    ---
    - name: Playbook to handle hostgroups
      hosts: ipaserver
      become: true
    
      tasks:
      # Ensure host-group databases is absent
      - ipahostgroup:
          ipaadmin_password: MySecret123
          name: databases
          host:
          - db.idm.example.com
          action: member
          state: absent

    Este libro de jugadas asegura la ausencia del host db.idm.example.com del grupo de hosts databases. La línea action: member indica que cuando se ejecuta el libro de jugadas, no se intenta eliminar el propio grupo databases.

  3. Ejecuta el libro de jugadas:

    $ ansible-playbook -v -i path_to_inventory_directory/inventory.file path_to_playbooks_directory/ensure-hosts-or-hostgroups-are-absent-in-hostgroup.yml

Pasos de verificación

  1. Entre en ipaserver como administrador:

    $ ssh admin@server.idm.example.com
    Password:
    [admin@server /]$
  2. Solicitar un ticket Kerberos para el administrador:

    $ kinit admin
    Password for admin@IDM.EXAMPLE.COM:
  3. Muestra información sobre el grupo de hosts y los hosts que contiene:

    $ ipa hostgroup-show databases
      Host-group: databases
      Member host-groups: mysql-server, oracle-server

El host db.idm.example.com no existe en el grupo de hosts databases.

32.6. Garantizar la ausencia de grupos de hosts anidados de los grupos de hosts de IdM utilizando los playbooks de Ansible

En esta sección se describe cómo garantizar la ausencia de grupos de hosts anidados de los grupos de hosts externos en la Gestión de identidades (IdM) mediante los libros de juego de Ansible.

Requisitos previos

Procedimiento

  1. Cree un archivo de inventario, por ejemplo inventory.file, y defina en él ipaserver con la lista de servidores IdM a los que dirigirse:

    [ipaserver]
    server.idm.example.com
  2. Cree un archivo de playbook de Ansible con la información necesaria del grupo de hosts. Especifique, entre las variables de - ipahostgroup, el nombre del grupo de hosts externo mediante la variable name. Especifique el nombre del grupo de hosts anidado con la variable hostgroup. Para simplificar este paso, puedes copiar y modificar los ejemplos en el archivo /usr/share/doc/ansible-freeipa/playbooks/hostgroup/ensure-hosts-and-hostgroups-are-absent-in-hostgroup.yml:

    ---
    - name: Playbook to handle hostgroups
      hosts: ipaserver
      become: true
    
      tasks:
      # Ensure hosts and hostgroups are absent in existing databases hostgroup
      - ipahostgroup:
          ipaadmin_password: MySecret123
          name: databases
          hostgroup:
          - mysql-server
          - oracle-server
          action: member
          state: absent

    Este libro de jugadas se asegura de que los grupos de hosts mysql-server y oracle-server estén ausentes del grupo de hosts databases. La línea action: member indica que cuando se ejecuta el libro de jugadas, no se intenta asegurar que el propio grupo databases se elimine de IdM.

  3. Ejecuta el libro de jugadas:

    $ ansible-playbook -v -i path_to_inventory_directory/inventory.file path_to_playbooks_directory/ensure-hosts-or-hostgroups-are-absent-in-hostgroup.yml

Pasos de verificación

  1. Entre en ipaserver como administrador:

    $ ssh admin@server.idm.example.com
    Password:
    [admin@server /]$
  2. Solicitar un ticket Kerberos para el administrador:

    $ kinit admin
    Password for admin@IDM.EXAMPLE.COM:
  3. Muestra información sobre el grupo de hosts del que deben estar ausentes los grupos de hosts anidados:

    $ ipa hostgroup-show databases
      Host-group: databases

La salida confirma que los grupos de hosts anidados mysql-server y oracle-server están ausentes del grupo de hosts externo databases.

32.7. Garantizar la ausencia de grupos de hosts de IdM mediante los playbooks de Ansible

En esta sección se describe cómo garantizar la ausencia de grupos de hosts en Identity Management (IdM) mediante los libros de juego de Ansible.

Nota

Sin Ansible, las entradas de grupos de hosts se eliminan de IdM mediante el comando ipa hostgroup-del. El resultado de eliminar un grupo de hosts de IdM es el estado del grupo de hosts ausente de IdM. Debido a la dependencia de Ansible en la idempotencia, para eliminar un grupo de hosts de IdM utilizando Ansible, debe crear un libro de jugadas en el que se define el estado del grupo de hosts como ausente: state: absent.

Requisitos previos

  • Conoce la contraseña del administrador de IdM.
  • Ha instalado el paquete ansible-freeipa en el controlador de Ansible.

Procedimiento

  1. Cree un archivo de inventario, por ejemplo inventory.file, y defina en él ipaserver con la lista de servidores IdM a los que dirigirse:

    [ipaserver]
    server.idm.example.com
  2. Cree un archivo de playbook de Ansible con la información necesaria del grupo de hosts. Para simplificar este paso, puede copiar y modificar el ejemplo en el archivo /usr/share/doc/ansible-freeipa/playbooks/user/ensure-hostgroup-is-absent.yml.

    ---
    - name: Playbook to handle hostgroups
      hosts: ipaserver
      become: true
    
      tasks:
      - Ensure host-group databases is absent
        ipahostgroup:
          ipaadmin_password: MySecret123
          name: databases
          state: absent

    Este libro de jugadas asegura la ausencia del grupo de hosts databases de IdM. El state: absent significa una solicitud para eliminar el grupo de host de IdM a menos que ya se haya eliminado.

  3. Ejecuta el libro de jugadas:

    $ ansible-playbook -v -i path_to_inventory_directory/inventory.file path_to_playbooks_directory/ensure-hostgroup-is-absent.yml

Pasos de verificación

  1. Entre en ipaserver como administrador:

    $ ssh admin@server.idm.example.com
    Password:
    [admin@server /]$
  2. Solicitar un ticket Kerberos para el administrador:

    $ kinit admin
    Password for admin@IDM.EXAMPLE.COM:
  3. Muestra información sobre el grupo de anfitriones cuya ausencia ha asegurado:

    $ ipa hostgroup-show databases
    ipa: ERROR: databases: host group not found

El grupo de hosts databases no existe en IdM.

32.8. Garantizar la ausencia de administradores miembros de los grupos de host de IdM mediante libros de juego de Ansible

El siguiente procedimiento describe cómo garantizar la ausencia de administradores miembros en los hosts y grupos de hosts de IdM mediante un libro de jugadas de Ansible.

Requisitos previos

  • Conoce la contraseña del administrador de IdM.
  • Ha instalado el paquete ansible-freeipa en el controlador de Ansible.
  • Debes tener el nombre del usuario o grupo de usuarios que estás eliminando como miembros administradores y el nombre del grupo de hosts que están administrando.

Procedimiento

  1. Cree un archivo de inventario, por ejemplo inventory.file, y defina en él ipaserver:

    [ipaserver]
    server.idm.example.com
  2. Cree un archivo de playbook de Ansible con la información necesaria para la gestión del host y de los miembros del grupo del host:

    ---
    
    - name: Playbook to handle host group membership management
      hosts: ipaserver
      become: true
    
      tasks:
      - name: Ensure member manager host and host group members are absent for group_name
        ipahostgroup:
          ipaadmin_password: MySecret123
          name: group_name
          membermanager_user: example_member
          membermanager_group: project_admins
          action: member
          state: absent
  3. Ejecuta el libro de jugadas:

    $ ansible-playbook -v -i path_to_inventory_directory/inventory.file path_to_playbooks_directory/ensure-member-managers-host-groups-are-absent.yml

Pasos de verificación

Puede verificar si el grupo group_name no contiene example_member o project_admins como administradores miembros utilizando el comando ipa group-show:

  1. Entre en ipaserver como administrador:

    $ ssh admin@server.idm.example.com
    Password:
    [admin@server /]$
  2. Mostrar información sobre testhostgroup:

    ipaserver]$ ipa hostgroup-show group_name
      Host-group: group_name
      Member hosts: server.idm.example.com
      Member host-groups: testhostgroup2

Recursos adicionales

  • Véase ipa hostgroup-add-member-manager --help.
  • Consulte la página de manual ipa.

Capítulo 33. Gestión de las políticas de tickets de Kerberos

Las políticas de tickets de Kerberos en Identity Management (IdM) establecen restricciones en el acceso, la duración y la renovación de los tickets de Kerberos. Puede configurar las políticas de tiques Kerberos para el Centro de distribución de claves (KDC) que se ejecuta en el servidor IdM.

Este capítulo presenta los siguientes temas y tareas de gestión de tickets de Kerberos:

33.1. El papel del KDC de IdM

Los mecanismos de autenticación de la Gestión de Identidades utilizan la infraestructura Kerberos establecida por el Centro de Distribución de Claves (KDC). El KDC es la autoridad de confianza que almacena la información de las credenciales y garantiza la autenticidad de los datos procedentes de las entidades de la red de IdM.

Cada usuario, servicio y host de IdM actúa como cliente de Kerberos y se identifica con un único Kerberos principal:

  • Para los usuarios: identifier@REALM, como admin@EXAMPLE.COM
  • Para los servicios: service/fully-qualified-hostname@REALM, como http/master.example.com@EXAMPLE.COM
  • Para los anfitriones: host/fully-qualified-hostname@REALM, como host/client.example.com@EXAMPLE.COM

La siguiente imagen es una simplificación de la comunicación entre un cliente Kerberos, el KDC y una aplicación Kerberizada con la que el cliente quiere comunicarse.

Kerberos KDC flow of communication
  1. Un cliente de Kerberos se identifica ante el KDC autenticándose como entidad emisora de Kerberos. Por ejemplo, un usuario de IdM realiza kinit username y proporciona su contraseña.
  2. El KDC busca la entidad de crédito en su base de datos, autentifica al cliente y evalúa las políticas de los tiques Kerberos para determinar si concede la solicitud.
  3. El centro de distribución de claves (KDC) emite al cliente un ticket de concesión de tickets (TGT) con un ciclo de vida e indicadores de autenticación de acuerdo con la política de tickets correspondiente.
  4. Con el TGT, el cliente solicita un service ticket al KDC para comunicarse con un servicio Kerberizado en un host de destino.
  5. El KDC comprueba si el TGT del cliente sigue siendo válido y evalúa la solicitud de ticket de servicio en función de las políticas de tickets.
  6. El KDC emite al cliente un service ticket.
  7. Con el ticket de servicio, el cliente puede iniciar la comunicación cifrada con el servicio en el host de destino.

33.2. Tipos de política de tickets IdM Kerberos

Las políticas de tickets de IdM Kerberos implementan los siguientes tipos de políticas de tickets:

Política de conexión

Para proteger los servicios Kerberizados con diferentes niveles de seguridad, puede definir políticas de conexión para aplicar reglas basadas en el mecanismo de preautenticación que un cliente utilizó para recuperar un ticket de concesión (TGT).

Por ejemplo, puede exigir la autenticación con tarjeta inteligente para conectarse a client1.example.com, y exigir la autenticación de dos factores para acceder a la aplicación testservice en client2.example.com.

Para aplicar las políticas de conexión, asocie authentication indicators con los servicios. Sólo los clientes que tienen los indicadores de autenticación requeridos en sus solicitudes de ticket de servicio pueden acceder a esos servicios. Para obtener más información, consulte Indicadores de autenticación de Kerberos.

Política de ciclo de vida de los billetes

Cada ticket de Kerberos tiene un lifetime y un renewal age potencial: puede renovar un ticket antes de que alcance su vida máxima, pero no después de que supere su edad máxima de renovación.

El tiempo de vida global del ticket por defecto es de un día (86400 segundos) y la edad máxima de renovación global por defecto es de una semana (604800 segundos). Para ajustar estos valores globales, consulte Configuración de la política global del ciclo de vida del ticket.

También puede definir sus propias políticas de ciclo de vida de los tickets:

33.3. Indicadores de autenticación Kerberos

El Centro de Distribución de Claves Kerberos (KDC) adjunta authentication indicators a un ticket de concesión (TGT) en función del mecanismo de preautenticación que el cliente haya utilizado para demostrar su identidad:

otp
autenticación de dos factores (contraseña de un solo uso)
radius
Autenticación RADIUS (normalmente para la autenticación 802.1x)
pkinit
Autenticación por PKINIT, tarjeta inteligente o certificado
hardened
contraseñas reforzadas (SPAKE o FAST)[1]

A continuación, el KDC adjunta los indicadores de autenticación del TGT a cualquier solicitud de ticket de servicio que se derive de él. El centro de distribución de claves aplica políticas como el control de acceso a los servicios, la duración máxima de los tickets y la edad máxima renovable en función de los indicadores de autenticación.

33.3.1. Indicadores de autenticación y servicios IdM

Si se asocia un servicio o un host con un indicador de autenticación, sólo podrán acceder a él los clientes que hayan utilizado el mecanismo de autenticación correspondiente para obtener un vale de transporte. El KDC, y no la aplicación o el servicio, comprueba los indicadores de autenticación en las solicitudes de vales de servicio, y concede o deniega las solicitudes basándose en las políticas de conexión de Kerberos.

Por ejemplo, para requerir la autenticación de dos factores para conectarse al host secure.example.com, asocie el indicador de autenticación otp con la entidad de seguridad Kerberos host/secure.example.com@EXAMPLE.COM. Sólo los usuarios que hayan utilizado una contraseña de un solo uso para obtener su TGT inicial del centro de distribución de claves podrán conectarse.

Si un servicio o un host no tiene asignados indicadores de autenticación, aceptará tickets autenticados por cualquier mecanismo.

Recursos adicionales



[1] Una contraseña reforzada está protegida contra los ataques de diccionario por fuerza bruta utilizando la preautenticación Single-Party Public-Key Authenticated Key Exchange (SPAKE) y/o el blindaje Flexible Authentication via Secure Tunneling (FAST).

33.4. Aplicación de indicadores de autenticación para un servicio IdM

Este procedimiento describe la creación de un servicio IdM y su configuración para requerir determinados indicadores de autenticación Kerberos de las solicitudes de tickets de servicio entrantes.

Al asociar indicadores de autenticación a un servicio IdM, sólo los clientes que hayan utilizado esos mecanismos específicos de preautenticación para obtener su ticket inicial (TGT) podrán acceder al servicio.

33.4.1. Creación de una entrada de servicio IdM y su llavero Kerberos

Al añadir una entrada IdM service a IdM para un servicio que se ejecuta en un host IdM, se crea la entidad de seguridad Kerberos correspondiente y se permite que el servicio solicite un certificado SSL, un llavero Kerberos o ambos.

El siguiente procedimiento describe la creación de una entrada de servicio IdM y la generación de un llavero Kerberos asociado para cifrar la comunicación con ese servicio.

Requisitos previos

  • Su servicio puede almacenar una entidad de crédito Kerberos, un certificado SSL o ambos.

Procedimiento

  1. Añada un servicio IdM con el comando ipa service-add para crear una entidad de seguridad Kerberos asociada a él. Por ejemplo, para crear la entrada de servicio IdM para la aplicación testservice que se ejecuta en el host client.example.com:

    [root@client ~]# ipa service-add testservice/client.example.com
    -------------------------------------------------------------
    Modified service "testservice/client.example.com@EXAMPLE.COM"
    -------------------------------------------------------------
      Principal name: testservice/client.example.com@EXAMPLE.COM
      Principal alias: testservice/client.example.com@EXAMPLE.COM
      Managed by: client.example.com
  2. Generar y almacenar un keytab Kerberos para el servicio en el cliente.

    [root@client ~]# ipa-getkeytab -k /etc/testservice.keytab -p testservice/client.example.com
    Keytab successfully retrieved and stored in: /etc/testservice.keytab

Pasos de verificación

  1. Muestra información sobre un servicio IdM con el comando ipa service-show.

    [root@server ~]# ipa service-show testservice/client.example.com
      Principal name: testservice/client.example.com@EXAMPLE.COM
      Principal alias: testservice/client.example.com@EXAMPLE.COM
      Keytab: True
      Managed by: client.example.com
  2. Muestra el contenido del keytab de Kerberos del servicio con el comando klist.

    [root@server etc]# klist -ekt /etc/testservice.keytab
    Keytab name: FILE:/etc/testservice.keytab
    KVNO Timestamp           Principal
    ---- ------------------- ------------------------------------------------------
       2 04/01/2020 17:52:55 testservice/client.example.com@EXAMPLE.COM (aes256-cts-hmac-sha1-96)
       2 04/01/2020 17:52:55 testservice/client.example.com@EXAMPLE.COM (aes128-cts-hmac-sha1-96)
       2 04/01/2020 17:52:55 testservice/client.example.com@EXAMPLE.COM (camellia128-cts-cmac)
       2 04/01/2020 17:52:55 testservice/client.example.com@EXAMPLE.COM (camellia256-cts-cmac)

33.4.2. Asociar indicadores de autenticación a un servicio IdM

Este procedimiento describe la configuración de un servicio para requerir determinados indicadores de autenticación Kerberos de las solicitudes de tickets de servicio entrantes.

Requisitos previos

Aviso

Haga not asigne indicadores de autenticación a los servicios internos de IdM. Los siguientes servicios de IdM no pueden realizar los pasos de autenticación interactiva requeridos por PKINIT y los métodos de autenticación multifactor:

host/server.example.com@EXAMPLE.COM
HTTP/server.example.com@EXAMPLE.COM
ldap/server.example.com@EXAMPLE.COM
DNS/server.example.com@EXAMPLE.COM
cifs/server.example.com@EXAMPLE.COM

Procedimiento

  • Utilice el comando ipa service-mod para especificar uno o más indicadores de autenticación necesarios para un servicio, identificado con el argumento --auth-ind.

    Método de autenticación--auth-ind valor

    Autenticación de dos factores

    otp

    Autenticación RADIUS

    radius

    Autenticación por PKINIT, tarjeta inteligente o certificado

    pkinit

    Contraseñas reforzadas (SPAKE o FAST)

    hardened

    Por ejemplo, para requerir que un usuario se autentique con tarjeta inteligente o autenticación OTP para recuperar un ticket de servicio para la entidad de seguridad testservice en el host client.example.com:

    [root@server ~]# ipa service-mod testservice/client.example.com@EXAMPLE.COM --auth-ind otp --auth-ind pkinit
    -------------------------------------------------------------
    Modified service "testservice/client.example.com@EXAMPLE.COM"
    -------------------------------------------------------------
      Principal name: testservice/client.example.com@EXAMPLE.COM
      Principal alias: testservice/client.example.com@EXAMPLE.COM
      Authentication Indicators: otp, pkinit
      Managed by: client.example.com
Nota

Para eliminar todos los indicadores de autenticación de un servicio, proporcione una lista vacía de indicadores:

[root@server ~]# ipa service-mod testservice/client.example.com@EXAMPLE.COM --auth-ind ''
------------------------------------------------------
Modified service "testservice/client.example.com@EXAMPLE.COM"
------------------------------------------------------
  Principal name: testservice/client.example.com@EXAMPLE.COM
  Principal alias: testservice/client.example.com@EXAMPLE.COM
  Managed by: client.example.com

Pasos de verificación

  • Muestra información sobre un servicio IdM, incluidos los indicadores de autenticación que requiere, con el comando ipa service-show.

    [root@server ~]# ipa service-show testservice/client.example.com
      Principal name: testservice/client.example.com@EXAMPLE.COM
      Principal alias: testservice/client.example.com@EXAMPLE.COM
      Authentication Indicators: otp, pkinit
      Keytab: True
      Managed by: client.example.com

Recursos adicionales

33.4.3. Recuperación de un ticket de servicio Kerberos para un servicio IdM

El siguiente procedimiento describe la recuperación de un ticket de servicio Kerberos para un servicio IdM. Puede utilizar este procedimiento para probar las políticas de tickets de Kerberos.

Requisitos previos

Procedimiento

  • Utilice el comando kvno con la opción -S para recuperar un ticket de servicio y especifique el nombre del servicio IdM y el nombre de dominio completo del host que lo gestiona.

    [root@server ~]# kvno -S testservice client.example.com
    testservice/client.example.com@EXAMPLE.COM: kvno = 1
Nota

Si necesita acceder a un servicio IdM y su ticket actual (TGT) no posee los indicadores de autenticación necesarios asociados a él, borre su caché de credenciales Kerberos actual con el comando kdestroy y recupere un nuevo TGT:

[root@server ~]# kdestroy

Por ejemplo, si inicialmente recuperó un TGT autenticándose con una contraseña, y necesita acceder a un servicio IdM que tiene asociado el indicador de autenticación pkinit, destruya su caché de credenciales actual y vuelva a autenticarse con una tarjeta inteligente. Consulte los indicadores de autenticación de Kerberos.

Pasos de verificación

  • Utilice el comando klist para verificar que el ticket de servicio está en la caché de credenciales de Kerberos por defecto.

    [root@server etc]# klist_
    Ticket cache: KCM:1000
    Default principal: admin@EXAMPLE.COM
    
    Valid starting       Expires              Service principal
    04/01/2020 12:52:42  04/02/2020 12:52:39  krbtgt/EXAMPLE.COM@EXAMPLE.COM
    04/01/2020 12:54:07 04/02/2020 12:52:39 testservice/client.example.com@EXAMPLE.COM

33.4.4. Recursos adicionales

33.5. Configuración de la política global del ciclo de vida del ticket

La política global de tickets se aplica a todos los tickets de servicio y a los usuarios que no tienen definida ninguna política de tickets por usuario.

El siguiente procedimiento describe el ajuste de la duración máxima del ticket y la edad máxima de renovación del ticket para la política global de tickets de Kerberos mediante el comando ipa krbtpolicy-mod.

Al utilizar el comando ipa krbtpolicy-mod, especifique al menos uno de los siguientes argumentos:

  • --maxlife para la duración máxima del billete en segundos
  • --maxrenew para la edad máxima renovable en segundos

Procedimiento

  1. Para modificar la política global de tickets:

    [root@server ~]# ipa krbtpolicy-mod --maxlife=$((8*60*60)) --maxrenew=$((24*60*60))
      Max life: 28800
      Max renew: 86400

    In this example, the maximum lifetime is set to eight hours (8 * 60 minutes * 60 seconds) and the maximum renewal age is set to one day (24 * 60 minutes * 60 seconds).

  2. Opcional: Para restablecer la política global de tickets de Kerberos a los valores de instalación por defecto:

    [root@server ~]# ipa krbtpolicy-reset
      Max life: 86400
      Max renew: 604800

Pasos de verificación

  • Muestra la política global de tickets:

    [root@server ~]# ipa krbtpolicy-show
      Max life: 28800
      Max renew: 86640

Recursos adicionales

33.6. Configuración de políticas globales de tickets por indicador de autenticación

Este procedimiento describe el ajuste de la duración máxima global del ticket y la edad máxima renovable para cada indicador de autenticación. Estos ajustes se aplican a los usuarios que no tienen definidas políticas de tickets por usuario.

Utilice el comando ipa krbtpolicy-mod para especificar la duración máxima global o la edad máxima renovable de los tickets de Kerberos en función de los indicadores de autenticación adjuntos.

Procedimiento

  • Por ejemplo, para establecer los valores globales de duración del ticket de dos factores y de edad de renovación a una semana, y los valores globales de duración del ticket de tarjeta inteligente y de edad de renovación a dos semanas:

    [root@server ~]# ipa krbtpolicy-mod --otp-maxlife=604800 --otp-maxrenew=604800 --pkinit-maxlife=172800 --pkinit-maxrenew=172800

Pasos de verificación

  • Muestra la política global de tickets:

    [root@server ~]# ipa krbtpolicy-show
      Max life: 86400
      OTP max life: 604800
      PKINIT max life: 172800
      Max renew: 604800
      OTP max renew: 604800
      PKINIT max renew: 172800

    Observe que los valores OTP y PKINIT son diferentes de los valores globales por defecto Max life y Max renew.

Recursos adicionales