Servicio de autenticación federada

Información general

El Servicio de autenticación federada (Federated Authentication Service) de Citrix es un componente con privilegios diseñado para integrarlo con el Servicio de Certificados de Active Directory. Emite certificados para los usuarios de forma dinámica, lo que les permite iniciar sesiones en un entorno de Active Directory como si tuvieran una tarjeta inteligente. Esta función permite a StoreFront usar una gama más amplia de opciones de autenticación, tales como aserciones SAML (Security Assertion Markup Language). SAML se usa normalmente como alternativa a las cuentas de usuario tradicionales de Windows en Internet.

En el siguiente diagrama se muestra el Servicio de autenticación federada integrado con una entidad de certificación de Microsoft y ofreciendo servicios de respaldo para StoreFront y los agentes Virtual Delivery Agent (VDA) de XenApp y XenDesktop.

Imagen localizada

Los servidores StoreFront de confianza contactan con el Servicio de autenticación federada (FAS) cuando los usuarios solicitan acceso a los entornos Citrix. El servicio FAS concede un tíquet que permite que una sola de sesión de XenApp o XenDesktop se autentique con un certificado para esa sesión. Cuando un agente VDA debe autenticar a un usuario, se conecta al servicio FAS y canjea el tíquet. Solo el servicio FAS tiene acceso a la clave privada del certificado del usuario. El VDA debe enviar cada operación de firma y descifrado que necesita llevar a cabo con el certificado al servicio FAS.

Requisitos

El servicio de autenticación federada se admite en servidores Windows (Windows Server 2008 R2 o una versión posterior).

  • Citrix recomienda la instalación del servicio FAS en un servidor que no contenga ningún otro componente de Citrix.
  • El servidor de Windows debe ser seguro. Este servidor tendrá acceso a un certificado de autorización de registro y una clave privada que permitirá emitir certificados para los usuarios del dominio y tendrá acceso a esos certificados de usuario y sus claves privadas.

En el sitio de XenApp o XenDesktop:

  • Los Delivery Controllers deben ser de la versión 7.9 como mínimo.
  • El servidor StoreFront debe ser como mínimo de la versión 3.6 (versión suministrada en la imagen ISO de XenApp y XenDesktop 7.9).
  • Los Linux VDA deben ser como mínimo de la versión 7.18. Compruebe que la configuración de directiva de grupo del Servicio de autenticación federada se ha aplicado correctamente a los VDA antes de crear el catálogo de máquinas de la forma habitual. Para obtener más información, consulte el apartado Configurar la directiva de grupo en este artículo.

Referencias:

Configurar Windows para el inicio de sesión con certificados

Para obtener información sobre cómo configurar Windows para el inicio de sesión con certificados, abra el artículo CTX206156 de Knowledge Center para descargar y leer el archivo Smart_card_config_Citrix_Env.pdf (en adelante, “el archivo PDF”). Realice los siguientes pasos de acuerdo con el archivo PDF, al mismo tiempo que toma nota de las diferencias o complementos que se dan en cada paso. Preste especial atención a la máquina de destino en la que está operando, por ejemplo, AD, Delivery Controller o StoreFront.

Configurar un dominio Windows (en AD)

Instalar roles de controlador de dominio

Consulte la sección Installing Domain Controller Roles Controller Roles en el archivo PDF.

Durante la instalación de los Servicios de certificados de Active Directory, compruebe que las siguientes opciones estén seleccionadas como se muestra a continuación:

Imagen localizada

Imagen localizada

Imagen localizada

Abra http://localhost/certsrv/ para verificar si muestra la siguiente página de bienvenida. En caso afirmativo, los Servicios de certificados de Active Directory se han instalado correctamente.

Imagen localizada

Preparar la entidad de certificación para el uso de la tarjeta inteligente

Sin complemento. Consulte la sección Preparing the Certificate Authority for Smart card usage del archivo PDF.

Emitir un certificado de controlador de dominio

Sin complemento. Consulte la sección Issuing a Domain Controller Certificate en el archivo PDF.

Configurar Microsoft IIS para HTTPS (en StoreFront)

Configurar HTTPS en Microsoft IIS

Sin complemento. Consulte la sección Configuring HTTPS on Microsoft IIS en el archivo PDF.

Equipos sin dominio

Consulte la sección Non-Domain Joined Computers en el archivo PDF.

Recuperar el certificado CA de la CA de Microsoft (en AD)

Sin complemento. Consulte la sección Retrieving the CA Certificate from the Microsoft CA en el archivo PDF.

Instalar el certificado de CA de confianza en Windows

Sin complemento. Consulte la sección Installing the Trusted CA Certificate on Windows en el archivo PDF.

Configurar Citrix StoreFront (en StoreFront)

Crear la tienda

Consulte la sección Creating the Store en el archivo PDF.

Después de la configuración anterior de IIS, la URL base de la tienda común se establece a la fuerza en https:// en lugar de http://. Puesto que FAS no comparte la tienda con tarjetas inteligentes, se necesita una nueva tienda para FAS. El servicio FAS de Linux VDA es compatible con cualquier método de autenticación de StoreFront. Por ejemplo, la tienda de FAS puede configurarse para usar contraseñas o SAML, pero no puede usar ambos al mismo tiempo. Cuando se selecciona SAML, la URL de StoreFront redirige automáticamente al proveedor de identidades, y se ignora el método de autenticación por contraseña.

Imagen localizada

Imagen localizada

Imagen localizada

Inicie Internet Explorer y abra la URL de la tienda de FAS (por ejemplo, https://mzgwy-ddc.xd.local/Citrix/FASWeb).

Nota: La URL de la tienda de FAS debe contener Web.

Instalar y configurar FAS

El proceso de instalación y configuración consta de los siguientes pasos:

  1. Instalar el Servicio de autenticación federada
  2. Habilitar el plug-in del Servicio de autenticación federada en los servidores StoreFront
  3. Configurar la directiva de grupo
  4. Use la consola de administración del Servicio de autenticación federada para: (a) Implementar las plantillas suministradas, (b) Configurar entidades de certificación y (c) Autorizar al servicio de autenticación federada para usar su entidad de certificación
  5. Configurar reglas de usuario

Para obtener instrucciones sobre cada uno de los pasos, consulte Servicio de autenticación federada. Tenga en cuenta las siguientes diferencias o complementos en cada uno de los pasos. Preste especial atención a la máquina de destino en la que está operando; por ejemplo, AD, Delivery Controller, StoreFront o el servidor FAS.

Instalar el Servicio de autenticación federada (en el servidor FAS)

Por motivos de seguridad, Citrix recomienda que el Servicio de autenticación federada (FAS) esté instalado en un servidor dedicado que sea seguro, y esté protegido del mismo modo que un controlador de dominio o una entidad de certificación.

Habilitar el plug-in del Servicio de autenticación federada en una tienda de StoreFront (en StoreFront)

El siguiente comando debe usar el mismo nombre de tienda de FAS que usted escribió al configurar StoreFront. Por ejemplo, FAS es el nombre de la tienda en este ejemplo:

$StoreVirtualPath = “/Citrix/FAS

Configurar el Delivery Controller (en el Delivery Controller)

Para usar el Servicio de autenticación federada, configure el Delivery Controller de XenApp o XenDesktop para que confíe en los servidores StoreFront que pueden conectarse a él: ejecute el cmdlet de PowerShell Set-BrokerSite -TrustRequestsSentToTheXmlServicePort $true. En ocasiones, es posible que primero deba ejecutar asnp citrix*.

Configurar la directiva de grupo (en el servidor FAS y en AD)

Debe ser un administrador para poder realizar los pasos del 1 al 7 de esta sección. El paso 1 debe realizarse en el servidor FAS, mientras que los pasos del 2 al 7 deben realizarse en AD.

Después de completar los pasos del 1 al 7, consulte el editor del Registro del servidor FAS para confirmar que la directiva de FAS se ha establecido.

Imagen localizada

Habilitar el respaldo a certificados en la sesión

Linux VDA no admite certificados en la sesión.

Usar la consola de administración de los Servicios de autenticación federada (en el servidor FAS)

Sin complemento. Consulte el artículo Servicio de autenticación federada.

Implementar plantillas de certificado (en el servidor FAS)

Sin complemento. Consulte el artículo Servicio de autenticación federada.

Configurar los Servicios de certificados de Active Directory (en el servidor FAS)

Sin complemento. Consulte el artículo Servicio de autenticación federada.

Autorizar el Servicio de autenticación federada (en el servidor FAS)

Sin complemento. Consulte el artículo Servicio de autenticación federada.

Configurar reglas de usuario (en el servidor FAS)

Sin complemento. Consulte el artículo Servicio de autenticación federada.

Para obtener más información, consulte también los apartados Agentes de inscripción delegada y Configuración de una lista de control de acceso en la sección Consideraciones sobre seguridad del artículo Servicio de autenticación federada.

Implementación ADFS del servicio de autenticación federada

Para obtener información sobre cómo implementar el proveedor de identidades de ADFS para el Servicio de autenticación federada, consulte Implementación ADFS del servicio de autenticación federada.

Configurar Linux VDA

Configurar servidores FAS

Para una nueva instalación de Linux VDA, si quiere usar FAS, escriba el FQDN de cada servidor FAS cuando se le solicite CTX_XDL_FAS_LIST durante la ejecución de ctxinstall.sh o ctxsetup.sh. Como Linux VDA no respalda las directivas de grupo de AD, en su lugar, se puede suministrar una lista de servidores FAS, separados por punto y coma. Si alguna dirección de servidor está eliminada, complete el espacio en blanco correspondiente con la cadena de texto <none> y no cambie la secuencia de las direcciones de servidor.

Para actualizar una instalación Linux VDA existente, puede volver a ejecutar ctxsetup.sh y configurar los servidores FAS. O puede ejecutar los siguientes comandos para configurar los servidores FAS y reiniciar el servicio ctxvda para que los cambios surtan 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 ctxvda restart

Para actualizar los servidores FAS mediante 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 ctxvda restart

Instalar un certificado raíz de CA

Para la verificación de los certificados de los usuarios, instale el certificado raíz de CA en el VDA. Puede obtener el certificado raíz de AD del paso indicado Recuperar el certificado CA de la CA de Microsoft (en AD). También puede descargarlo en formato DER desde el servidor raíz de CA http://CA-SERVER/certsrv.

Puede ejecutar un comando similar al siguiente para convertir un archivo DER (.crt, .cer, .der) a PEM.

sudo openssl x509 -inform der -in root.cer -out root.pem

Luego, instale el certificado raíz de CA en el directorio openssl ejecutando un comando similar al siguiente:

sudo cp root.pem /etc/pki/CA/certs/

Nota:

No coloque el certificado raíz de CA en la ruta /root. Si lo hace, FAS no tendrá el permiso de leer el certificado raíz de CA.

Configurar FAS

Ejecute el siguiente script para configurar los parámetros de FAS:

sudo /opt/Citrix/VDA/sbin/ctxfascfg.sh

Elija el método apropiado de integración en Active Directory y escriba la ruta apropiada al certificado raíz de CA (por ejemplo, /etc/pki/CA/certs/root.pem).

El script instala los paquetes krb5-pkinit y pam_krb5, y establece los archivos de configuración relevantes.

Limitación

  • En la versión 7.18, FAS admite plataformas limitadas y métodos de integración de AD. Consulte la siguiente matriz:

      Winbind SSSD Centriy
    RHEL 7.4
    RHEL 6.9 × × ×
    RHEL 6.8 × × ×
    Ubuntu 16.04 (4.13 kernel) ×
    SLES 12.3 ×
  • FAS aún no admite la pantalla de bloqueo. Si hace clic en el botón de bloqueo en una sesión, no podrá volver a iniciar la sesión utilizando FAS.
  • Esta versión admite solamente las implementaciones más frecuentes del servicio FAS que se resumen en el artículo Información general de las arquitecturas de Servicios de autenticación federada; se debe excluir Unir Windows 10 a Azure AD.

Solución de problemas

Antes de solucionar problemas en FAS, compruebe que Linux VDA esté instalado y configurado correctamente para que pueda iniciarse una sesión que no sea FAS en la tienda común utilizando la autenticación con contraseña.

Si no hay problemas con las sesiones que no sean FAS, defina el nivel de registro de HDX de la clase Login en VERBOSE y el nivel de registro del VDA en TRACE. Para obtener información sobre cómo habilitar el registro de seguimiento para Linux VDA, consulte el artículo CTX220130 de Knowledge Center.

Error de configuración en el servidor FAS

Al iniciar sesión en el almacén de FAS, se produce un error y se abre una ventana como la siguiente:

Imagen localizada

Consulte /var/log/xdl/hdx.log y busque el registro de errores similar al siguiente:

2018-03-27 10:17:56.722 <P10122:S2> citrix-ctxlogin: query2fas: failed to retrieve data: No such file or directory.

2018-03-27 10:17:56.722 <P10122:S2> citrix-ctxlogin: sayhello2fas_internal: Failed to query.

2018-03-27 10:17:56.722 <P10122:S2> citrix-ctxlogin: sayhello2fas_convertcredential: exit.

2018-03-27 10:17:56.722 <P10122:S2> citrix-ctxlogin: LoginFasValidate: Failed to start FAS.

2018-03-27 10:17:56.722 <P10122:S2> citrix-ctxlogin: receive_data: LoginFASValidate - parameters check error.

2018-03-27 10:17:56.722 <P10122:S2> citrix-ctxlogin: receive_data: Exit FAILURE

2018-03-27 10:17:56.722 <P10122:S2> citrix-ctxlogin: main: EXITING login process..., FAILURE

Solución

Ejecute el siguiente comando para verificar que el valor de Registro de Citrix “HKEY_LOCAL_MACHINE\SOFTWARE\Citrix\VirtualDesktopAgent\Authentication\UserCredentialService” está establecido en <La-lista-de-servidores-FAS>.

sudo /opt/Citrix/VDA/bin/ctxreg dump | grep "UserCredentialService"

Si la configuración existente no es correcta, siga el anterior paso Configurar servidores FAS para definirla nuevamente.

Configuración incorrecta del certificado raíz de CA

No se puede lanzar ninguna sesión desde la tienda de FAS. Aparece una ventana gris que desaparece varios segundos después.

Imagen localizada

Consulte /var/log/xdl/hdx.log y busque el registro de errores similar al siguiente:  

2018-03-27 10:15:52.227 <P9099:S3> citrix-ctxlogin: validate_user: pam_authenticate err,can retry for user user1@CTXFAS.LAB

2018-03-27 10:15:52.228 <P9099:S3> citrix-ctxlogin: logout_user: closing session and pam transaction

2018-03-27 10:15:52.228 <P9099:S3> citrix-ctxlogin: validate_user: Exit (user=user1@CTXFAS.LAB)=INVALID_PASSWORD

2018-03-27 10:15:52.228 <P9099:S3> citrix-ctxlogin: LoginBoxValidate: failed validation of user 'user1@CTXFAS.LAB', INVALID_PASSWORD

2018-03-27 10:15:52.228 <P9099:S3> citrix-ctxlogin: Audit_login_failure: Not yet implemented

Solución

Verifique que la ruta completa del certificado raíz de CA esté configurada correctamente en /etc/krb5.conf. La ruta completa será parecida a esta:


 [realms]

EXAMPLE.COM = {

    ......

    pkinit_anchors = FILE:/etc/pki/CA/certs/root.pem

    ......

}  

Si la configuración existente no es correcta, siga el anterior paso Instalar un certificado raíz de CA para definirla nuevamente.

Como alternativa, compruebe si el certificado raíz de CA es válido.

Error en la asignación de cuenta sombra

FAS está configurado con la autenticación SAML. Puede aparecer el siguiente error después de que un usuario de ADFS escriba el nombre de usuario y la contraseña en la página de inicio de sesión de ADFS.

Imagen localizada

Este error indica que el usuario de ADFS se ha verificado correctamente, pero no hay ningún usuario sombra configurado en AD.

Solución

Establezca la cuenta sombra en AD.

ADFS no configurado

Durante el inicio de sesión en el almacén de FAS, aparece el siguiente error:

Imagen localizada

El motivo es que la tienda de FAS está configurada para usar la autenticación de SAML, pero falta la implementación de ADFS.

Solución

Implemente el proveedor de identidades de ADFS para el Servicio de autenticación federada. Para obtener más información, consulte el artículo Implementación ADFS del servicio de autenticación federada.

Información relacionada

Problema conocido

Cuando se usa FAS, puede que fallen los inicios de una sesión de aplicación o escritorio publicados si se usan caracteres que no sean en inglés.

Imagen localizada

Solución temporal

En la herramienta de CA, haga clic con el botón secundario en Manage Templates para cambiar la plantilla Citrix_SmartcardLogon de Build from this Active Directory information a Supply in the request, como se muestra a continuación:

Imagen localizada