Servicio de autenticación federada

Last published : Nov 13, 2026
Puede usar el Servicio de autenticación federada (FAS) para autenticar a los usuarios que inician sesión en un VDA de Linux. El VDA de Linux utiliza el mismo entorno de Windows que el VDA de Windows para la función de inicio de sesión de FAS. Para obtener información sobre cómo configurar el entorno de Windows para FAS, consulte Servicio de autenticación federada. Este artículo proporciona información adicional específica para el VDA de Linux.
Nota:
  • El VDA de Linux no admite la directiva de comportamiento en la sesión.
  • El VDA de Linux utiliza conexiones cortas para transmitir datos con los servidores FAS.
  • A partir de la versión 2206, puede personalizar el puerto FAS en el lado del VDA de Linux a través de CTX_XDL_FAS_LIST en ctxsetup.sh. Para obtener más información, consulte el artículo de instalación del VDA de Linux según su distribución.

Configurar FAS en el VDA de Linux

Compatibilidad con FAS en RHEL 8.x y Rocky Linux 8.x

FAS depende del módulo pam\_krb5, que está obsoleto en RHEL 8.x y Rocky Linux 8.x. Los siguientes pasos son necesarios si desea utilizar FAS en máquinas RHEL 8.x y Rocky Linux 8.x entregadas en modo de SO multisesión. Para FAS en máquinas RHEL 8.x y Rocky Linux 8.x entregadas en modo de SO de sesión única (VDI), puede omitir los siguientes pasos.
  1. Descargue el código fuente de pam\_krb5-2.4.8-6 del siguiente sitio web:
    <https://centos.pkgs.org/7/centos-x86_64/pam_krb5-2.4.8-6.el7.x86_64.rpm.html>.
  2. Compile e instale el módulo pam\_krb5 en RHEL 8.x y Rocky Linux 8.x.
    yum install make gcc krb5-devel pam-devel autoconf libtool
    rpm2cpio pam_krb5-2.4.8-6.el7.src.rpm | cpio -div
    tar xvzf pam_krb5-2.4.8.tar.gz
    cd pam_krb5-2.4.8
    ./configure --prefix=/usr
    make
    make install
  3. verificar que pam\_krb5.so existe en /usr/lib64/security/.
    ls -l /usr/lib64/security | grep pam_krb5

Configurar servidores FAS

Para usar FAS en una nueva instalación del VDA de Linux, escriba el FQDN de cada servidor FAS al ejecutar ctxinstall.sh o ctxsetup.sh. Dado que el VDA de Linux no admite la directiva de grupo de AD, puede proporcionar una lista de servidores FAS separada por punto y coma. Si se elimina alguna dirección de servidor, rellene su espacio en blanco con la cadena de texto \&lt;none\> y no modifique el orden de las direcciones de los servidores.
Para actualizar una instalación existente del VDA de Linux, puede volver a ejecutar ctxsetup.sh para configurar los servidores FAS. O puede ejecutar los siguientes comandos para configurar los servidores FAS y reiniciar el servicio ctxvda para que la configuración surta efecto.
sudo /opt/Citrix/VDA/bin/ctxreg create -k "HKLM\Software\Citrix\VirtualDesktopAgent\Authentication\UserCredentialService" -t "REG_SZ" -v "Addresses" -d "<Your-FAS-Server-List>" --force

service ctxjproxy restart

service ctxvda restart
Para actualizar los servidores FAS a través de ctxreg, ejecute los siguientes comandos:
sudo /opt/Citrix/VDA/bin/ctxreg update -k "HKLM\Software\Citrix\VirtualDesktopAgent\Authentication\UserCredentialService" -v "Addresses" -d "<Your-FAS-Server-List>"

service ctxjproxy restart

service ctxvda restart

Instalar certificados

Para la verificación de los certificados de los usuarios, instale el certificado de CA raíz y todos los certificados intermedios en el VDA. Por ejemplo, para instalar el certificado de CA raíz, obtenga el certificado raíz de AD del paso anterior Retrieve the CA Certificate from the Microsoft CA (on AD), o descargue su formato DER del servidor de CA raíz http://CA-SERVER/certsrv.
Nota:
Los siguientes comandos también se aplican a la configuración de un certificado intermedio.
Convierta un archivo DER (.crt, .cer, .der) a PEM ejecutando un comando similar al siguiente:
sudo openssl x509 -inform der -in root.cer -out root.pem
Luego, instale el certificado de CA raíz en el directorio openssl ejecutando un comando similar al siguiente:
sudo cp root.pem /etc/pki/CA/certs/
Nota:
No coloque el certificado de CA raíz en la ruta /root. De lo contrario, FAS no tendrá permiso de lectura para el certificado de CA raíz.

Ejecutar ctxfascfg.sh

Ejecute el script ctxfascfg.sh para configurar FAS:
sudo /opt/Citrix/VDA/sbin/ctxfascfg.sh
Se agregan variables de entorno para que ctxfascfg.sh se pueda ejecutar en modo silencioso:
  • CTX\_FAS\_ADINTEGRATIONWAY=winbind \| sssd \| centrify \| pbis: Indica el método de integración de Active Directory, que es igual a CTX_EASYINSTALL_ADINTEGRATIONWAY cuando se especifica CTX_EASYINSTALL_ADINTEGRATIONWAY. Si no se especifica CTX_EASYINSTALL_ADINTEGRATIONWAY, CTX_FAS_ADINTEGRATIONWAY utiliza su propia configuración de valor.
  • CTX\_FAS\_CERT\_PATH \=\&lt;certificate path\>: Especifica la ruta completa donde se almacenan el certificado raíz y todos los certificados intermedios.
  • CTX_FAS_KDC_HOSTNAME: Especifica el nombre de host del Centro de distribución de claves (KDC) cuando selecciona PBIS.
  • CTX_FAS_PKINIT_KDC_HOSTNAME: Especifica el nombre de host de PKINIT KDC, que es igual a CTX_FAS_KDC_HOSTNAME a menos que se especifique lo contrario. Si tiene varios Delivery Controllers, agregue los nombres de host de todos los KDC del dominio a pkinit_kdc_hostname en el archivo /etc/krb5.conf. Para obtener más información, consulte el artículo del Centro de conocimientos CTX322129.
Elija el método de integración de Active Directory correcto y, a continuación, escriba la ruta correcta de los certificados (por ejemplo, /etc/pki/CA/certs/).
El script instala los paquetes krb5-pkinit y pam\_krb5 y establece los archivos de configuración pertinentes.

Inhabilitar FAS

Para deshabilitar FAS en el VDA de Linux, elimine todos los servidores FAS de ConfDB mediante los siguientes comandos:
sudo /opt/Citrix/VDA/bin/ctxreg create -k "HKLM\Software\Citrix\VirtualDesktopAgent\Authentication\UserCredentialService" -t "REG_SZ" -v "Addresses" -d "" --force

service ctxjproxy restart

service ctxvda restart

Limitación

  • FAS admite plataformas Linux limitadas y métodos de integración de AD. Consulte la siguiente matriz:
    Winbind SSSD Centrify PBIS
    Amazon Linux 2 Sí Sí Sí Sí
    Debian 11.3 Sí Sí Sí Sí
    RHEL 9.0 Sí Sí No No
    RHEL 8.7/8.6/8.4 Sí Sí Sí Sí
    RHEL 7.9, CentOS 7.9 Sí Sí Sí Sí
    Rocky Linux 9.0 Sí Sí No No
    Rocky Linux 8.7/8.6 Sí Sí No No
    SUSE 15.4 Sí Sí Sí No
    Ubuntu 22.04/20.04/18.04 Sí Sí Sí Sí
  • FAS aún no es compatible con la pantalla de bloqueo. Si hace clic en el botón de bloqueo en una sesión, no podrá volver a iniciar sesión en ella mediante FAS.
  • Esta versión solo admite las implementaciones comunes de FAS resumidas en el artículo Información general sobre la arquitectura de Federated Authentication Service y no incluye Windows 10 Azure AD Join.

Solución de problemas

Antes de solucionar problemas de FAS, asegúrese de que el VDA de Linux esté instalado y configurado correctamente y de que se pueda iniciar correctamente una sesión que no sea de FAS en el almacén común mediante la autenticación con contraseña.
Si las sesiones que no son de FAS funcionan correctamente, establezca el nivel de registro de HDX de la clase Login en VERBOSE y el nivel de registro de VDA en TRACE. Para obtener información sobre cómo habilitar el registro de seguimiento para el VDA de Linux, consulte el artículo de Knowledge Center CTX220130.

Error de configuración del servidor FAS

No se puede iniciar una sesión desde el almacén de FAS.
Compruebe /var/log/xdl/hdx.log y busque el registro de errores similar al siguiente:
2021-01-28 01:42:16.164 <P26422:S4> citrix-ctxlogin: validate_user: [Logon Type] Federated Authentication Logon.

2021-01-28 01:42:16.164 <P26422:S4> citrix-ctxlogin: validate_fas: entry

2021-01-28 01:42:16.164 <P26422:S4> citrix-ctxlogin: connect_fas: start connect to server 0

2021-01-28 01:42:16.164 <P26422:S4> citrix-ctxlogin: connect_fas0: failed to connect: Connection refused.

2021-01-28 01:42:16.164 <P26422:S4> citrix-ctxlogin: validate_fas: failed to connect to server [0], please confirm if fas service list is well configurated in condb

2021-01-28 01:42:16.164 <P26422:S4> citrix-ctxlogin: validate_fas: exit, 43

2021-01-28 01:42:16.164 <P26422:S4> citrix-ctxlogin: validate_user: failed to validate fas credential

2021-01-28 01:42:16.164 <P26422:S4> citrix-ctxlogin: LoginBoxValidate: failed validation of user 'user1@CTXDEV.LOCAL', INVALID_PARAMETER

Solución

Ejecute el siguiente comando para verificar que el valor del Registro de Citrix "HKEY\_LOCAL\_MACHINE\\SOFTWARE\\Citrix\\VirtualDesktopAgent\\Authentication\\UserCredentialService" esté establecido en \&lt;Your-FAS-Server-List\>.
sudo /opt/Citrix/VDA/bin/ctxreg dump | grep "UserCredentialService"
Si la configuración existente es incorrecta, siga el paso anterior Configurar servidores FAS para volver a configurarla.

Configuración incorrecta del certificado de CA

No se puede iniciar una sesión desde el almacén de FAS. Aparece una ventana gris que desaparece varios segundos después.
Inicio de sesión no válido debido a una configuración incorrecta del certificado raíz de CA
Compruebe /var/log/xdl/hdx.log y busque el registro de errores similar al siguiente:
2021-01-28 01:47:46.210 <P30656:S5> citrix-ctxlogin: get_logon_certificate: entry

2021-01-28 01:47:46.210 <P30656:S5> citrix-ctxlogin: check_caller: current process: pid [30656], name [/opt/Citrix/VDA/bin/ctxlogin]

2021-01-28 01:47:46.210 <P30656:S5> citrix-ctxlogin: get_public_certificate: entry

2021-01-28 01:47:46.211 <P30656:S5> citrix-ctxlogin: query_fas: waiting for response...

2021-01-28 01:47:46.270 <P30656:S5> citrix-ctxlogin: query_fas: query to server success

2021-01-28 01:47:46.270 <P30656:S5> citrix-ctxlogin: get_public_certificate: exit

2021-01-28 01:47:46.270 <P30656:S5> citrix-ctxlogin: fas_base64_decode: input size 1888

2021-01-28 01:47:46.271 <P30656:S5> citrix-ctxlogin: fas_base64_decode: output size 1415

2021-01-28 01:47:46.271 <P30656:S5> citrix-ctxlogin: get_logon_certificate: get logon certificate success

2021-01-28 01:47:46.271 <P30656:S5> citrix-ctxlogin: cache_certificate: cache certificate success

2021-01-28 01:47:46.271 <P30656:S5> citrix-ctxlogin: get_logon_certificate: exit, 0

2021-01-28 01:47:48.060 <P30656:S5> citrix-ctxlogin: validate_user: pam_authenticate err,can retry for user user1@CTXDEV.LOCAL

Solución

verificar que ha establecido correctamente en /etc/krb5.conf la ruta completa que almacena el certificado raíz de CA y todos los certificados intermedios. La ruta completa es similar a la siguiente:

 [realms]

EXAMPLE.COM = {

    ......

    pkinit_anchors = DIR:/etc/pki/CA/certs/

    ......

}  
Si la configuración existente es incorrecta, siga el paso anterior Instalar certificados para volver a configurarla.
Alternativamente, compruebe si el certificado de CA raíz es válido.

Error de asignación de cuenta de sombra

FAS está configurado mediante autenticación SAML. El siguiente error puede ocurrir después de que un usuario de ADFS introduzca el nombre de usuario y la contraseña en la página de inicio de sesión de ADFS.
Error de asignación de cuenta de sombra
Este error indica que el usuario de ADFS se ha verificado correctamente, pero no hay ningún usuario de sombra configurado en AD.

Solución

Configure la cuenta de sombra en AD.

ADFS no configurado

El siguiente error ocurre durante un intento de inicio de sesión en el almacén de FAS:
ADFS no configurado
El problema ocurre cuando el almacén de FAS está configurado para usar la autenticación SAML, pero falta la implementación de ADFS.

Solución

Implemente el IdP de ADFS para el Servicio de autenticación federada. Para obtener más información, consulte Implementación de ADFS del Servicio de autenticación federada.

Información relacionada

Problema conocido

Cuando FAS está en uso, puede fallar al intentar iniciar una sesión de escritorio o aplicación publicada con caracteres no ingleses.
Error al iniciar sesiones con caracteres no ingleses

Solución alternativa

Haga clic con el botón derecho en Administrar plantillas en la herramienta de CA para cambiar la plantilla Citrix\_SmartcardLogon de Crear a partir de esta información de Active Directory a Suministrar en la solicitud:
La opción Suministrar en la solicitud