Estoy intentando configurar la compatibilidad con el inicio de sesión de Kerberos (el dominio de Windows AD que proporciona Kerberos) para las estaciones de trabajo Kubuntu 12.04 Linux en la empresa en la que estoy.
Funciona casi por completo, pero no puedo hacer que Kerberos funcione tanto para inicios de sesión de máquinas (a través de kdm) como para ssh al mismo tiempo. El problema parece ser que kdm detecta el dominio completo del host como nombre de host.dominio. y ssh detecta el dominio completo como nombre de host.dominio (tenga en cuenta la falta de seguimiento).
Esa falta o presencia de . al final del dominio que se utiliza en las solicitudes de Kerberos es suficiente para que la solicitud del ticket falle con el error "Servidor no encontrado en la base de datos de Kerberos". Si actualizo /etc/hosts para tener el nombre de host completo como nombre de host.dominio. y unirse al dominio usando los inicios de sesión de samba kdm usando kerberos funcionan correctamente pero los inicios de sesión ssh fallan. Si actualizo /etc/hosts para que el host sea nombre de host.dominio, los inicios de sesión ssh usando kerberos funcionan pero el inicio de sesión de kdm falla.
No entiendo por qué los dos servicios detectan el nombre de dominio completo de manera diferente: hice búsquedas exhaustivas y no encontré ninguna referencia de que nadie más tuviera este problema ni ninguna opción para forzar uno de los servicios. detectar sus nombres de dominio de manera diferente.
Detalles técnicos
El uso de Kubuntu 12.04 es un requisito técnico fuera de mi control, por lo que actualizar a una distribución posterior no es una opción en este momento.
pam_krb5 se está utilizando para proporcionar la autenticación Kerberos a través de pam dns. El dns que se está utilizando no es el dns de Windows (no se pueden cambiar los servidores dns hasta que se complete el trabajo en otra infraestructura), por lo que vienen los detalles principales utilizados para la unión kerberosied de samba al dominio. desde /etc/hosts que se parece a
127.0.0.1 hostname.domain. hostname localhost
(Sin embargo, el servidor dns de Unix en uso tiene entradas dns directas e inversas correctas para los hosts)
/etc/krb5.conf (que es principalmente la distribución predeterminada con los detalles del dominio y los servidores ingresados)
[libdefaults]
default_realm = DOMAIN
krb4_config = /etc/krb.conf
krb4_realms = /etc/krb.realms
kdc_timesync = 1
ccache_type = 4
forwardable = true
proxiable = true
# samba 3 didn't like the default enc type so overridden to ones it supported
default_tkt_enctypes = arcfour-hmac-md5 des3-hmac-sha1 des-cbc-crc
default_tgs_enctypes = arcfour-hmac-md5 des3-hmac-sha1 des-cbc-crc
[realms]
DOMAIN = {
kdc = dc01.domain
kdc = dc02.domain
admin_server = dc01.domain
}
[domain_realm]
.domain = DOMAIN
[login]
krb4_convert = true
krb4_get_tickets = false
/etc/samba/smb.conf (solo se usa para unirse al dominio)
[global]
security = ads
realm = WETAFX.CO.NZ
workgroup = WETAFX.CO.NZ
kerberos method = secrets and keytab
client signing = yes
client use spnego = yes
server string = %h server (Samba, Ubuntu)
dns proxy = no
log file = /var/log/samba/log.%m
max log size = 1000
syslog = 0
panic action = /usr/share/samba/panic-action %d
pam Wise /etc/pam.d/kdm solo incluye los archivos pam comunes que tienen las entradas estándar pam_krb5.so, como
auth sufficient pam_krb5.so minimum_uid=1000
que básicamente se toman directamente de las páginas de manual de pam_krb5.conf
la configuración ssh tiene
GSSAPIAuthentication yes
y el resto es el archivo de configuración ssh estándar predeterminado de ubuntu.
Gracias por cualquier sugerencia sobre la causa de esta discrepancia en el dominio totalmente calificado detectado entre los servicios.
Respuesta1
Creo que he descubierto lo que estaba pasando aquí. Parece que se guarda información adicional en el archivo de tabla de claves después de que el host se unió con o sin . al final del dominio y de ahí venía el comportamiento extraño.
Una vez que eliminé /etc/krb5.keytab y volví a ejecutar la unión al dominio que creó una nueva tabla de claves que solo se había configurado con el nombre de dominio configurado sin el archivo . al final. En ese momento, tanto kdm como ssh funcionaban correctamente con kerberos.