Red Hat Training

A Red Hat training course is available for RHEL 8

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.