PAM vs LDAP vs SSSD vs Kerberos

10

Básicamente soy consciente de lo que hacen estos servicios por separado. Lo que quiero saber: ¿qué sucede exactamente en un inicio de sesión exitoso en una red basada en Linux que utiliza todos estos servicios? ¿En qué orden se consultan estos servicios? ¿Qué servicio habla con qué servicio?

tfh
fuente

Respuestas:

19

El sssddemonio actúa como la araña en la web, controlando el proceso de inicio de sesión y más. El programa de inicio de sesión se comunica con los configurados pamy nssmódulos, que en este caso son proporcionados por el paquete SSSD. Estos módulos se comunican con los respondedores SSSD correspondientes, que a su vez hablan con el Monitor SSSD. SSSD busca al usuario en el directorio LDAP, luego se pone en contacto con el KDC de Kerberos para la autenticación y para adquirir tickets.

(PAM y NSS también pueden comunicarse con LDAP directamente usando pam_ldap y nss_ldap respectivamente. Sin embargo, SSSD proporciona una funcionalidad adicional).

Por supuesto, mucho de esto depende de cómo se haya configurado SSSD; Hay muchos escenarios diferentes. Por ejemplo, puede configurar SSSD para realizar la autenticación directamente con LDAP o autenticarse a través de Kerberos.

El sssddemonio en realidad no hace mucho que no se puede hacer con un sistema que ha sido "ensamblado a mano", pero tiene la ventaja de que maneja todo en un lugar centralizado. Otro beneficio importante de SSSD es que almacena en caché las credenciales, lo que facilita la carga en los servidores y permite desconectarse e iniciar sesión. De esta manera, no necesita una cuenta local en la máquina para la autenticación sin conexión.

Johan Myréen
fuente
2
Es sorprendente ver que sssd parece ser el coordinador del proceso. Pensé que esa sería la tarea de PAM, ya que abstrae los detalles de la implementación.
tfh
1
Sí, pero los desarrolladores de SSSD decidieron reinventar la 'coordinación' ... principalmente. Sigue el viejo adagio de Unix de "haz todo, sobre todo bien".
user2066657