Era necesario ingresar una máquina Ubuntu en un dominio de Windows. Para estos fines, generalmente se usan Samba y Winbind. Pero una alternativa es posible con sssd, una breve guía a continuación.
Por ejemplo, usaremos:
Dominio = contoso.com
Controlador de dominio = dc.contoso.com
Inicie el terminal de Ubuntu:
1. Cambiar a root
sudo -i
2. Instale los paquetes necesarios
apt install sssd heimdal-clients msktutil
3. Editamos /etc/krb5.conf, las pestañas se usan como sangrías
[libdefaults] default_realm = CONTOSO.COM [realms] CONTOSO.COM = { kdc = DC admin_server = dc.contoso.com default_domain = contoso.com } [login] krb4_convert = true krb4_get_tickets = false [domain_realm] .contoso.com = CONTOSO.COM contoso.com = CONTOSO.COM
4. Edite el archivo / etc / hosts, especifique el FQDN para este host:
127.0.0.1 localhost 127.0.1.1 <hostname>.contoso.com <hostname>
5. Intentamos obtener un ticket Kerberos en nombre del administrador del dominio:
root@ubuntu:~
Comprobamos:
root@ubuntu:~
Si el ticket se recibe con éxito, ahora se pueden generar los principales Kerberos para este host, el registro es importante:
msktutil -c -b 'CN=YourComputersOU' -s HOST/HOSTNAME.contoso.com -k /etc/sssd/HOSTNAME.keytab --computer-name HOSTNAME --upn HOSTNAME$ --server dc.contoso.com —user-creds-only msktutil -c -b 'CN=YourComputersOU' -s HOST/HOSTNAME -k /etc/sssd/HOSTNAME.keytab --computer-name HOSTNAME --upn HOSTNAME$ --server dc.contoso.com --user-creds-only
Ahora nuestro host debería aparecer en la lista de computadoras en el directorio. Si es así, elimine el ticket Kerberos recibido:
kdestroy
6. Cree el archivo /etc/sssd/sssd.conf con los siguientes contenidos:
[sssd] services = nss, pam config_file_version = 2 domains = contoso.com [nss] entry_negative_timeout = 0 debug_level = 3 [pam] debug_level = 3 [domain/contoso.com] debug_level = 3 ad_domain = contoso.com ad_server = dc.contoso.com enumerate = false id_provider = ad auth_provider = ad chpass_provider = ad access_provider = simple simple_allow_groups = users
La descripción de los parámetros del archivo de configuración sssd se puede encontrar
aquíEstablezca permisos para el archivo sssd.conf:
chmod 600 /etc/sssd/sssd.conf
Reiniciar el servicio SSSD
service sssd restart
7. Edición de la configuración de PAM
Mala solución:edite el archivo /etc/pam.d/common-session, después de la línea
session required pam_unix.so
agregar línea
session required pam_mkhomedir.so skel=/etc/skel umask=0022
Buena solución:anular los parámetros a través de la configuración del sistema PAM, llamar
pam-auth-update
y
verifique los elementos sss auth y
makehomdir . Esto agregará automáticamente
la línea anterior en la sesión común y no se sobrescribirá al actualizar el sistema.
Ahora podemos iniciar sesión en la máquina para los usuarios del dominio que pueden iniciar sesión.
PD: puede otorgar el derecho de usar grupos de dominio sudo. Con visudo, edite el archivo / etc / sudoers, o mejor, como
recomiendan maxzhurkin e
iluvar , cree un nuevo archivo en /etc/sudoers.d/ y edítelo
visudo -f /etc/sudoers.d/_
agregue el grupo requerido, por ejemplo, Administradores de dominio (si hay espacios en el nombre del grupo, se deben escapar):
%Domain\ Admins ALL=(ALL) ALL
PSS: Gracias a
Gotch por la información sobre realmd. Es muy conveniente: si no se necesitan configuraciones específicas, ingresar una máquina en un dominio requiere, de hecho, tres comandos:
1. Instale los paquetes necesarios:
sudo apt install realmd samba-common-bin samba-libs sssd-tools krb5-user adcli
2. Verifique que nuestro dominio sea visible en la red:
realm discover contoso.com
3. Ingrese la máquina en el dominio:
sudo realm --verbose join contoso.com -U YourDomainAdmin --install=/
4. Edición de la configuración de PAM
sudo pam-auth-update
Una ventaja adicional de esta opción es la autorización de extremo a extremo en los recursos de archivo del dominio.
Para no especificar un dominio además del inicio de sesión, puede agregar un sufijo predeterminado. En el archivo /etc/sssd/sssd.conf, en el bloque [sssd], agregue la línea:
default_domain_suffix = contoso.com