Guía de prueba de concepto: NFactor para Citrix Gateway con autenticación OTP nativa

Introducción

Implementar la autenticación multifactor es una de las mejores maneras de verificar la identidad y mejorar la postura de seguridad. La contraseña de una vez (OTP) nativa (basada en tiempo) es una forma conveniente de implementar otro factor mediante aplicaciones de autenticación fácilmente disponibles. Permite a los usuarios introducir códigos de validación de su aplicación de autenticación, en un formulario de puerta de enlace, para autenticarse.

Citrix Gateway admite Native OTP y puede proporcionar autenticación para varios servicios, incluidos servicios web, VPN y Citrix Virtual Apps and Desktops. En esta Guía de POC, demostramos su uso para la autenticación en un entorno Citrix Virtual Apps and Desktops.

Arquitectura Conceptual

Registro nativo OTP

Autenticación OTP nativa

Información general

Esta guía muestra cómo implementar un entorno de prueba de concepto mediante la autenticación de dos factores con Citrix Gateway. Utiliza LDAP para validar las credenciales de Active Directory como primer factor y OTP nativo como segundo factor.

Se hacen suposiciones sobre la instalación completada y la configuración de los siguientes componentes:

  • Citrix Gateway instalado, licenciado y configurado con un servidor virtual accesible externamente enlazado a un certificado comodín
  • Citrix Gateway integrado con un entorno Citrix Virtual Apps and Desktops que utiliza LDAP para la autenticación
  • Endpoint con la aplicación Citrix Workspace instalada
  • Una aplicación Authenticator compatible, compatible con OTP basada en tiempo, instalada (incluidos Microsoft Authenticator, Google Authenticator o Citrix SSO)
  • Active Directory (AD) está disponible en el entorno

Consulte la documentación de Citrix para obtener la versión más reciente del producto y los requisitos de licencia: Autenticación OTP nativa

Factor nFactor

Directivas LDAP

Primero creamos dos directivas LDAP a las que nos referimos más adelante cuando estamos construyendo nuestro flujo nFactor.

Registro nativo OTP

Esta directiva de registro LDAP se utiliza para intercambiar y almacenar la clave utilizada para generar el código OTP basado en tiempo.

  1. Inicie sesión en la interfaz de usuario de Citrix ADC
  2. Vaya a Seguridad > Tráfico de aplicaciones AAA > Directivas > Autenticación > Directivas avanzadas > Directiva
  3. Haga clic en Add
  4. Introduzca polldap_notpmanage el nombre de la directiva y cambie el tipo de acción a LDAP.
  5. Haga clic Add en Acción
  6. Rellene los campos siguientes:
    • Nombre: Introduzca actldap_notpmanage
    • Nombre del servidor/dirección IP: Seleccione un FQDN o una dirección IP para los servidores AD. Entramos 192.0.2.50
    • Desactive Authentication esta configuración junto con el Secreto OTP a continuación indica que la directiva establecerá, en lugar de obtener, atributos de objeto
    • DN base: Introduzca la ruta al contenedor de usuario de AD. Entramos DC=workspaces, DC=wwco, DC=net
    • Administrador Bind DN: Introduzca la cuenta de administrador/servicio para consultar AD para autenticar usuarios. Entramos workspacessrv@workspaces.wwco.net
    • Confirmar/Contraseña de administrador - introduzca/confirmar la contraseña de administrador/cuenta de servicio
    • Haga clic en Probar conexión de red para garantizar la conexión
    • Atributo de nombre de inicio de sesión del servidor: En el segundo campo debajo de este campo introduzca userPrincipalName
    • OTP Secret - Enter userParameters Este es el objeto LDAP del usuario que se actualizará con la clave que `s usada con hash para generar el código OTP basado en tiempo
  7. Seleccione Crear OTP nativo
  8. Escriba la expresión y truehaga clic en OK OTP nativo

Autenticación OTP nativa

Esta directiva de autenticación LDAP se utiliza para realizar la autenticación del primer factor.

  1. Vaya a Security > AAA-Application Traffic > Policies > Authentication > Advanced Policies > Policy.
  2. Haga clic en Add
  3. Introduzca polldap_notpauth el nombre de la directiva y cambie el tipo de acción a LDAP.
  4. Haga clic Add en Acción
  5. Rellene los campos siguientes:
    • Nombre: Introduzca actldap_notpauth
    • Nombre del servidor/dirección IP: Seleccione un FQDN o una dirección IP para los servidores AD. Entramos 192.0.2.50
    • DN base: Introduzca la ruta al contenedor de usuario de AD. Entramos DC=workspaces, DC=wwco, DC=net
    • Administrador Bind DN: Introduzca la cuenta de administrador/servicio para consultar AD para autenticar usuarios. Entramos workspacessrv@workspaces.wwco.net
    • Confirmar/Contraseña de administrador - introduzca/confirmar la contraseña de administrador/cuenta de servicio
    • Haga clic en Probar conexión de red para garantizar la conexión
    • Atributo de nombre de inicio de sesión del servidor: En el segundo campo debajo de este campo introduzca userPrincipalName
  6. Seleccione Crear OTP nativo
  7. Escriba la expresión y truehaga clic en OK OTP nativo

Para obtener más información, consulte Directivas de autenticación LDAP

Esquemas de Login

Los esquemas de inicio de sesión se utilizan cuando es necesario recopilar datos en nombre de una directiva.

LSchema nativo OTP - Autenticación única

Este esquema de inicio de sesión de registro corresponde a la directiva de registro LDAP.

  1. Vaya a Security > AAA-Application Traffic > Login Schema.
  2. Seleccione la Profile ficha
  3. Haga clic Add en Perfil y nombre prolschema_notpsingle
  4. Haga clic en el icono de lápiz junto a noschema
  5. Haga clic Login Schemay desplácese hacia abajo para seleccionar SingleAuthManageOTP.xmly seleccione el azul Select en la esquina derecha.
  6. Haga clic en Create OTP nativo

LSchema nativo OTP - Autenticación dual

Este esquema de inicio de sesión de registro corresponde a la autenticación de doble factor donde el usuario introduce tanto su contraseña como el código de acceso OTP.

  1. Debajo de la Profile ficha haga clic de Add nuevo
  2. Introduzca el nombre pollschema_notpdual
  3. Haga clic Add en Perfil y también nombre prolschema_notpdual
  4. Haga clic en el icono de lápiz junto a noschema
  5. Haga clic Login Schemay desplácese hacia abajo para seleccionar DualAuth.xmly seleccione el azul Select en la esquina derecha.
  6. Haga clic en More
  7. En el campo Password Credential Index escriba 1
  8. Haga clic en Create OTP nativo

Servidor AAA virtual OTP nativo: Flujo del visualizador

  1. A continuación, vaya a Security > AAA - Application Traffic > nFactor Visualizer > nFactor Flows
  2. Haga clic en Add
  3. Haga clic en el + signo para crear el factor inicial. Este factor no tomará medidas, sino que manejará la dirección del tráfico entrante a flujos de factor de registro o autenticación.
  4. Introduzca y factor0-notphaga clic en Create OTP nativo

Flujo de registro

  1. Seleccione Add Policy
  2. Seleccione Add junto a Select Policy
  3. Introducir nombre polfactor0-notpmanage
  4. Establezca Action Type el NO_AUTHN
  5. Pegar HTTP.REQ.COOKIE.VALUE(“NSC_TASS”).EQ(“manageotp”) para la expresión O compilarla con el generador de expresiones. OTP nativo Opcionalmente, puede limitar el registro a los extremos de la red interna agregando criterios de dirección IP de origen como http.req.cookie.value("NSC_TASS").eq("manageotp") && client.IP.SRC.IN_SUBNET(10.0.0.0/8)
  6. Clic Create, seguido de Add OTP nativo
  7. Seleccione el verde + a la derecha de la polfactor0-notpmanage directiva que acaba de crear
  8. Introduzca y factor1-notpmanagehaga clic en Create OTP nativo
  9. En el cuadro de nuevo factor, seleccione Add Schema
  10. Seleccione y prolschema_notpsinglehaga clic en Ok
  11. Seleccione Add Policy
  12. En la lista desplegable bajo Select Policy Seleccionar y polldap_notpauthhaga clic en Add
  13. Seleccione el verde + a la derecha de la polldap_notpauth directiva
  14. Introduzca y factor2-notpmanagehaga clic en Create OTP nativo
  15. En el cuadro de nuevo factor, seleccione Add Policy
  16. En la lista desplegable bajo Select Policy Seleccionar y polldap_notpmanagehaga clic en Add OTP nativo

Flujo de autenticación

  1. Ahora en el cuadro de factor inicial que creamos factor0-notp, seleccione el +
  2. Seleccione Add junto a Select Policy
  3. Introducir nombre polfactor0-notpauth
  4. Establecer el Action Type en NO_AUTHN
  5. Introducir true para la expresión
  6. Haga clic en Create, seguido de Add Notar que la prioridad de la directiva ha aumentado a 110, lo que significa que solo se ejecutará si la directiva anterior polfactor0-notpmanage en 100 no coincide. OTP nativo
  7. Seleccione el verde + a la derecha de la polfactor0-notpauth directiva que acaba de crear
  8. Introduzca y factor1-notpauthhaga clic en Create
  9. En el cuadro de nuevo factor, seleccione Add Schema
  10. Seleccione y prolschema_notpdualhaga clic en Ok
  11. Seleccione Add Policy
  12. En la lista desplegable bajo Select Policy Seleccionar y polldap_notpauthhaga clic en Add
  13. Seleccione Done OTP nativo

Servidor AAA virtual OTP nativo

Este servidor AAA virtual es donde las directivas y el esquema están enlazados con la prioridad adecuada.

  1. Vaya a Administración de Tráfico > SSL> Certificados > Todos los certificados para comprobar que tiene instalado el certificado de dominio. En este ejemplo POC utilizamos un certificado comodín correspondiente a nuestro dominio de Active Directory. Consulte Certificados SSL de Citrix ADC para obtener más información.
  2. A continuación Security > AAA - Application Traffic > Virtual Servers, vaya a y seleccione Agregar
  3. Introduzca los siguientes campos:
    • Nombre: Un valor único. Entramos nativeotp_authvserver
    • Tipo de dirección IP - Non Addressable
  4. Haga clic en Ok
  5. Seleccione Sin certificado de servidor, seleccione la flecha en Select Server Certificate, seleccione el certificado de dominio, haga clic en Seleccionar, Enlazar y Continuar
  6. En Advanced Authentication Policies, seleccione No Nfactor Flow
  7. Seleccione la flecha derecha debajo Select nFactor Flow, seleccione, haga clic en factor0_notpSelect, haga clic en Bind OTP nativo
  8. Clic Continue, seguido de Done OTP nativo

Directiva de tráfico

Ahora creamos una directiva de tráfico para retransmitir la contraseña LDAP a StoreFront, en lugar del código OTP.

  1. Vaya a Citrix Gateway > Servidores virtuales > Directivas > Tráfico
  2. Seleccione la Traffic Profiles ficha y haga clic en Agregar
  3. Introduzca el nombre notp_trafficprofile
  4. Seleccione HTTP
  5. En la expresión de contraseña de SSO, escriba http.REQ.USER.ATTRIBUTE(1)
  6. Haga clic en Crear OTP nativo
  7. Ahora haga clic en la ficha Directivas de tráfico
  8. En el campo Perfil de solicitud, seleccione el perfil de notp_trafficprofile tráfico que acaba de crear.
  9. Introduzca el nombre nOTP_TrafficPolicy
  10. En el cuadro Express escriba true
  11. Haga clic en Create OTP nativo

Servidor virtual de puerta de enlace

El servidor virtual de puerta de enlace está enlazado al servidor AAA virtual OTP nativo para proporcionar autenticación para Citrix Virtual Apps and Desktops.

  1. Vaya a Citrix Gateway > Virtual Servers.
  2. Seleccione la puerta de enlace actual y haga clic en Edit
  3. Seleccione Perfil de autenticación en el panel Configuración avanzada de la derecha.
  4. Seleccione Add
  5. Introduzca un nombre de perfil. Entramos nativeotp_authprofile
  6. En Directiva, seleccione la flecha y seleccione el servidor AAA virtual OTP nativo nativeotp_authvserver
  7. Haga clic en Create
  8. Seleccione Directivas en el panel Configuración avanzada en el lado derecho
  9. Seleccione el + signo para agregar
  10. En Choose Policy seleccionar Trafficy en Choose Type Seleccionar Request. La selección Continue
  11. Haga clic en la flecha derecha notp_trafficpolicy, seleccione y seleccione OK
  12. Haga clic en Doney guarde la configuración en ejecución OTP nativo

Endpoint de usuario

Ahora probamos el OTP nativo mediante la autenticación en nuestro entorno Citrix Virtual Apps and Desktops.

Registro con la aplicación Citrix SSO

Primero, el usuario registra su dispositivo para Native OTP mediante la aplicación Citrix SSO.

  1. Abra un explorador y navegue hasta el FQDN de dominio administrado por Citrix Gateway con /manageotp anexado al final del FQDN. Usamos https://gateway.workspaces.wwco.net/manageotp
  2. Después de que su explorador sea redirigido a una pantalla de inicio de sesión, introduzca UPN de usuario y contraseña Registro nativo OTP
  3. En la siguiente pantalla seleccione Agregar dispositivo, introduzca un nombre. Usamos iPhone7_nOTP Registro nativo OTP
  4. Seleccione Ir y aparecerá un código QR Registro nativo OTP
  5. En su dispositivo móvil, abra la aplicación Citrix SSO u otra aplicación de autenticación como Microsoft o Google (disponible para su descarga en almacenes de aplicaciones)
  6. Seleccione Agregar nuevo token
  7. Seleccione Escanear código QR Registro nativo OTP
  8. Seleccione Apuntar su cámara al código QR y, una vez capturada, seleccione Agregar Registro nativo OTP
  9. Seleccione Guardar para almacenar el token Registro nativo OTP
  10. El token está activo y comienza a mostrar códigos OTP a intervalos de 30 segundos Registro nativo OTP
  11. Seleccione Listo y verá la confirmación de que el dispositivo se agregó correctamente. Registro nativo OTP

Autenticación, publicación e inicio de Citrix Virtual Apps and Desktops

A continuación, el usuario introduce su UserPrincipalName, Contraseña y el código de acceso OTP desde la aplicación Citrix SSO para acceder a sus aplicaciones virtuales y escritorios.

  1. Abra un explorador y navegue hasta el FQDN de dominio administrado por Citrix Gateway. Usamos https://gateway.workspaces.wwco.net
  2. Después de que su explorador sea redirigido a una pantalla de inicio de sesión, introduzca usuario UserPrincipalName y contraseña
  3. Abra la aplicación Citrix SSO, introduzca el código OTP en el campo de código de acceso de la entrada del iPhone7_nOTP dispositivo Registro nativo OTP
  4. Verifique que las aplicaciones virtuales de los usuarios y los escritorios estén enumerados, e inicie una vez que haya iniciado sesión Registro nativo OTP

Solución de problemas

Aquí nos fijamos en un par de áreas comunes de solución de problemas para Native OTP.

Errores NTP

Al iniciar sesión con su código OTP, la página puede publicar un mensaje aconsejándole que verifique la sincronización NTP. La hora de Citrix ADC debe estar sincronizada para generar el OTP basado en tiempo correcto. Si no ha implementado NTP, siga estos pasos:

Erres de autenticación

  • Cannot complete your request.: Si este mensaje de error se produce después de la autenticación correcta, probablemente indique un error al pasar las credenciales de usuario a StoreFront. Compruebe el esquema de autenticación dual y la configuración de directiva de tráfico. OTP nativo
  • Try again or contact your help desk: Este mensaje de error a menudo indica un error de inicio de sesión LDAP. OTP nativo Si ha verificado que la contraseña es correcta, compruebe que se ha establecido la contraseña de enlace del administrador. Es posible que haya tenido una directiva de autenticación LDAP existente y haya creado la directiva de administración seleccionándola, seguida de agregar. Este paso ahorra tiempo rellenando la configuración existente como Base DN, y es posible que vea que el campo Contraseña de administrador parece estar rellenado, pero DEBE volver a escribir la contraseña. OTP nativo

Resumen

Con Citrix Workspace y Citrix Gateway, las empresas pueden mejorar su postura de seguridad implementando la autenticación multifactor sin complicar la experiencia del usuario. Los usuarios pueden obtener acceso a sus Citrix Virtual Apps and Desktops introduciendo su nombre de usuario de dominio y contraseña, y luego simplemente confirmando su identidad introduciendo una contraseña de One Time desde su aplicación de autenticación registrada.

Referencias

Para obtener más información, consulte:

Autenticación OTP nativa: Encuentre más detalles sobre la implementación nativa de OTP y los casos de uso.

Guía de prueba de concepto: NFactor para Citrix Gateway con autenticación OTP nativa