Instalar la paquetería necesaria:
aptitude install samba smbclient winbind krb5-user krb5-config
Resolver equipos de la red Agregar la IP de nuestro equipo Linux y la del Server Active Directory a
“/etc/hosts”:
Configurar el cliente kerberos Para configurar el cliente kerberos agregamos/modificamos las siguientes lineas a “/etc/krb5.conf”:
[libdefaults]
default_realm = PRUEBAS.LOCAL
clockskew = 300
[realms]
PRUEBAS.LOCAL = {
kdc = IP_PDC
default_domain = pruebas.local
admin_server = IP_PDC
}
pruebas.local = {
kdc = IP_PDC
default_domain = pruebas.local
admin_server = IP_PDC
}
pruebas = {
kdc = IP_PDC
default_domain = pruebas
admin_server = IP_PDC
}
[logging]
kdc = FILE:/var/log/krb5/krb5kdc.log
admin_server = FILE:/var/log/krb5/kadmind.log
default = SYSLOG:NOTICE:DAEMON
[domain_realm]
.pruebas = pruebas
.pruebas.local = PRUEBAS.LOCAL
[appdefaults]
pam = {
ticket_lifetime = 1d
renew_lifetime = 1d
forwardable = true
proxiable = false
retain_after_close = false
minimum_uid = 0
try_first_pass = true
}
Crear tickets Kerberos
kinit usuario@prueba.local
Configurar samba, Editamos
nano /etc/samba/smb.conf"
quedando algo parecido a lo siguiente:
[global] security = ADS netbios name = debian realm = PRUEBAS.LOCAL password server = ad.pruebas.local workgroup = PRUEBAS log level = 1 syslog = 0 idmap uid = 10000-29999 idmap gid = 10000-29999 winbind separator = + winbind enum users = yes winbind enum groups = yes winbind use default domain = yes template homedir = /home/%D/%U template shell = /bin/bash client use spnego = yes domain master = no server string = linux como cliente de AD encrypt passwords = yes
Reiniciamos samba:
/etc/init.d/samba restart
Agregar Linux al dominio:
net ads join -S ad.pruebas.local -U usuario
Nos deberá mostrar un mensaje como el siguiente:
Using short domain name -- PRUEBAS
Joined 'DEBIAN' to realm 'PRUEBAS.LOCAL'
Si nos llega a mostrar un error como el siguiente:
usuario's password: [2007/08/25 16:58:33, 0] libsmb/cliconnect.c:cli_session_setup_spnego(785) Kinit failed: Clock skew too great Failed to join domain!
El problema puede ser que la hora del equipo con Linux no este configurada correctamente. Kerberos es muy estricto con la hora. Para solucionarlo, corregimos la hora manualmente o ejecutamos el siguiente comando:
# ntpdate nina.eccmg.cupet.cu
Después de hacer esto ya se debería de poder unir al dominio.
Resolver nombres de usuarios y grupos de dominio
Editar "/etc/nsswitch.conf" y modificar las siguientes lineas
dejándolas así:
passwd: files winbind
group: files winbind
shadow: files winbind
hosts: files dns winbind
Gracias a las lineas anteriores los usuarios y grupos del dominio pueden ser resueltos.
Reiniciamos winbind:
# /etc/init.d/winbind restart
Hacer pruebas para ver si todo salio bien
Configurar la autenticación Para configurar el acceso a usuarios del dominio a nuestro Linux mediante el entorno gráfico hay que configurar pam. Para ello editamos los siguientes archivos y agregamos/modificamos las siguientes lineas:
/etc/pam.d/common-account
account sufficient pam_winbind.so
account required pam_unix.so try_first_pass
/etc/pam.d/common-auth
auth sufficient pam_winbind.so
auth required pam_unix.so nullok_secure try_first_pass
/etc/pam.d/common-password
password sufficient pam_winbind.so
password required pam_unix.so nullok obscure min=4 max=8 md5
try_first_pass
/etc/pam.d/common-session
session required pam_mkhomedir.so skel=/etc/skel/ umask=0022
session sufficient pam_winbind.so
session required pam_unix.so try_first_pass