Cómo Citrix ADC implementa Kerberos para la autenticación de clientes
Importante
La autenticación Kerberos/NTLM solo se admite en la versión NetScaler 9.3 nCore o posterior, y solo se puede utilizar para la autenticación, autorización y auditoría de servidores virtuales de administración de tráfico.
Citrix ADC maneja los componentes involucrados en la autenticación Kerberos de la siguiente manera:
Centro de distribución de claves (KDC)
En Windows 2000 Server o versiones posteriores, el controlador de dominio y el KDC forman parte de Windows Server. Si Windows Server está UP y en ejecución, indica que el controlador de dominio y el KDC están configurados. El KDC es también el servidor de Active Directory.
Nota
Todas las interacciones Kerberos se validan con el controlador de dominio Kerberos de Windows.
Servicio de autenticación y negociación de protocolos
Un dispositivo Citrix ADC admite la autenticación Kerberos en los servidores virtuales de autenticación de administración de tráfico, autorización y auditoría. Si falla la autenticación Kerberos, Citrix ADC utiliza la autenticación NTLM.
De forma predeterminada, Windows 2000 Server y versiones posteriores de Windows Server utilizan Kerberos para la autenticación, la autorización y la auditoría. Si crea una directiva de autenticación con NEGOCIATE como tipo de autenticación, Citrix ADC intenta utilizar el protocolo Kerberos para la autenticación, autorización y auditoría y, si el explorador del cliente no recibe un tíquet Kerberos, Citrix ADC utiliza la autenticación NTLM. Este proceso se conoce como negociación.
El cliente puede no recibir un tíquet Kerberos en cualquiera de los siguientes casos:
- Kerberos no es compatible con el cliente.
- Kerberos no está habilitado en el cliente.
- El cliente está en un dominio distinto del KDC.
- El directorio de acceso del KDC no es accesible para el cliente.
Para la autenticación Kerberos/NTLM, Citrix ADC no utiliza los datos que están presentes localmente en el dispositivo Citrix ADC.
Autorización
El servidor virtual de administración de tráfico puede ser un servidor virtual de equilibrio de carga o un servidor virtual de conmutación de contenido.
Auditorías
El dispositivo Citrix ADC admite la auditoría de la autenticación Kerberos con el siguiente registro de auditoría:
- Seguimiento completo de auditoría de la actividad de usuario final de administración de tráfico
- Registro de SYSLOG y TCP de alto rendimiento
- Seguimiento completo de auditoría de los administradores del sistema
- Todos los eventos del sistema
- Formato de registro que permite ejecutar scripts
Entorno soportado
La autenticación Kerberos no necesita ningún entorno específico en Citrix ADC. El cliente (explorador) debe proporcionar soporte para la autenticación Kerberos.
Alta disponibilidad
En una configuración de alta disponibilidad, solo el dispositivo Citrix ADC activo se une al dominio. En caso de una conmutación por error, el demonio Citrix ADC lwagent une el dispositivo Citrix ADC secundario al dominio. No se requiere ninguna configuración específica para esta funcionalidad.
Proceso de autenticación Kerberos
La siguiente ilustración muestra un proceso típico para la autenticación Kerberos en el entorno Citrix ADC.
Ilustración 1. Proceso de autenticación Kerberos en Citrix ADC
La autenticación Kerberos se produce en las etapas siguientes:
El cliente se autentica en el KDC
- El dispositivo Citrix ADC recibe una solicitud de un cliente.
- El servidor virtual de administración del tráfico (equilibrio de carga o conmutación de contenido) del dispositivo Citrix ADC envía un desafío al cliente.
- Para responder al desafío, el cliente obtiene un tíquet Kerberos.
- El cliente envía al servidor de autenticación del KDC una solicitud de un tíquet de concesión de tíquets (TGT) y recibe el TGT. (Consulte 3, 4 en la ilustración, Proceso de autenticación Kerberos.)
- El cliente envía el TGT al servidor de concesión de tíquets del KDC y recibe un tíquet Kerberos. (Consulte 5, 6 en la ilustración, Proceso de autenticación Kerberos.)
Nota
El proceso de autenticación anterior no es necesario si el cliente ya tiene un tíquet Kerberos cuya vida útil no ha expirado. Además, los clientes como Servicios web, .NET o J2EE, que admiten SPNEGO, obtienen un tíquet Kerberos para el servidor de destino, crean un token SPNEGO e insertan el token en el encabezado HTTP cuando envían una solicitud HTTP. No pasan por el proceso de autenticación del cliente.
El cliente solicita un servicio.
- El cliente envía el tíquet Kerberos que contiene el token SPNEGO y la solicitud HTTP al servidor virtual de administración de tráfico en Citrix ADC. El token SPNEGO tiene los datos GSSAPI necesarios.
- El dispositivo Citrix ADC establece un contexto de seguridad entre el cliente y el dispositivo Citrix ADC. Si Citrix ADC no puede aceptar los datos proporcionados en el tíquet Kerberos, se le pedirá al cliente que obtenga otro tíquet. Este ciclo se repite hasta que los datos GSSAPI sean aceptables y se establezca el contexto de seguridad. El servidor virtual de administración de tráfico en Citrix ADC actúa como un proxy HTTP entre el cliente y el servidor físico.
Eldispositivo Citrix ADC completa la autenticación.
- Una vez completado el contexto de seguridad, el servidor virtual de administración de tráfico valida el token SPNEGO.
- Desde el token SPNEGO válido, el servidor virtual extrae el ID de usuario y las credenciales de GSS, y las pasa al demonio de autenticación.
- Una autenticación correcta completa la autenticación Kerberos.