Configurar el SSO Kerberos/NTLM con Apache en Windows
Resumen
Instrucciones paso a paso para la configuración Autenticación Kerberos en Windows con Apache. Aprenda a configurar Kerberos para una autenticación de usuario segura y sin inconvenientes, incluida la configuración inicial, la configuración, Configuraciones del navegador.
Integración sencilla de LDAP/Active Directory para WordPress Vídeo.
SSO con Apache en el servidor Xampp de Windows:
- Abra el símbolo del sistema en Modo administrador.
- Ejecute el siguiente comando para agregar Nombre principal de servicio (SPN) para la cuenta de servicio.
- Verifique si esto se ha configurado correctamente ejecutando el siguiente comando:
- El resultado debe enumerar http/nombredeequipo.dominio.com
- Abra Usuarios y computadoras de Active Directory y en el menú superior seleccione Ver >> Funciones avanzadas.
- Abra la cuenta de servicio y vaya a editor de atributos pestaña, vaya a la nombreprincipaldelservicio para verificar el Entrada SPN.
- Navegue a la pestaña Delegación .
- Seleccione Confíe en este usuario para delegar a cualquier servicio (solo Kerberos).
Setspn -s http/<computer-name>.<domain-name> <domain-user-account>
Ejemplo: C:\Usuarios\Administrador> setspn -S HTTP/nombre_máquina.dominio.com cuenta_servicio
Nota: "nombredeequipo.dominio.com" aquí es el nombre de equipo. Asegúrese de que se pueda resolver en el servidor de Windows que ejecuta el servicio AD.
setspn -l domain\service_account

- Haga clic en Aplicar.
- Haga clic aquí para descargar el módulo de apache.
- Copia el mod_authnz_sspi.so desde Apache24 > módulos carpeta y colóquelo en el directorio de módulos (C:\xampp\apache\modules).
- Copia el sspipkgs.exe archivo de Apache24 -> contenedor y colóquelo en la carpeta bin de su carpeta Xampp Apache (.....\xampp\apache\bin) en su servidor web.
- Abra httpd.conf (.....\xampp\apache\conf) y coloque la siguiente línea de código en la sección LoadModule.
- Asegúrese de que los siguientes módulos estén descomentados:
- Además, asegúrese de Habilitar la extensión ldap.
- Abra el archivo httpd.conf desde (.....\xampp\apache\conf\httpd.conf).
Vaya a y pegue las líneas siguientes después de #Requerir todas las subvenciones. - Reinicia tu Servidor Apache.
LoadModule authnz_sspi_module modules/mod_authnz_sspi.so
LoadModule authn_core_module modules/mod_authn_core.so
LoadModule authz_core_module modules/mod_authz_core.so
<Directory "...../xampp/htdocs">
......
......
#Require all granted
AllowOverride None Options None
AuthType SSPI
SSPIAuth On
SSPIAuthoritative On
Require valid-user
</Directory>
Configurar navegadores para SSO Kerberos:
Nota: La configuración del lado del cliente permite que el navegador respectivo utilice SPNEGO para negociar la autenticación Kerberos para el navegador. Debe asegurarse de que el navegador del sistema del usuario final esté configurado para admitir la autenticación Kerberos.
Configuración general de SSO de Kerberos para todos los navegadores:
- Vaya al Panel de control y haga clic en Redes e Internet >> Opciones de Internet.
- Esto abrirá una ventana de Propiedades de Internet. Haga clic en Seguridad >> Intranet local >> Sitios.

- Después de eso, haga clic en el Botón Avanzado.

- En la sección Añadir este sitio web a la zona sección agregue la URL del sitio web en el que desea iniciar sesión con SSO.

- Haga clic en Herramientas > Opciones de Internet > Seguridad > Intranet local > Nivel personalizado.
- Desplácese hacia abajo hasta las opciones de Autenticación de usuario y seleccione Inicio de sesión automático sólo en la zona Intranet.

- Haga clic en Ok y luego reinicie su navegador.
Una vez que haya terminado con la configuración anterior, no necesita configurar los ajustes del navegador para Internet Explorer, Google Chrome y Apple Safari.
- Internet Explorer
- Google Chrome
- Mozilla Firefox
- Apple Safari
Preguntas Frecuentes
Más preguntas frecuentes ➔¿Puedo utilizar un usuario LDAP existente como principal del servicio Kerberos?
Sí, puede utilizar un usuario LDAP existente como entidad principal de servicio de Kerberos. Sin embargo, este usuario debe tener una contraseña configurada para que nunca caduque. Asegúrese de que ningún usuario utilice esta cuenta, ya que la aplicación utiliza esta cuenta como principal del servicio Kerberos y la tabla de claves correspondiente para obtener un ticket de Kerberos.
¿Qué es un "cliente Kerberos", un "servidor Kerberos" y un "servidor de aplicaciones"?
Toda la autenticación en Kerberos ocurre entre clientes y servidores. Por lo tanto, cualquier entidad que reciba un ticket de servicio para un servicio Kerberos se denomina "cliente Kerberos" en la terminología de Kerberos. Los usuarios suelen considerarse clientes, pero cualquier principal puede serlo.
El Centro de distribución de claves, o KDC para abreviar, suele denominarse "servidor Kerberos". El KDC implementa tanto el Servicio de autenticación (AS) como el Servicio de concesión de billetes (TGS). Cada contraseña conectada a cada principal se almacena en el KDC. Por esta razón, es esencial que el KDC sea lo más seguro posible.
La frase "servidor de aplicaciones" a menudo se refiere al software Kerberizado que los clientes utilizan para interactuar mientras se autentican mediante tickets Kerberos. Un ejemplo de servidor de aplicaciones es el demonio telnet Kerberos.
¿Por qué recibo un mensaje para ingresar mis credenciales?
Esto sucede cuando se utiliza el protocolo NTLM para la autenticación en lugar de Kerberos.
Esto puede ocurrir por múltiples razones:
- Compruebe si está utilizando una máquina unida a un dominio para acceder al sitio web.
- Asegúrese de que la hora esté sincronizada entre el servidor LDAP y el servidor web.
- Confirme si la configuración de su navegador y las opciones de Internet están configuradas para Kerberos SSO.
- Si aún enfrenta este problema, no dude en contactarnos.


