Citrix ADC

Autenticación de dos factores para usuarios del sistema y usuarios externos

La autenticación de dos factores es un mecanismo de seguridad en el que un dispositivo Citrix ADC autentica a un usuario del sistema en dos niveles de autenticación. El dispositivo concede acceso al usuario solo después de la validación correcta de las contraseñas por ambos niveles de autenticación. Si un usuario se autentica localmente, el perfil de usuario debe crearse en la base de datos de Citrix ADC. Si el usuario se autentica externamente, entonces, el nombre de usuario y la contraseña deben coincidir con la identidad de usuario registrada en el servidor de autenticación externo.

Nota La

función de autenticación de dos factores solo funciona a partir de Citrix ADC 12.1 compilación 51.16 en adelante.

Cómo funciona la autenticación de dos factores

Considere un usuario que intenta iniciar sesión en un dispositivo Citrix ADC. El servidor de aplicaciones solicitado envía el nombre de usuario y la contraseña al primer servidor de autenticación externo (RADIUS, TACACS, LDAP o AD). Una vez validados el nombre de usuario y la contraseña, se le pedirá un segundo nivel de autenticación. Ahora el usuario puede proporcionar la segunda contraseña. Solo si ambas contraseñas son correctas, el usuario puede acceder al dispositivo Citrix ADC. El siguiente diagrama es una ilustración de cómo funciona la autenticación de dos factores para un dispositivo Citrix ADC.

Autenticación de dos factores

Los siguientes son los diferentes casos de uso para configurar la autenticación de dos factores para los usuarios externos y del sistema.

Puede configurar la autenticación de dos factores en un dispositivo Citrix ADC de diferentes maneras. A continuación se presentan los diferentes casos de configuración para la autenticación de dos factores en un dispositivo Citrix ADC.

  1. Autenticación de dos factores (2FA) en Citrix ADC, GUI, CLI, API y SSH.
  2. Autenticación externa habilitada y autenticación local inhabilitada para los usuarios del sistema.
  3. Autenticación externa habilitada con autenticación local basada en directivas para los usuarios del sistema.
  4. Autenticación externa inhabilitada para usuarios del sistema con autenticación local habilitada.
  5. Autenticación externa habilitada y autenticación local habilitada para los usuarios del sistema.
  6. Autenticación externa habilitada para usuarios LDAP seleccionados

Caso de uso 1: Autenticación de dos factores (2FA) en las interfaces de Citrix ADC, GUI, CLI, API y SSH

La autenticación de dos factores está habilitada y está disponible en todos los accesos de administración de Citrix ADC para GUI, API y SSH.

Caso de uso 2: Autenticación de dos factores admitida en servidores de autenticación externos como LDAP, RADIUS, Active Directory y TACACS

Puede configurar la autenticación de dos factores en los siguientes servidores de autenticación externos para la autenticación de usuario de primer nivel y segundo nivel.

  • RADIUS
  • LDAP
  • Active Directory
  • TACACS

Caso de uso 3: Autenticación externa habilitada y autenticación local inhabilitada para los usuarios del sistema

Para iniciar el proceso de autenticación, habilite la opción de autenticación externa e inhabilite la autenticación local para los usuarios del sistema.

Autenticación externa habilitada y autenticación local inhabilitada para usuarios del sistema

Complete los siguientes pasos mediante la interfaz de línea de comandos:

  1. Agregar acción de autenticación para la directiva LDAP
  2. Agregar directiva de autenticación para directiva LDAP
  3. Agregar acción de autenticación para la directiva RADIUS
  4. Agregar directiva de autenticación para la directiva RADIUS
  5. Agregar esquema de inicio de sesión de autenticación
  6. Agregar y vincular la etiqueta de directiva de autenticación al servidor RADIUS
  7. Enlazar autenticación global del sistema para la directiva LDAP
  8. Inhabilitar la autenticación local en el parámetro del sistema

Agregar acción de autenticación para el servidor LDAP (autenticación de primer nivel)

En el símbolo del sistema, escriba:

add authentication ldapaction <ldap action name> -serverip <IP> -ldapbase <> -ldapbinddn <binddn name> -ldapbinddnpassword <password>-ldaploginname <loginname> -groupattrname <grp attribute name> -subAttributename <string>-ssoNameAttribute <string>

Ejemplo:

add authentication ldapaction ldapact1 -serverip 1.1.1.1 -ldapbase base -ldapbindDn name -ldapbindDNpassword password -ldapLoginName name -groupAttrName name -subAttributeName name -ssoNameAttribute name

Agregar directiva de autenticación para el servidor LDAP (autenticación de primer nivel)

En el símbolo del sistema, escriba: add authentication policy <ldap policy name> -rule true -action <ldap action name>

Ejemplo: add authentication policy pol1 -rule true -action ldapact1

Agregar acción de autenticación para el servidor RADIUS (autenticación de segundo nivel)

En el símbolo del sistema, escriba:

add authentication radiusaction <rad action name> -serverip <rad server ip> -radkey <key> -radVendorID <ID >-radattributetype <rad attribute type>

Ejemplo:

add authentication radiusaction radact1 -serverip 1.1.1.1 -radkey 123 -radVendorID 1234 -radAttributeType 2

Agregar directiva de autenticación para el servidor RADIUS (autenticación de segundo nivel)

En el símbolo del sistema, escriba:

add authentication policy <radius policy name> -rule true -action <rad action name>

Ejemplo:

add authentication policy radpol11 -rule true -action radact1

Agregar esquema de inicio de sesión de autenticación

Puede utilizar el esquema de inicio de sesión “SingleAuth.xml” para que los usuarios del sistema proporcionen la segunda contraseña para el dispositivo Citrix ADC. En el símbolo del sistema, escriba:

add authentication loginSchema <login schema name> -authenticationSchema LoginSchema/SingleAuth.xml

Ejemplo:

add authentication loginSchema radschema -authenticationSchema LoginSchema/SingleAuth.xml

Agregar y vincular la etiqueta de directiva de autenticación al servidor RADIUS

En el símbolo del sistema, escriba:

add authentication policylabel <labelName> [-type ( AAATM_REQ | RBA_REQ )] [-comment <string>][-loginSchema <string>]

bind authentication policylabel <labelName> -policyName <string> -priority <positive_integer> [-gotoPriorityExpression <expression>][-nextFactor <string>]

Ejemplo:

add authentication policylabel label1 -type RBA_REQ -loginSchema radschema

bind authentication policylabel label1 -policyName radpol11 -priority 1

Sistema de autenticación de enlace global para la directiva LDAP

En el símbolo del sistema, escriba:

bind system global ldappolicy -priority <priority> -nextFactor <policy label name>

Ejemplo:

bind system global pol11 -priority 1 -nextFactor label1

Inhabilitar la autenticación local en el parámetro del sistema

En el símbolo del sistema, escriba:

set system parameter -localauth disabled

Caso de uso 4: Autenticación externa habilitada para el usuario del sistema con directiva de autenticación local adjunta

En este caso, el usuario puede iniciar sesión en el dispositivo mediante autenticación de dos factores con evaluación de directivas de autenticación local en el segundo nivel de identificación de usuario.

Autenticación externa habilitada para usuarios del sistema con directiva de autenticación local adjunta

Complete los pasos siguientes mediante la interfaz de línea de comandos.

  1. Agregar acción de autenticación para el servidor LDAP
  2. Agregar directiva de autenticación para directiva LDAP
  3. Agregar directiva de autenticación local
  4. Agregar etiqueta de directiva de autenticación
  5. Enlazar la directiva LDAP como sistema global
  6. Inhabilitar la autenticación local en el parámetro del sistema

Agregar acción de autenticación para el servidor LDAP (autenticación de primer nivel)

En el símbolo del sistema, escriba:

add authentication ldapaction <ldap action name> -serverip <IP> -ldapbase <> -ldapbinddn <binddn name> -ldapbinddnpassword <password>-ldaploginname <loginname> -groupattrname <grp attribute name> -subAttributename <string>-ssoNameAttribute <string>

Ejemplo:

add authentication ldapaction ldapact1 -serverip 1.1.1.1 -ldapbase base -ldapbindDn name -ldapbindDNpassword password -ldapLoginName name -groupAttrName name -subAttributeName name -ssoNameAttribute name –ssoNameAttribute name

Agregar directiva de autenticación para el servidor LDAP (autenticación de primer nivel)

En el símbolo del sistema, escriba:

add authentication policy <ldap policy name> -rule true -action <ldap action name>

Ejemplo:

add authentication ldapaction ldapact1 -serverip 1.1.1.1 -ldapbase base -ldapbindDn name -ldapbindDNpassword password -ldapLoginName name -groupAttrName name -subAttributeName name -ssoNameAttribute name

Agregar directiva de autenticación local para usuarios del sistema (autenticación de segundo nivel)

En el símbolo del sistema, escriba:

add authentication radiusaction <rad action name> -serverip <rad server ip> -radkey <key> -radVendorID <ID >-radattributetype <rad attribute type

Ejemplo:

add authentication radiusaction radact1 -serverip 1.1.1.1 -radkey 123 -radVendorID 1234 -radAttributeType 2

Agregar y enlazar etiqueta de directiva de autenticación

En el símbolo del sistema, escriba:

add authentication policylabel <labelName> [-type ( AAATM_REQ | RBA_REQ )] [-comment <string>][-loginSchema <string>] bind authentication policylabel <labelName> -policyName <string> -priority <positive_integer> [-gotoPriorityExpression <expression>][-nextFactor <string>]

Ejemplo:

add authentication policylabel label1 -type RBA_REQ -loginSchema radschema bind authentication policylabel label1 -policyName radpol11 -priority 1 -gotoPriorityExpression NEXT

Inhabilitar la autenticación local en el parámetro del sistema

En el símbolo del sistema, escriba:

set system parameter -localauth disabled

Caso de uso 5: Autenticación externa inhabilitada y autenticación local habilitada para el usuario del sistema

Si el usuario tiene “externalAuth” inhabilitado, este usuario no existe en el servidor de autenticación. El usuario no se autentica con el servidor de autenticación externo aunque exista un usuario con el mismo nombre de usuario en el servidor autenticado externo. El usuario se autentica localmente.

Autenticación externa inhabilitada y autenticación local habilitada para el usuario

Para habilitar la contraseña de usuario del sistema e inhabilitar la autenticación externa

En el símbolo del sistema, escriba lo siguiente:

add system user <name> <password> -externalAuth DISABLED

Ejemplo:

add system user user1 password1 –externalAuth DISABLED

Caso de uso 6: Autenticación externa habilitada y autenticación local habilitada para usuarios del sistema

Para configurar el dispositivo para autenticar a los usuarios del sistema mediante una contraseña local. Si esta autenticación falla, el usuario se autentica mediante una contraseña de autenticación externa en los servidores de autenticación externos en dos niveles.

Autenticación externa habilitada y autenticación local habilitada para usuarios del sistema

Configure los pasos siguientes mediante la CLI.

  1. Agregar acción de autenticación para el servidor LDAP
  2. Agregar directiva de autenticación para directiva LDAP
  3. Agregar acción de autenticación para la directiva RADIUS
  4. Agregar directiva de autenticación para la directiva RADIUS
  5. Agregar esquema de inicio de sesión de autenticación
  6. Agregar etiqueta de directiva de autenticación
  7. Etiqueta de directiva de autenticación de enlace para el esquema de inicio de sesión
  8. Sistema de autenticación de enlace global para la directiva RADIUS
  9. Sistema de autenticación de enlace global para la directiva LDAP

Agregar acción de autenticación para el servidor LDAP

En el símbolo del sistema, escriba:

add authentication ldapaction <ldap action name> -serverip <IP> -ldapbase <> -ldapbinddn <binddn name> -ldapbinddnpassword <password>-ldaploginname <loginname> -groupattrname <grp attribute name> -subAttributename <>-ssoNameAttribute <>

Ejemplo:

add authentication ldapaction ldapact1 -serverip 1.1.1.1 -ldapbase base -ldapbindDn name -ldapbindDNpassword password -ldapLoginName name -groupAttrName name -subAttributeName name -ssoNameAttribute name

Agregar directiva de autenticación para directiva LDAP

En el símbolo del sistema, escriba:

add authentication policy <policy name> --rule true -action <ldap action name>

Ejemplo:

add authentication policy pol1 -rule true -action ldapact1

Agregar acción de autenticación para el servidor RADIUS

En el símbolo del sistema, escriba:

add authentication radiusaction <rad action name> -serverip <rad server ip> -radkey <key> -radVendorID <ID >-radattributetype <rad attribute type>

Ejemplo:

add authentication radiusaction radact1 -serverip 1.1.1.1 -radkey 123 -radVendorID 1234 -radAttributeType 2

Agregar directiva de autenticación avanzada para el servidor RADIUS

En el símbolo del sistema, escriba:

add authentication policy <policy name> -rule true -action <rad action name>

Ejemplo:

add authentication policy radpol11 -rule true -action radact1

Agregar esquema de inicio de sesión de autenticación

Puede utilizar el esquema de inicio de sesión SingleAuth.xml para mostrar la página de inicio de sesión y autenticar al usuario del sistema en la autenticación de segundo nivel.

En el símbolo del sistema, escriba:

add authentication loginSchema <name> -authenticationSchema <string>

Ejemplo:

add authentication loginSchema radschema -authenticationSchema LoginSchema/SingleAuth.xml

Agregar y vincular la etiqueta de directiva de autenticación a la directiva de autenticación RADIUS para el inicio de sesión del usuario

En el símbolo del sistema, escriba:

add authentication policylabel <labelName> [-type ( AAATM_REQ | RBA_REQ )] [-comment <string>][-loginSchema <string>]

Ejemplo:

add authentication policylabel label1 -type RBA_REQ -loginSchema radschema bind authentication policylabel <labelName> -policyName <string> -priority <positive_integer> [-gotoPriorityExpression <expression>][-nextFactor <string>]

Ejemplo:

bind authentication policylabel label1 -policyName rad pol11 -priority 1

Directiva de autenticación de enlace global

En el símbolo del sistema, escriba:

bind system global [<policyName> [-priority <positive_integer>] [-nextFactor <string>] [-gotoPriorityExpression <expression>]]

Ejemplo:

bind system global radpol11 -priority 1 -nextFactor label11

Caso de uso 7: Autenticación externa habilitada solo para usuarios externos seleccionados

Para configurar usuarios externos selectivos con autenticación de dos factores según el filtro de búsqueda configurado en la acción LDAP mientras que otros usuarios del sistema se autentican mediante autenticación de factor único.

Configure los pasos siguientes mediante la CLI.

  1. Agregar acción de autenticación para el servidor LDAP
  2. Agregar directiva de autenticación para directiva LDAP
  3. Agregar acción de autenticación para la directiva RADIUS
  4. Agregar directiva de autenticación para la directiva RADIUS
  5. Agregar esquema de inicio de sesión de autenticación
  6. Agregar etiqueta de directiva de autenticación
  7. Etiqueta de directiva de autenticación de enlace para el esquema de inicio de sesión
  8. Sistema de autenticación de enlace global para la directiva RADIUS

Agregar acción de autenticación para el servidor LDAP

En el símbolo del sistema, escriba:

add authentication ldapaction <ldap action name> -serverip <IP> -ldapbase <> -ldapbinddn <binddn name> -ldapbinddnpassword <password>-ldaploginname <loginname> -groupattrname <grp attribute name> -subAttributename <>-ssoNameAttribute <>

Ejemplo:

add authentication ldapaction ldapact1 -serverip 1.1.1.1 -ldapbase base -ldapbindDn name -ldapbindDNpassword password -ldapLoginName name -groupAttrName name -subAttributeName name -ssoNameAttribute name

Agregar directiva de autenticación para directiva LDAP

En el símbolo del sistema, escriba:

add authentication policy <policy name> --rule true -action <ldap action name>

Ejemplo:

add authentication policy pol1 -rule true -action ldapact1

Agregar acción de autenticación para el servidor RADIUS

En el símbolo del sistema, escriba:

add authentication radiusaction <rad action name> -serverip <rad server ip> -radkey <key> -radVendorID <ID >-radattributetype <rad attribute type>

Ejemplo:

add authentication radiusaction radact1 -serverip 1.1.1.1 -radkey 123 -radVendorID 1234 -radAttributeType 2

Agregar directiva de autenticación avanzada para el servidor RADIUS

En el símbolo del sistema, escriba:

add authentication policy <policy name> -rule true -action <rad action name>

Ejemplo:

add authentication policy radpol11 -rule true -action radact1

Agregar esquema de inicio de sesión de autenticación

Puede utilizar el esquema de inicio de sesión SingleAuth.xml para proporcionar la página de inicio de sesión para que el dispositivo autentique a un usuario del sistema en un segundo nivel de autenticación.

En el símbolo del sistema, escriba:

add authentication loginSchema <name> -authenticationSchema <string>

Ejemplo:

add authentication loginSchema radschema -authenticationSchema LoginSchema/SingleAuth.xml

Agregar y vincular la etiqueta de directiva de autenticación a la directiva de autenticación RADIUS para el inicio de sesión del usuario

En el símbolo del sistema, escriba:

add authentication policylabel <labelName> [-type ( AAATM_REQ | RBA_REQ )] [-comment <string>][-loginSchema <string>]

Ejemplo:

add authentication policylabel label1 -type RBA_REQ -loginSchema radschema bind authentication policylabel <labelName> -policyName <string> -priority <positive_integer> [-gotoPriorityExpression <expression>][-nextFactor <string>]

Ejemplo:

bind authentication policylabel label1 -policyName radpol11 -priority

Directiva de autenticación de enlace global

En el símbolo del sistema, escriba:

bind system global [<policyName> [-priority <positive_integer>] [-nextFactor <string>] [-gotoPriorityExpression <expression>]]

Ejemplo:

bind system global radpol11 -priority 1 -nextFactor label11

Para configurar sin autenticación de dos factores para usuarios de grupos mediante el filtro de búsqueda:

  1. Agregar acción de autenticación para el servidor LDAP
  2. Agregar directiva de autenticación para el servidor LDAP
  3. Sistema de autenticación de enlace global para el servidor LDAP

Agregar acción de autenticación para el servidor LDAP

En el símbolo del sistema, escriba:

add authentication ldapaction <ldap action name> -serverip <IP> -ldapbase <> -ldapbinddn <binddn name> -ldapbinddnpassword <password>-ldaploginname <loginname> -groupattrname <grp attribute name> -subAttributename <>-searchFilter<>

Ejemplo:

add authentication ldapaction ldapact1 -serverip 1.1.1.1 -ldapbase base -ldapbindDn name -ldapbindDNpassword password -ldapLoginName name -groupAttrName name -subAttributeName name - searchFilter "memberOf=CN=grp4,CN=Users,DC=aaatm-test,DC=com"

Agregar directiva de autenticación para el servidor LDAP

En el símbolo del sistema, escriba:

add authentication policy <policy name> --rule true -action <ldap action name>

Ejemplo:

add authentication policy pol1 -rule true -action ldapact1

Sistema de autenticación de enlace global para la directiva LDAP

En el símbolo del sistema, escriba:

bind system global ldappolicy -priority <priority> -nextFactor <policy label name>

Ejemplo:

bind system global pol11 -priority 1 -nextFactor label11

Mostrar mensaje de solicitud personalizado para la autenticación de dos factores

Al configurar el campo de contraseña de dos factores con el archivo SingleAuth.xml en /flash/nsconfig/loginschema/LoginSchema

A continuación se presenta el fragmento de un archivo SingleAuth.xml donde ‘SecondPassword: ‘es el segundo nombre de campo de contraseña que se solicita al usuario que introduzca una segunda contraseña.

<?xml version="1.0" encoding="UTF-8"?>
<AuthenticateResponse xmlns="http://citrix.com/authentication/response/1">
<Status>success</Status>
<Result>more-info</Result>
<StateContext/>
<AuthenticationRequirements>
<PostBack>/nf/auth/doAuthentication.do</PostBack>
<CancelPostBack>/nf/auth/doLogoff.do</CancelPostBack>
<CancelButtonText>Cancel</CancelButtonText>
<Requirements>
<Requirement><Credential><ID>login</ID><SaveID>ExplicitForms-Username</SaveID><Type>username</Type></Credential><Label><Text>singleauth_user_name</Text><Type>nsg-login-label</Type></Label><Input><AssistiveText>singleauth_please_supply_either_domain\username_or_user@fully.qualified.domain</AssistiveText><Text><Secret>false</Secret><ReadOnly>false</ReadOnly><InitialValue/><Constraint>.+</Constraint></Text></Input></Requirement>
<Requirement><Credential><ID>passwd</ID><SaveID>ExplicitForms-Password</SaveID><Type>password</Type></Credential><Label><Text>SecondPassword:</Text><Type>nsg-login-label</Type></Label><Input><Text><Secret>true</Secret><ReadOnly>false</ReadOnly><InitialValue/><Constraint>.+</Constraint></Text></Input></Requirement>
<Requirement><Credential><Type>none</Type></Credential><Label><Text>singleauth_first_factor</Text><Type>nsg_confirmation</Type></Label><Input/></Requirement>
<Requirement><Credential><ID>saveCredentials</ID><Type>savecredentials</Type></Credential><Label><Text>singleauth_remember_my_password</Text><Type>nsg-login-label</Type></Label><Input><CheckBox><InitialValue>false</InitialValue></CheckBox></Input></Requirement>
<Requirement><Credential><ID>loginBtn</ID><Type>none</Type></Credential><Label><Type>none</Type></Label><Input><Button>singleauth_log_on</Button></Input></Requirement>
</Requirements>
</AuthenticationRequirements>
</AuthenticateResponse>
<!--NeedCopy-->

Configuración de la autenticación de dos factores mediante la GUI de Citrix ADC

  1. Inicie sesión en el dispositivo Citrix ADC.
  2. Vaya a Sistema > Autenticación > Directivas avanzadas > Directiva.
  3. Haga clic en Agregar para crear la directiva de autenticación de primer nivel.
  4. En la página Crear directiva de autenticación, establezca los siguientes parámetros.
    1. Name. Nombre de la directiva
    2. Tipo de acción. Seleccione el tipo de acción como LDAP, Active Directory, RADIUS, TACACS, etc.
    3. Acción. La acción de autenticación (perfil) que se va a asociar con la directiva. Puede elegir una acción de autenticación existente o hacer clic en el signo más y crear una acción del tipo adecuado.
    4. Expresión. Proporcione una expresión de directiva avanzada.
  5. Haga clic en Crear y, a continuación, en Cerrar.
    1. Expresión. Proporcione una expresión de directiva avanzada.
  6. Haga clic en Crear.
  7. Haga clic en Agregar para crear la directiva de autenticación de segundo nivel.
  8. En la página Crear directiva de autenticación, establezca los siguientes parámetros
    1. Name. Nombre de la directiva
    2. Tipo de acción. Seleccione el tipo de acción como LDAP, Active Directory, RADIUS, TACACS, etc.
    3. Acción. La acción de autenticación (perfil) que se va a asociar con la directiva. Puede elegir una acción de autenticación existente o hacer clic en el icono + para crear una acción del tipo adecuado.
    4. Expresión. Proporcionar una expresión de directiva avanzada
  9. Haga clic en Crear y, a continuación, en Cerrar.
    1. Expresión. Proporcione una expresión de directiva avanzada.
  10. Haga clic en Crear.
  11. En la página Directivas de autenticación, haga clic en Enlace global.
  12. En la página Crear enlace de directiva de autenticación global, seleccione la directiva de autenticación de primer nivel y haga clic en Agregar enlace.
  13. En la página Enlace de directivas, seleccione la directiva de autenticación y establezca el siguiente parámetro de enlace de directivas.
    1. Siguiente factor. Seleccione la etiqueta de directiva de autenticación de segundo nivel.
  14. Haga clic en Aceptar y Cerrar.

    Configuración de GUI para la autenticación de dos factores para usuarios del sistema

  15. Haga clic en Done.
  16. Inicie sesión en el dispositivo Citrix ADC para la autenticación de segundo nivel. Ahora el usuario puede proporcionar la segunda contraseña. Solo si ambas contraseñas son correctas, el usuario puede acceder al dispositivo Citrix ADC.

Nota

El TACACS configurado para una autenticación de segundo factor no admite la autorización y la contabilidad, incluso si lo habilita en el comando “TacacsAction”. El segundo factor se utiliza únicamente para el propósito de autenticación.

Consulte también Autenticación de dos factores en el tema Autenticación nFactor de Citrix ADC .