¿Qué es Kerberos?
Kerberos es un protocolo de autenticación utilizado para verificar identidades dentro de una red mediante tickets. Permite que usuarios, equipos y servicios establezcan relaciones de confianza sin tener que transmitir continuamente la contraseña para cada acceso.
¿Qué es Kerberos?
Kerberos es un protocolo de autenticación de red que permite comprobar la identidad de usuarios, equipos y servicios mediante un sistema de tickets emitidos por una entidad de confianza.
Su funcionamiento utiliza componentes como el KDC, TGT y TGS. En entornos Windows, Kerberos V5 está estrechamente integrado con Active Directory y los controladores de dominio.
¿Cómo funciona Kerberos?
Kerberos utiliza una entidad de confianza para autenticar identidades y entregar credenciales temporales que permiten acceder posteriormente a servicios de una red.
Autentica la identidad
El protocolo participa en la comprobación de la identidad del usuario o equipo antes de permitir que solicite acceso a determinados servicios.
Utiliza tickets
Después de la autenticación inicial, Kerberos utiliza tickets temporales para representar la autorización de una identidad a determinados servicios.
Evita repetir la contraseña
El usuario no necesita proporcionar nuevamente su contraseña a cada servicio compatible con Kerberos, ya que el sistema utiliza tickets emitidos durante el proceso de autenticación.
Kerberos no es simplemente una contraseña protegida
El protocolo construye un sistema de autenticación basado en confianza, tickets, servicios y tiempos de validez.
Usuario autenticado
El usuario demuestra su identidad ante la infraestructura de autenticación antes de solicitar acceso a servicios de la red.
Credenciales temporales
Kerberos utiliza tickets que permiten demostrar la autenticación ante servicios concretos durante un período determinado.
Acceso controlado
El usuario puede solicitar tickets destinados a servicios específicos sin tener que entregar continuamente su contraseña.
Principales componentes de Kerberos
| Componente | Función | Significado | Relación |
|---|---|---|---|
| KDC | Gestiona funciones de autenticación y emisión de tickets. | Key Distribution Center. | Es la entidad de confianza central del sistema Kerberos. |
| AS | Participa en la autenticación inicial. | Authentication Server. | Interviene en la obtención inicial de credenciales. |
| TGT | Permite solicitar tickets posteriores. | Ticket Granting Ticket. | Se obtiene durante la autenticación inicial. |
| TGS | Entrega tickets destinados a servicios concretos. | Ticket Granting Server. | Utiliza el TGT para atender solicitudes de servicio. |
| SPN | Identifica un servicio dentro del entorno. | Service Principal Name. | Permite asociar servicios con identidades de servicio. |
¿Qué es un KDC en Kerberos?
KDC significa Key Distribution Center o Centro de Distribución de Claves. Es la entidad de confianza que participa en la autenticación y en la entrega de tickets dentro del sistema Kerberos.
Authentication Server
El Authentication Server o AS participa en la autenticación inicial y permite que el cliente obtenga las credenciales necesarias para continuar el proceso.
Ticket Granting Server
El Ticket Granting Server o TGS interviene cuando el usuario necesita solicitar un ticket destinado a un servicio específico.
Entidad de confianza
El KDC representa una parte central del modelo de confianza porque los participantes aceptan los tickets emitidos por la infraestructura Kerberos.
¿Qué es un TGT en Kerberos?
TGT significa Ticket Granting Ticket. Es una credencial temporal obtenida después de la autenticación inicial que permite solicitar posteriormente tickets para servicios específicos.
Autenticación inicial
El cliente obtiene el TGT como parte del proceso que establece inicialmente la identidad frente al sistema Kerberos.
Solicitud de servicios
El TGT puede utilizarse posteriormente para solicitar al TGS tickets destinados a diferentes servicios compatibles.
Validez temporal
Los tickets tienen períodos de validez. Esto permite limitar temporalmente la utilización de las credenciales emitidas por el sistema.
¿Cómo funciona la autenticación Kerberos?
El proceso puede explicarse como una secuencia en la que el cliente se autentica inicialmente y después utiliza tickets para solicitar acceso a servicios concretos.
1. Inicio de sesión
El cliente inicia el proceso presentando las credenciales necesarias para demostrar su identidad ante el sistema de autenticación.
2. Obtención del TGT
El sistema de autenticación participa en la entrega de un Ticket Granting Ticket que podrá utilizarse para solicitar otros tickets.
3. Solicitud del servicio
Cuando el usuario necesita acceder a una aplicación o recurso, el cliente solicita al TGS un ticket destinado al servicio correspondiente.
4. Presentación del ticket
El cliente presenta el ticket al servicio para que este pueda comprobar que la solicitud pertenece a una identidad autenticada.
5. Acceso
Después de la autenticación, los controles de autorización del recurso determinan las operaciones que la identidad puede realizar.
¿Qué relación existe entre Kerberos y Active Directory?
Kerberos y Active Directory están estrechamente relacionados en los dominios de Windows. Active Directory proporciona la infraestructura de identidad y directorio, mientras los controladores de dominio participan en los servicios necesarios para la autenticación Kerberos.
Controladores de dominio
Los controladores de dominio proporcionan los servicios de Active Directory y participan en el funcionamiento del KDC en un dominio de Windows.
Autenticación
Kerberos permite autenticar cuentas y posteriormente solicitar tickets destinados a servicios del dominio.
Integración
Por esta razón, conceptos como dominio, DNS, controladores de dominio, cuentas de servicio y SPN son importantes para comprender Kerberos en Windows.
¿Qué es un SPN en Kerberos?
SPN significa Service Principal Name. Es un identificador utilizado para asociar una instancia de servicio con una cuenta dentro de un entorno compatible con Kerberos.
Identificación del servicio
El SPN ayuda a identificar el servicio al que el cliente necesita acceder cuando solicita un ticket de servicio.
Cuentas de servicio
En entornos Windows, los SPN pueden estar asociados con cuentas utilizadas por aplicaciones y servicios que necesitan autenticación Kerberos.
Problemas de configuración
SPN incorrectos o duplicados pueden provocar problemas de autenticación porque Kerberos puede no identificar correctamente la cuenta asociada con el servicio.
¿Cuál es la diferencia entre Kerberos y NTLM?
Kerberos y NTLM son mecanismos de autenticación diferentes utilizados en ecosistemas Microsoft. Kerberos se basa en tickets y un KDC, mientras NTLM utiliza un mecanismo de desafío y respuesta.
Kerberos
Utiliza tickets emitidos por una infraestructura de confianza y está diseñado para autenticación dentro de entornos donde los servicios pueden integrarse con el protocolo.
NTLM
Utiliza un mecanismo diferente basado en desafío y respuesta y puede aparecer en determinados escenarios de compatibilidad.
Entornos Windows
Kerberos es el mecanismo de autenticación predeterminado para muchos escenarios de dominio modernos de Windows, aunque NTLM puede seguir utilizándose cuando las circunstancias lo requieren.
| Característica | Kerberos | NTLM |
|---|---|---|
| Modelo | Tickets. | Desafío y respuesta. |
| Elemento principal | KDC. | Mecanismo NTLM. |
| Uso | Autenticación de dominio y servicios compatibles. | Compatibilidad y escenarios específicos. |
¿Por qué DNS y la hora son importantes para Kerberos?
Kerberos depende de una infraestructura de red correctamente configurada. En especial, la resolución de nombres y la sincronización de tiempo son importantes para que los participantes puedan localizar servicios y validar correctamente las credenciales temporales.
DNS
DNS permite localizar controladores de dominio y otros servicios necesarios dentro del entorno de red. Una configuración incorrecta puede causar problemas de autenticación.
Sincronización horaria
Los tickets Kerberos tienen información temporal. Una diferencia significativa entre los relojes de los sistemas participantes puede provocar que una credencial sea rechazada.
Diagnóstico
Cuando Kerberos presenta errores, además de comprobar las credenciales es importante revisar DNS, sincronización horaria, conectividad, controladores de dominio y configuración de servicios.
¿Qué puerto utiliza Kerberos?
Kerberos utiliza principalmente el puerto 88 para las comunicaciones relacionadas con el protocolo. Dependiendo de la comunicación y de la implementación, puede utilizarse UDP o TCP.
Puerto 88
El puerto 88 está asociado con los servicios de autenticación Kerberos y debe considerarse al configurar reglas de firewall y conectividad entre sistemas.
Firewall
Las reglas de red deben permitir las comunicaciones necesarias entre clientes, servidores y controladores de dominio según la arquitectura implementada.
No es el único servicio
Un entorno Active Directory utiliza numerosos servicios y protocolos además de Kerberos. DNS, LDAP y otros componentes cumplen funciones diferentes dentro de la infraestructura.
¿Por qué Kerberos es importante en ciberseguridad?
Kerberos es una pieza fundamental de numerosos sistemas de autenticación empresarial porque permite comprobar identidades mediante credenciales temporales y relaciones de confianza.
Contraseñas
El modelo reduce la necesidad de transmitir repetidamente la contraseña del usuario a cada servicio compatible con el protocolo.
Tickets
Los tickets tienen características temporales y criptográficas destinadas a representar la autenticación dentro del sistema.
Cuentas privilegiadas
La protección de cuentas administrativas y cuentas de servicio sigue siendo esencial, porque una infraestructura Kerberos segura no elimina los riesgos derivados de credenciales comprometidas o permisos excesivos.
¿Kerberos es lo mismo que autenticación?
No. La autenticación es el proceso de comprobar una identidad, mientras que Kerberos es un protocolo que implementa mecanismos para realizar autenticación y establecer acceso basado en tickets dentro de su modelo.
Autenticación
Determina si una identidad puede demostrar quién es mediante uno o más mecanismos de credenciales.
Kerberos
Es un protocolo que utiliza un modelo específico de autenticación basado en tickets, una entidad de confianza y servicios de emisión de credenciales.
Autorización
Después de autenticar una identidad, otros mecanismos determinan qué recursos puede utilizar y qué operaciones puede realizar.
¿Qué relación existe entre Kerberos y SSO?
Kerberos puede facilitar experiencias de inicio de sesión único dentro de determinados entornos porque una identidad autenticada puede utilizar tickets para acceder a múltiples servicios compatibles sin introducir nuevamente la contraseña en cada uno.
Una autenticación
El usuario puede realizar una autenticación inicial frente al entorno de identidad.
Múltiples servicios
Posteriormente puede solicitar tickets destinados a diferentes servicios compatibles con Kerberos.
No todos los SSO utilizan Kerberos
SSO es un concepto más amplio. También puede implementarse mediante tecnologías y protocolos como SAML y OpenID Connect dependiendo del tipo de aplicación y arquitectura.
¿Kerberos garantiza una red segura?
No. Kerberos proporciona mecanismos de autenticación, pero la seguridad completa de una infraestructura depende también de las cuentas, los equipos, los permisos, las políticas, la configuración de red y otros controles.
Credenciales
Si una cuenta es comprometida, pueden existir riesgos aunque Kerberos esté correctamente implementado.
Privilegios
Los permisos excesivos pueden permitir que una identidad autenticada tenga acceso a más recursos de los necesarios.
Infraestructura
Controladores de dominio, DNS, sistemas operativos, aplicaciones y dispositivos de red deben mantenerse adecuadamente protegidos.
¿Qué se necesita para que Kerberos funcione correctamente?
Una implementación Kerberos necesita una infraestructura coherente entre clientes, servidores y servicios de autenticación.
Servicio de autenticación
Debe existir una infraestructura Kerberos correctamente configurada para emitir y gestionar los tickets necesarios.
DNS
Los participantes deben poder resolver correctamente los nombres necesarios para localizar servicios y sistemas del entorno.
Hora sincronizada
Los equipos deben mantener una sincronización temporal adecuada para evitar problemas con la validación de tickets.
Servicios y SPN
Los servicios que utilizarán Kerberos deben estar correctamente identificados dentro de la infraestructura, incluyendo los nombres de servicio correspondientes.
Kerberos: conceptos principales
| Concepto | Significado | Ejemplo | Función |
|---|---|---|---|
| Kerberos | Protocolo de autenticación. | Kerberos V5. | Autenticar identidades mediante tickets. |
| KDC | Key Distribution Center. | Servicio Kerberos del dominio. | Gestionar autenticación y tickets. |
| TGT | Ticket Granting Ticket. | Ticket inicial. | Permitir solicitar tickets de servicio. |
| TGS | Ticket Granting Server. | Servicio de tickets. | Entregar tickets para servicios concretos. |
| SPN | Service Principal Name. | Identidad de servicio. | Identificar servicios dentro del entorno. |
Guías relacionadas sobre identidad y autenticación
Elige el tema que quieras profundizar:
Preguntas frecuentes sobre Kerberos
Kerberos es un protocolo de autenticación de red que utiliza tickets para verificar identidades y permitir el acceso a servicios compatibles.
Sirve para autenticar usuarios, equipos y servicios y permitir que una identidad autenticada solicite tickets para recursos concretos.
KDC significa Key Distribution Center. Es la entidad de confianza que participa en la autenticación y en la emisión de tickets Kerberos.
TGT significa Ticket Granting Ticket. Es un ticket obtenido durante la autenticación inicial que permite solicitar posteriormente tickets para servicios.
TGS significa Ticket Granting Server. Es el componente que participa en la entrega de tickets destinados a servicios concretos.
Kerberos es un protocolo de autenticación utilizado en los dominios de Windows, mientras que Active Directory proporciona servicios de identidad y directorio. Los controladores de dominio participan en la infraestructura Kerberos del dominio.
SPN significa Service Principal Name. Es un identificador utilizado para asociar un servicio con una cuenta dentro de un entorno Kerberos.
Kerberos utiliza principalmente el puerto 88 y puede utilizar UDP o TCP según la comunicación y la implementación.
¿Qué es LDAP?
Continúa aprendiendo sobre identidad y directorios y descubre cómo LDAP permite consultar y gestionar información dentro de los servicios de directorio.
Ver guía →