En este tutorial, analizaremos cómo integrar servidores Linux (Centos/RHEL) con Windows Active Directory para fines de autenticación. En mi caso tengo servidores Centos/RHEL 6. Siga los pasos a continuación para integrar estos servidores con AD utilizando samba, winbind y Kerberos.
# yum install samba-winbind samba-winbind-clients samba krb5-libs krb5-workstation pam_krb5
Paso 2 :Sincronización de tiempo.
AD es muy exigente con la coincidencia de tiempo durante la autenticación. Por lo tanto, la hora del servidor Linux y del servidor AD debe sincronizarse con el servidor ntp. Use el siguiente comando para sincronizar la hora del servidor Linux con el servidor ntp.
# ntpdate [ntp-server-ip-address/dns-name]
Para hacer que la configuración anterior sea permanente, edite el archivo "/etc/ntp.conf" y simplemente reemplace lo que hay allí con uno o más servidores NTP en su dominio, como:
# vi /etc/ntp.conf server [ntp-server-ip-address/dns-name]
Iniciar el Servicio:
# /etc/init.d/ntpd start # chkconfig ntpd on
Paso 3 :edite el archivo /etc/hosts.
# vi /etc/hosts [ip-address] adserver.yourdomain adserver
Paso 4 :Edite /etc/krb5.conf.
# vi /etc/krb5.conf [domain_realm] yourdomain = YOURDOMAIN [libdefaults] ticket_lifetime = 24000 default_realm = YOURDOMAIN dns_lookup_realm = true dns_lookup_kdc = false cache_type = 1 forwardable = true proxiable = true default_tgs_enctypes = des3-hmac-sha1 des-cbc-crc permitted_enctypes = des3-hmac-sha1 des-cbc-crc allow_weak_crypto = no [realms] YOURDOMAIN = { kdc = [ip address of AD server:Port] admin_server = [ip address of AD server:Port] default_domain = yourdomain }
[appdefaults] pam = { debug = true ticket_lifetime = 36000 renew_lifetime = 36000 forwardable = true krb4_convert = false } [logging] default = FILE:/var/krb5/kdc.log kdc = FILE:/var/krb5/kdc.log admin_server = FILE:/var/log/kadmind.log
Paso 5 :Ahora pruebe la autenticación Kerberos.
# kinit [user-name]
Si le solicita la contraseña, ingrese su contraseña de anuncio de usuario, si todo está bien, recibiremos la solicitud; de lo contrario, vuelva a verificar el archivo krb5.conf.
Paso 6 :Ahora configure Samba y Winbind.
Edite /etc/samba/smb.conf .
# vi /etc/samba/smb.conf [global] workgroup = [Workgroup-Name] netbios name = site2 ## replace the site2 with hostname realm =security = ADS template shell = /bin/bash idmap backend = tdb idmap uid = 1-100000000 idmap gid = 1-100000000 winbind use default domain = Yes winbind nested groups = Yes winbind enum users = Yes winbind enum groups = Yes template shell = /bin/bash template homedir = /home/%D/%U winbind separator = / winbind nss info = sfu winbind offline logon = true hosts allow = 127.0.0.1 0.0.0.0/0 obey pam restrictions = yes socket options = TCP_NODELAY max log size = 150 passdb backend = tdbsam printing = cups load printers = yes cups options = raw printcap name = cups disable spoolss = Yes show add printer wizard = No interfaces = eth0 lo bind interfaces only = yes winbind refresh tickets = true log file = /var/log/samba/log.%m max log size = 50 log level = 3 encrypt passwords = yes #map untrusted to domain = yes #auth methods = winbind guest sam map untrusted to domain = Yes [printers] comment = All Printers path = /var/spool/samba browseable = yes public = yes guest ok = yes writable = no printable = yes
Paso 7 :Configurar /etc/nsswitch.conf archivo para manejar la autenticación.
# vi /etc/nsswitch.conf passwd: compat winbind shadow: winbind group: compat winbind
Paso 8 :Ahora reinicie los servicios winbind y Samba.
# /etc/init.d/smb restart # /etc/init.d/winbind restart
Ahora únete a un dominio:
# net ads join -U [User Name]
Si el comando anterior informa "Unirse está bien", pruebe winbind:
Comando para enumerar todos los usuarios de AD:
# wbinfo -u
Paso 9 :Ahora haga la prueba e intente iniciar sesión en el servidor Linux a través de las credenciales de usuario de AD.
# ssh [username]@[ipaddress or hostname of linux server]