Guía de prueba de concepto: NFactor para autenticación de Citrix Gateway con extracción de grupo

Introducción

Los entornos de grandes empresas requieren opciones de autenticación flexibles para satisfacer las necesidades de una variedad de personas de usuario. Con la extracción de grupo, la pertenencia al grupo AD de usuario determina el número y el tipo de métodos de autenticación de nFactor que los usuarios deben completar para verificar su identidad y acceder a sus aplicaciones y datos.

Algunos ejemplos de grupos de usuarios incluyen:

  • normal-security group para personas que pueden tener requisitos de seguridad menores por la naturaleza de su trabajo o acceso limitado a los datos y se encuentran dentro de los límites del perímetro de seguridad corporativa. Este grupo solo puede requerir 1 factor.
  • grupo de seguridad elevada para trabajadores o contratistas de terceros que tal vez no hayan realizado comprobaciones de antecedentes y tengan requisitos de seguridad más elevados. Este grupo puede requerir 2 o más factores.
  • grupo de alta seguridad para empleados que realizan trabajos críticos y requieren autorización especial del gobierno o aprobación del sector. Este grupo puede requerir 2 o más factores y verificaciones contextuales, como la dirección IP de origen.

Autentificación de extracción de grupo

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 solo para validar las credenciales de Active Directory si el extremo del usuario se encuentra en una subred privada, lo que indica que están en la intranet corporativa o si son miembros de un grupo AD “VIP”, como un CXO. De lo contrario, se supone que están ubicados fuera del perímetro de la red Enterprise y no son miembros de un grupo con requisitos de seguridad más bajos, y deben completar un segundo factor en forma de introducir una contraseña de una sola vez (OTP) por correo electrónico. Utiliza un escritorio virtual publicado por Citrix Virtual Apps and Desktops para validar la conectividad.

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

  • Citrix ADC instalado y con licencia
  • Citrix Gateway 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
  • Active Directory (AD) está disponible en el entorno
  • Acceso a un servidor SMTP para originar el correo electrónico

Consulte la documentación de Citrix para obtener la versión más reciente del producto y los requisitos de licencia: Extracción de grupo nFactor

Factor nFactor

En primer lugar, iniciamos sesión en la CLI en nuestro Citrix ADC e ingresamos las acciones de autenticación y las directivas asociadas para LDAP y Email respectivamente. Luego iniciamos sesión en nuestra GUI para construir nuestro flujo nFactor en la herramienta de visualización y completar la configuración de autenticación multifactor.

Directivas de autenticación LDAP

Creamos las acciones LDAP y las directivas que las hacen referencia. También creamos la acción Correo electrónico y la directiva que hace referencia a ella, que es el método de autenticación multifactor para usuarios que no son miembros del grupo VIP o en una subred local.

Para Acciones LDAP, rellene los campos necesarios para crear la acción LDAP en una cadena y pegarla en la CLI:

  • ldapAction: Introduzca el nombre de la acción.
  • serverIP: Introduzca el servidor de dominio/s FQDN o la dirección IP.
  • serverPort: Introduzca el puerto LDAP.
  • ldapBase: Introduzca la cadena de objetos de dominio y contenedores donde los usuarios pertinentes se almacenan en su directorio.
  • ldapBindDn: Introduzca la cuenta de servicio utilizada para consultar a los usuarios del dominio.
  • ldapBindDnPassword: Introduzca la contraseña de su cuenta de servicio.
  • ldapLoginName: Introduzca el tipo de objeto de usuario.
  • groupAttrName: Introduzca el nombre del atributo del grupo.
  • subAttributeName: Introduzca el nombre del subatributo.
  • secType - introduzca el tipo de seguridad.
  • ssoNameAttribute: Introduzca el atributo de nombre de inicio de sesión único.
  • defaultAuthenticationGroup: Introduzca el grupo de autenticación predeterminado.
  • alternateEmailAttr: Introduzca el atributo de objeto de dominio de usuario donde se puede recuperar su dirección de correo electrónico.

Para las directivas LDAP, rellene los campos necesarios para hacer referencia a la Acción LDAP en una cadena y péguela en la CLI:

  • Policy: Introduzca el nombre de la directiva.
  • action - introduzca el nombre de la acción de correo electrónico que hemos creado anteriormente.

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

  1. Primero conéctese a la CLI abriendo una sesión SSH a la dirección NSIP de Citrix ADC e inicie sesión como nsroot administrador o usuario administrador equivalente.

Acción LDAP 1 - Authact_GroupExtract_Genf

Actualice los siguientes campos para su entorno y copie y pegue la cadena en la CLI: add authentication ldapAction authAct_GroupExtract_genf -serverIP 192.0.2.50 -ldapBase "OU=Team M,OU=Team Accounts,OU=Demo Accounts,OU=Workspaces Users,DC=workspaces,DC=wwco,DC=net" -ldapBindDn workspacessrv@workspaces.wwco.net -ldapBindDnPassword 123xyz -encrypted -encryptmethod ENCMTHD_3 -ldapLoginName userPrincipalName -groupAttrName memberOf -subAttributeName cn -secType SSL -authentication DISABLED

Directiva LDAP 1 - AuthPol_GroupExtract_Genf

Actualice los siguientes campos para su entorno y copie y pegue la cadena en la CLI: add authentication Policy authPol_GroupExtract_genf -rule true -action authAct_GroupExtract_genf

Extracción de grupo

Directiva LDAP 2A - AuthPol_LdaPonly_Genf

Actualice los siguientes campos para su entorno y copie y pegue la cadena en la CLI: add authentication Policy authPol_LdapOnly_genf -rule "AAA.USER.IS_MEMBER_OF(\"VIP\") || client.IP.SRC.IN_SUBNET(10.0.0.0/8)" -action NO_AUTHN

Directiva LDAP 2B - AuthPol_TwoFactor_Genf

Actualice los siguientes campos para su entorno y copie y pegue la cadena en la CLI: add authentication Policy authPol_TwoFactor_genf -rule "client.IP.SRC.IN_SUBNET(10.0.0.0/8).NOT" -action NO_AUTHN

Acción LDAP 3A - Authact_LDAP_Genf

Actualice los siguientes campos para su entorno y copie y pegue la cadena en la CLI: add authentication ldapAction authAct_Ldap_genf -serverIP 192.0.2.50 -ldapBase "OU=Team M,OU=Team Accounts,OU=Demo Accounts,OU=Workspaces Users,DC=workspaces,DC=wwco,DC=net" -ldapBindDn workspacessrv@workspaces.wwco.net -ldapBindDnPassword 123xyz -encrypted -encryptmethod ENCMTHD_3 -ldapLoginName userPrincipalName -groupAttrName memberOf -subAttributeName cn -secType SSL -passwdChange ENABLED

Directiva LDAP 3A - AuthPol_GroupExtract_Genf

Actualice los siguientes campos para su entorno y copie y pegue la cadena en la CLI: add authentication Policy authPol_Ldap_genf -rule true -action authAct_Ldap_genf

Acción LDAP 3B - Authact_LDAP_EOTP_Genf

Actualice los siguientes campos para su entorno y copie y pegue la cadena en la CLI: add authentication ldapAction authAct_LDAP_eotp_genf -serverIP 192.0.2.50 -serverPort 636 -ldapBase "DC=workspaces,DC=wwco,DC=net" -ldapBindDn workspacessrv@workspaces.wwco.net -ldapBindDnPassword 123xyz -encrypted -encryptmethod ENCMTHD_3 -ldapLoginName userPrincipalName -groupAttrName memberOf -subAttributeName cn -secType SSL -ssoNameAttribute userPrincipalName -defaultAuthenticationGroup Email-OTP -alternateEmailAttr otherMailbox

Directiva LDAP 3B - AuthPol_LDAP_Eotp_Genf

Actualice los siguientes campos para su entorno y copie y pegue la cadena en la CLI: add authentication Policy authPol_LdapEtop_genf -rule true -action authAct_LDAP_eotp_genf

Directiva de autenticación de correo electrónico

Rellene los campos siguientes para crear la acción Correo electrónico y pegue la cadena completada en la CLI:

  • emailAction: Introduzca el nombre de la acción.
  • userName: Introduzca el usuario, o cuenta de servicio, que inicie sesión en el servidor de correo.
  • password: Introduzca la contraseña de su cuenta de servicio para iniciar sesión en el servidor de correo. (La contraseña está cifrada por Citrix ADC de forma predeterminada)
  • serverURL: Introduzca el FQDN o la dirección IP del servidor de correo.
  • content - introduzca el mensaje de usuario junto al campo para introducir el código de correo electrónico.
  • time out - introduzca el número de segundos en que el código de correo electrónico es válido.
  • emailAddress: Introduzca el objeto LDAP que quiere consultar para la dirección de correo electrónico del usuario.

Para la directiva de correo electrónico, rellene los campos necesarios para hacer referencia a la Acción de correo electrónico en una cadena y péguela en la CLI:

  • Policy: Introduzca el nombre de la directiva.
  • action - introduzca el nombre de la acción Correo electrónico

Para obtener más información, consulte Directiva de autenticación OTP de correo electrónico

Acción de correo electrónico 4B - Authact_Email_Eotp_Genf

Actualice los siguientes campos para su entorno y copie y pegue la cadena en la CLI:

add authentication emailAction authAct_Email_eotp_genf -userName workspacessrv@workspaces.wwco.net -password 123xyz -encrypted -encryptmethod ENCMTHD_3 -serverURL "smtps://192.0.2.40:587" -content "Your OTP is $code" -timeout 60 -emailAddress "aaa.user.attribute(\"alternate_mail\")"

Directiva de correo electrónico 4B - AuthPol_Email_Eotp_Genf

Actualice los siguientes campos para su entorno y copie y pegue la cadena en la CLI:

add authentication Policy authPol_Email_eotp_genf -rule true -action authAct_Email_eotp

Esquema de Login

LSchema 1 - lSchema_GroupExtract_Genf

Actualice los siguientes campos para su entorno y copie y pegue la cadena en la CLI: add authentication loginSchema lSchema_GroupExtract_genf -authenticationSchema "/nsconfig/loginschema/LoginSchema/OnlyUsername.xml"

LSchema 2 - CheckAuthType_Genf

El segundo factor no requiere un esquema de inicio de sesión. Solo tiene directivas con expresiones para verificar qué factor hacer a continuación.

LSchema 3A - lSchema_ldapPasswordOnly_Genf

Actualice los siguientes campos para su entorno y copie y pegue la cadena en la CLI: add authentication loginSchema lSchema_LDAPPasswordOnly_genf -authenticationSchema "/nsconfig/loginschema/PrefilUserFromExpr.xml" Aquí puede recibir una advertencia de que http.req.user ha sido reemplazado por aaa.user. Debe modificar el archivo xml desde el cli.

Extracción de grupo

  1. Inicie sesión en la CLI de Citrix ADC
  2. Introduzca shell
  3. Introduzca cd /nsconfig/loginschema/LoginSchema
  4. Escriba ‘vi PrefilUserFromExpr.xml’
  5. Introduzca /http.req
  6. Presione x 8 veces para eliminar la cadena http.req
  7. Presione la tecla de escape
  8. Presione i e enter aaa, presione la tecla de escape de nuevo
  9. Presione la tecla de dos puntos ‘:’, introduzca wq y pulse enter.
  10. TENGA EN CUENTA que puede utilizar este método para modificar otros aspectos del esquema de inicio de sesión, como las solicitudes de campo

lSchema 3B - lSchema_EotpPasswordOnly_Genf

Actualice los siguientes campos para su entorno y copie y pegue la cadena en la CLI: add authentication loginSchema lSchema_EOTPPasswordOnly_genf -authenticationSchema "/nsconfig/loginschema/PrefilUserFromExpr.xml"

NOTA: El factor 3B también utiliza el esquema PrefilUserFromExpr.xml, pero etiquetamos la directiva de manera diferente para la ruta EOTP.

LSchema 4B - EOTP_Genf

El cuarto factor no requiere un esquema de inicio de sesión. Genera el correo electrónico con el código de acceso de una sola vez.

Factor nFactor

  1. Inicie sesión en la GUI de Citrix ADC
  2. 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.
  3. A continuación, vaya a Security > AAA - Application Traffic > nFactor Visualizer > nFactor Flows
  4. Seleccione Agregar y seleccione el signo más en el cuadro Factor

Visualizador

Factor1_GroupExtract_genf

  1. Introduzca Factor1_GroupExtract_genf y seleccione crear Extracción de grupo
  2. Seleccionar Agregar esquema
  3. Seleccione el esquema de inicio de sesión LSchema_GroupExtract_Genf
  4. Seleccionar Aceptar
  5. En el mismo cuadro, seleccione Agregar directiva
  6. Seleccione la directiva LDAP authPol_GroupExtract_genf
  7. Seleccione Agregar
  8. Seleccione el signo más verde junto a la authPol_GroupExtract_genf directiva para crear otro factor

Factor2_CheckAuthType_genf

  1. Introduzca Factor2_CheckAuthType_genf este factor se utiliza para verificar los requisitos de autenticación
  2. Seleccione Crear
  3. En el mismo cuadro, seleccione Agregar directiva
  4. Seleccione authPol_LdapOnly_genf
  5. En Ir a expresión, seleccione END
  6. Seleccione Agregar Extracción de grupo
  7. Seleccione el signo más azul debajo de la authPol_LdapOnly_genf directiva para agregar una segunda directiva
  8. Seleccione la directiva authPol_TwoFactor_genf
  9. Introduzca 90 para la Prioridad Aquí hacemos que la directiva de dos factores se produzca antes de la directiva de solo LDAP bajando la prioridad a 90, que es menor que el valor predeterminado de 100. Esto garantiza que los usuarios remotos del grupo VIP se identifiquen solo para la autenticación LDAP.
  10. Seleccione Agregar

Factor3A_LDAPPasswordAuth_genf

  1. Volver junto a la authPol_GroupExtract_genf directiva, seleccione el signo más verde para crear otro factor
  2. Introduzca Factor3A_LDAPPasswordAuth_genf
  3. Seleccione Crear
  4. En el mismo cuadro, seleccione Agregar directiva
  5. Seleccione authPol_Ldap_genf
  6. En Ir a expresión, seleccione END
  7. Seleccione Agregar
  8. Seleccionar Agregar esquema
  9. Seleccione el esquema de inicio de sesión lSchema_LDAPPasswordOnly_genf
  10. Seleccionar Aceptar

Factor3B_EOTPPasswordAuth_genf

  1. Volver junto a la authPol_TwoFactor_genf directiva, seleccione el signo más verde para crear otro factor
  2. Introduzca Factor3B_EOTPPasswordAuth_genf
  3. Seleccione Crear
  4. En el mismo cuadro, seleccione Agregar directiva
  5. Seleccione authPol_LdapEtop_genf
  6. Seleccione Agregar
  7. Seleccionar Agregar esquema
  8. Seleccione el esquema de inicio de sesión lSchema_EOTPPasswordOnly_genf
  9. Seleccionar Aceptar

Factor4B_EOTP_genf

  1. Junto a la authPol_LdapEtop_genf directiva, seleccione el signo más verde para crear otro factor
  2. Introduzca Factor4B_EOTP_genf
  3. Seleccione Crear
  4. En el mismo cuadro, seleccione Agregar directiva
  5. Seleccione authPol_Email_eotp_genf
  6. Seleccione Agregar
  7. Seleccione Listo y el flujo de nFactor está completo Extracción de grupo

Servidor virtual de autenticación, autorización y auditoría de Citrix ADC (Citrix ADC AAA)

  1. A continuación, vaya a Seguridad > AAA - Tráfico de aplicaciones > Servidores virtuales y seleccione Agregar
  2. Introduzca los siguientes campos y haga clic en Aceptar:
    • Nombre: Un valor único. Entramos GroupExtraction_AuthVserver
    • Tipo de dirección IP - Non Addressable
  3. Seleccione Sin certificado de servidor, seleccione el certificado de dominio, haga clic en Seleccionar, Enlazar y Continuar
  4. Seleccionar sin nFactor de flujo
  5. En Seleccionar nFactor de flujo, haga clic en la flecha derecha, seleccione el Factor1_GroupExtract_genf flujo creado anteriormente
  6. Haga clic en Seleccionar, seguido de Enlazar, seguido de Continuar Extracción de grupo

Citrix Gateway: Servidor virtual

  1. A continuación, vaya a Citrix Gateway > Servidores virtuales
  2. Seleccione el servidor virtual existente que proporcione acceso proxy al entorno de Citrix Virtual Apps and Desktops
  3. Seleccione Modificar
  4. Si actualmente tiene una directiva LDAP enlazada, navegue bajo Autenticación básica - Autenticación primaria, seleccione Directiva LDAP. A continuación, compruebe la directiva, seleccione Desenlazar, seleccione Sí para confirmar y seleccione Cerrar
  5. En el menú Configuración avanzada de la derecha seleccione Perfil de autenticación
  6. Seleccione Agregar
  7. Escriba un nombre. Entramos GroupExtract_AuthProfile
  8. En Servidor virtual Autenticación, haga clic en la flecha derecha y seleccione el servidor virtual Citrix ADC AAA que hemos creado GroupExtraction_AuthVserver
  9. Haga clic en Seleccionar y Crear
  10. Haga clic en Aceptar y compruebe que el servidor virtual tiene seleccionado un perfil de autenticación mientras se ha quitado la directiva de autenticación básica. Extracción de grupo
  11. Haga clic en Hecho

Endpoint de usuario

En primer lugar, probamos si la autenticación de un factor se aplica a los usuarios VIP mediante la autenticación en nuestro entorno Citrix Virtual Apps and Desktops.

  1. Abra un explorador y navegue hasta el FQDN de dominio administrado por Citrix Gateway. Usamos https://gateway.workspaces.wwco.net Extracción de grupo
  2. Después de que su explorador sea redirigido a una pantalla de inicio de sesión. Primero escriba un nombre de usuario. Utilizamos wsvipuser@workspaces.wwco.net Este usuario debe ser miembro del grupo AD VIP
  3. nFactor determina que el usuario es miembro del grupo VIP y se le pedirá que envíe la contraseña de usuario. Extracción de grupo
  4. Ahora el usuario ha iniciado sesión en su página Workspace.
  5. Seleccione un escritorio virtual y verifique el inicio. Extracción de grupo

Ahora probamos la autenticación de dos factores con Email OTP al autenticarnos nuevamente en nuestro entorno Citrix Virtual Apps and Desktops.

  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. Primero escriba un nombre de usuario. Usamos wsuser@workspaces.wwco.net Extracción de grupo
  3. nFactor determina que el usuario no es local, ni miembro del grupo VIP, se le pedirá que envíe la contraseña de usuario. Extracción de grupo
  4. A continuación, el factor nFactor presenta un formulario solicitando el código OTP. Copiamos y pegamos el código de la cuenta de wsuser correo electrónico. Extracción de grupo
  5. Ahora el usuario ha iniciado sesión en su página Workspace.
  6. Seleccione un escritorio virtual y verifique el inicio. Extracción de grupo

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. La extracción de grupo permite a las empresas personalizar la profundidad de su uso multifactor, junto con la autenticación contextual, de acuerdo con los requisitos de persona del grupo de usuarios.

Referencias

Para obtener más información, consulte:

Comandos de Citrix ADC to Find the Policy Hits for Citrix Gateway Session Policies: Obtenga más información sobre los comandos de CLI, como nsconmsg -d current -g _hits realizar un seguimiento de directivas hits para ayudar a solucionar problemas.

nFactor para autenticación de Citrix Gateway con OTP de correo electrónico: Aprenda a implementar un enfoque extensible y flexible para configurar la autenticación multifactor con nFactor para la autenticación de Citrix Gateway con contraseña de un solo uso de correo electrónico.

Guía de prueba de concepto: NFactor para autenticación de Citrix Gateway con extracción de grupo