Cómo configurar la autenticación Kerberos en varios navegadores

Claro que sí. Aquí tienes una versión más sencilla y un poco desordenada que sigue siendo clara e incluye algunos detalles que la gente probablemente olvide: — En el mundo del acceso web empresarial, la autenticación Kerberos puede ser algo molesta de configurar correctamente en todos los navegadores. La mayoría de las veces, el problema principal es que los navegadores solo necesitan un poco de configuración para comunicarse sin problemas con tu configuración de Active Directory. Si alguna vez has intentado que Chrome, Firefox o IE realicen un inicio de sesión transparente de Windows en sitios internos, probablemente te hayas topado con problemas extraños, como no obtener SSO o que el navegador solicite credenciales de todos modos. Para eso es esta guía. Te guía a través de la configuración básica para que tus navegadores confíen en tus tickets Kerberos de AD y luego los pasen sin problemas. Necesitarás que el servidor web admita Kerberos (ejemplo: IIS con autenticación Kerberos habilitada), que el usuario tenga acceso de alguna manera y que su máquina haya iniciado sesión correctamente en AD con un TGT válido (que es el ticket de concesión de tickets de Kerberos).Sin ellos, olvídalo. Y ten en cuenta; Los navegadores difieren en cómo manejan los tickets y las zonas, así que créeme, estos pasos ayudan a evitar el clásico problema de «¿por qué este sitio solicita iniciar sesión cada vez?».—

Cómo solucionar problemas de autenticación Kerberos en navegadores

Habilitación de Kerberos en Internet Explorer (11)

Primero, IE es un poco de la vieja escuela, pero sigue siendo sorprendentemente importante en algunos lugares. Cuando estás solucionando problemas de Kerberos en IE, lo principal es asegurarte de que los sitios se reconozcan como «intranet» y sean de confianza para que IE envíe el token correcto.- Ve a Opciones de Internet : llegas allí a través del Panel de control > Opciones de Internet o desde el ícono de ajustes en IE.- Dirígete a Seguridad, luego haz clic en Intranet local y presiona Sitios > Avanzadas.- Aquí, agrega tu sitio, por ejemplo, https://*.woshub.comy también http://*.woshub.com. De esta manera, IE los trata como intranet, vital para la compatibilidad con Kerb.- Para una administración más sencilla, puedes configurarlos a través de la Política de grupo: navega a Configuración del equipo > Políticas > Plantillas administrativas > Componentes de Windows > Internet Explorer y busca la configuración Asignación de sitio a zona. Establece los valores en 1 (Zona de intranet) para tus sitios.- Después de eso, haz clic en la pestaña Avanzadas nuevamente. Asegúrate de que Habilitar autenticación integrada de Windows esté marcado.- Importante: Si en cambio estás agregando sitios a la zona de Sitios de confianza, no se enviarán tokens Kerberos. Mantenga sitios como sus aplicaciones web internas estrictamente en la zona de la intranet local. Una vez hecho esto, IE intentará pasar automáticamente los tickets Kerberos de su sesión iniciada al visitar esas URL. A veces, reiniciar o incluso borrar la caché puede ser útil si persiste.—

Cómo conseguir que Chrome aproveche Kerberos

Chrome usa la configuración de IE, así que el primer paso es asegurarse de que IE esté configurado correctamente (ver arriba).Sin embargo, a veces, especialmente en versiones antiguas de Chrome, también es necesario incluir explícitamente en la lista blanca el dominio Kerberos.- En la línea de comandos, puede iniciar Chrome con estas opciones: plaintext –auth-server-whitelist=»*.woshub.com» –auth-negotiate-delegate-whitelist=»*.woshub.com» – Para una solución más permanente, configure estas políticas a través del registro: Vaya a HKLM\SOFTWARE\Policies\Google\Chrome y cree o edite los valores DWORD: – AuthServerWhitelist = `*.woshub.com` – AuthNegotiateDelegateWhitelist = `*.woshub.com` – Reinicie Chrome después de aplicar esta configuración.- Además, no olvide borrar los tickets de Kerberos con: bash klist purge (de la guía de Microsoft ) y luego actualice el navegador.—

Cómo hacer que Firefox pase las comprobaciones de Kerberos

Firefox gestiona las cosas de forma diferente: no usa la configuración del sistema de IE, así que debes indicarle explícitamente en qué sitios confiar.- En Firefox, ve a about:config y haz clic en «Aceptar el riesgo».- Busca `network.negotiate-auth.trusted-uris` y configúralo con tu dominio, p.ej.: plaintext https://*.woshub.com – Haz lo mismo con `network.automatic-ntlm-auth.trusted-uris`.Es correcto configurar ambos con el mismo valor.- Para evitar problemas con los FQDN, activa `network.negotiate-auth.allow-non-fqdn` y configúralo como `true`.- Si Firefox sigue sin pasar los tickets de Kerberos, revisa tu caché de tickets: bash klist tickets o intenta comprobar si realmente detecta tus credenciales de inicio de sesión.—

Sinceramente, es un poco raro, pero una vez que se hacen todos estos ajustes, los navegadores suelen empezar a pasar las credenciales de Kerberos sin problemas. No sé por qué a veces funciona, pero en algunas configuraciones, basta con reiniciar o borrar la caché o los tickets de la lista de espera para que todo funcione. Y sí, las actualizaciones de los navegadores siempre complican un poco las cosas; la paciencia es clave.

Resumen

  • Asegúrese de que los sitios estén en la zona de Intranet local en IE y Firefox.
  • Compruebe la configuración de seguridad de IE: habilite la autenticación integrada de Windows.
  • Para Chrome, modifique los indicadores de la línea de comandos o las políticas de registro para incluir su dominio en la lista blanca.
  • Limpie el caché de tickets con `klist purge` cuando las cosas fallan o no se actualizan.
  • Pruebe con herramientas como Fiddler o «klist tickets» para ver qué se envía realmente.

Resumen

Conseguir que Kerberos funcione en los navegadores no siempre es sencillo, pero con un poco de paciencia y la configuración correcta, el inicio de sesión único (SSO) en tu intranet puede ser perfecto. A veces, solo una configuración desconocida lo bloquea todo, así que no te rindas. Ojalá esto te ahorre algún que otro dolor de cabeza. Crucemos los dedos para que esto ayude y para que tus navegadores finalmente dejen de solicitar credenciales cada dos minutos.