Red Hat Training

A Red Hat training course is available for RHEL 8

57.7. Garantizar la presencia de un alias principal de Kerberos de un servicio utilizando un libro de jugadas de Ansible

En algunos escenarios, es beneficioso para el administrador de IdM permitir que los usuarios, hosts o servicios de IdM se autentiquen contra las aplicaciones de Kerberos utilizando un alias de entidad de seguridad de Kerberos. Estos escenarios incluyen:

  • El nombre de usuario ha cambiado, pero el usuario debería poder entrar en el sistema utilizando tanto el nombre de usuario anterior como el nuevo.
  • El usuario debe iniciar la sesión con la dirección de correo electrónico, incluso si el dominio de IdM Kerberos es diferente del dominio de correo electrónico.

Esta sección describe cómo crear el alias principal de HTTP/mycompany.idm.example.com para el servicio HTTP que se ejecuta en client.idm.example.com.

Requisitos previos

Procedimiento

  1. Cree un archivo de inventario, por ejemplo inventory.file:

    $ touch inventory.file
  2. Abra la página inventory.file y defina el servidor IdM que desea configurar en la sección [ipaserver]. Por ejemplo, para indicar a Ansible que configure server.idm.example.com, introduzca:

    [ipaserver]
    server.idm.example.com
  3. Haga una copia del archivo de playbook de Ansible /usr/share/doc/ansible-freeipa/playbooks/service/service-member-principal-present.yml. Por ejemplo:

    $ cp /usr/share/doc/ansible-freeipa/playbooks/service/service-member-principal-present.yml /usr/share/doc/ansible-freeipa/playbooks/service/service-member-principal-present-copy.yml
  4. Abra el archivo /usr/share/doc/ansible-freeipa/playbooks/service/service-member-principal-present-copy.yml Ansible playbook para editarlo.
  5. Adapte el archivo cambiando lo siguiente:

    • La contraseña del administrador de IdM especificada por la variable ipaadmin_password.
    • El nombre del servicio especificado por la variable name. Es el nombre principal canónico del servicio. En el ejemplo actual, es HTTP/client.idm.example.com.
    • El alias de director de Kerberos especificado por la variable principal. Este es el alias que quiere añadir al servicio definido por la variable name. En el ejemplo actual, es host/mycompany.idm.example.com.
    • El nombre de la tarea especificada por la variable name en la sección tasks.

      Una vez adaptado para el ejemplo actual, el archivo copiado tiene el siguiente aspecto:

    ---
    - name: Service member principal present
      hosts: ipaserver
      become: true
    
      tasks:
      - name: Service HTTP/client.idm.example.com member principals host/mycompany.idm.exmaple.com present
        ipaservice:
          ipaadmin_password: Secret123
          name: HTTP/client.idm.example.com
          principal:
            - host/mycompany.idm.example.com
          action: member
  6. Guarda el archivo.
  7. 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/service/service-member-principal-present-copy.yml

Si la ejecución del libro de jugadas da como resultado 0 tareas inalcanzables y 0 fallidas, ha creado con éxito la entidad de seguridad Kerberos host/mycompany.idm.example.com para el servicio HTTP/client.idm.example.com.

Recursos adicionales