Linux Virtual Delivery Agent

Autenticación con Azure Active Directory

Nota:

Esta característica solo está disponible para VDA alojados en Azure.

  • Según tus necesidades, puedes implementar dos tipos de VDA de Linux en Azure:

  • Máquinas virtuales unidas a Azure AD DS. Las máquinas virtuales están unidas a un dominio administrado de Azure Active Directory (AAD) Domain Services (DS). Los usuarios utilizan sus credenciales de dominio para iniciar sesión en las máquinas virtuales.
  • Máquinas virtuales no unidas a un dominio. Las máquinas virtuales se integran con el servicio de identidad de AAD para proporcionar autenticación de usuario. Los usuarios utilizan sus credenciales de AAD para iniciar sesión en las máquinas virtuales.

  • Para obtener más información sobre AAD DS y AAD, consulta este artículo de Microsoft.

Este artículo te muestra cómo habilitar y configurar el servicio de identidad de AAD en VDA no unidos a un dominio.

Distribuciones compatibles

  • Ubuntu 22.04, 20.04
    • RHEL 8.9, 8.8, 8.6, 7.9
    • SUSE 15.5

Para obtener más información, consulta este artículo de Microsoft.

Problemas conocidos y soluciones

En RHEL 7.9, el módulo PAM (Pluggable Authentication Module) pam_loginuid.so no puede establecer loginuid después de la autenticación de usuario de AAD. Este problema impide que los usuarios de AAD accedan a las sesiones de VDA.

Para solucionar este problema, en /etc/pam.d/remote, comenta la línea Session required pam_loginuid.so. Consulta la siguiente captura de pantalla para ver un ejemplo.

Solución para un problema conocido

Paso 1: Crear una máquina virtual de plantilla en el portal de Azure

Crea una máquina virtual de plantilla e instala la CLI de Azure en la máquina virtual.

  1. En el portal de Azure, crea una máquina virtual de plantilla. Asegúrate de seleccionar Login with Azure AD en la ficha Management antes de hacer clic en Review + create.

    Configuración para habilitar el inicio de sesión con AAD

  2. Instala la CLI de Azure en la máquina virtual de plantilla. Para obtener más información, consulta este artículo de Microsoft.

Paso 2: Preparar una imagen maestra en la máquina virtual de plantilla

Para preparar una imagen maestra, sigue el Paso 3: Preparar una imagen maestra en Crear VDA de Linux mediante Machine Creation Services (MCS).

Paso 3: Configurar la máquina virtual de plantilla en modo no unido a un dominio

Después de crear una imagen maestra, sigue estos pasos para configurar la máquina virtual en modo no unido a un dominio:

  1. Ejecuta el siguiente script desde el símbolo del sistema.

    Modify /var/xdl/mcs/mcs_util.sh
    <!--NeedCopy-->
    
  2. Busca function read_non_domain_joined_info() y, a continuación, cambia el valor de NonDomainJoined a 2. Consulta el siguiente bloque de código para ver un ejemplo.

    function read_non_domain_joined_info()
    {
    log "Debug: Enter read_non_domain_joined_info"
    # check if websocket enabled
    TrustIdentity=`cat ${id_disk_mnt_point}${ad_info_file_path} | grep '\[TrustIdentity\]' | sed 's/\s//g'`
    if [ "$TrustIdentity" == "[TrustIdentity]" ]; then
    NonDomainJoined=2
    fi
    -  ...
    -  }
    <!--NeedCopy-->
    
  3. Guarda el cambio.

  4. Apaga la máquina virtual de plantilla.

Paso 4: Crear las máquinas virtuales de Linux a partir de la máquina virtual de plantilla

Una vez que tengas lista la máquina virtual de plantilla no unida a un dominio, sigue estos pasos para crear máquinas virtuales:

  1. Inicia sesión en Citrix Cloud.

  2. Haz doble clic en Citrix DaaS™ y, a continuación, accede a la consola de administración de Configuración completa.

  3. En Machine Catalogs, elige usar Machine Creation Services para crear las máquinas virtuales de Linux a partir de la máquina virtual de plantilla. Para obtener más información, consulta el artículo de Citrix DaaS No unido a un dominio.

Paso 5: Asignar cuentas de usuario de AAD a las máquinas virtuales de Linux

Después de crear las máquinas virtuales no unidas a un dominio, asígnales cuentas de usuario de AAD.

Para asignar cuentas de usuario de AAD a una máquina virtual, sigue estos pasos:

  1. Accede a la máquina virtual con una cuenta de administrador.
  2. En la ficha Identify > System assigned, habilita System Identity.

    Configuración para habilitar el inicio de sesión con AAD

  3. En la ficha Access control (IAM) > Role assignments, busca el área Virtual Machine User Login y, a continuación, agrega las cuentas de usuario de AAD según sea necesario.

    Configuración para habilitar el inicio de sesión con AAD

Iniciar sesión en VDA no unidos a un dominio

Los usuarios finales de tu organización pueden iniciar sesión en un VDA no unido a un dominio de dos maneras. Los pasos detallados son los siguientes:

  1. Inicia la aplicación Workspace y, a continuación, inicia sesión en el espacio de trabajo introduciendo el nombre de usuario y la contraseña de AAD. Aparece la página de Workspace.
  2. Haz doble clic en un escritorio no unido a un dominio. Aparece la página de INICIO DE SESIÓN DE AAD.

    La página varía según el modo de inicio de sesión establecido en el VDA: Código de dispositivo o cuenta/contraseña de AAD. De forma predeterminada, los VDA de Linux autentican a los usuarios de AAD mediante el modo de inicio de sesión de Código de dispositivo, como se indica a continuación. Como administrador, puedes cambiar el modo de inicio de sesión a cuenta/contraseña de AAD si es necesario. Consulta la siguiente sección para ver los pasos detallados.

    Configuración para habilitar el inicio de sesión con AAD

  3. Según las instrucciones en pantalla, inicia sesión en la sesión de escritorio de una de las siguientes maneras:
    • Escanea el código QR e introduce el código.
    • Introduce el nombre de usuario y la contraseña de AAD.

Cambiar al modo de inicio de sesión de cuenta/contraseña de AAD

De forma predeterminada, los VDA de Linux autentican a los usuarios de AAD con códigos de dispositivo. Consulta este artículo de Microsoft para obtener más detalles. Para cambiar el modo de inicio de sesión a cuenta/contraseña de AAD, sigue estos pasos:

Ejecuta el siguiente comando en el VDA, busca la clave AADAcctPwdAuthEnable y cambia su valor a 0x00000001.

/opt/Citrix/VDA/bin/ctxreg create -k "HKLM\System\CurrentControlSet\Services\CitrixBrokerAgent\WebSocket" -t "REG_DWORD" -v "AADAcctPwdAuthEnable" -d "0x00000001" --force

<!--NeedCopy-->

Nota:

Este enfoque no funciona con cuentas de Microsoft ni con cuentas que tengan habilitada la autenticación de dos factores.