Búsqueda de sitios web

Integre Ubuntu a Samba4 AD DC con SSSD y Realm - Parte 15


Este tutorial le guiará sobre cómo unir una máquina Ubuntu Desktop a un dominio Samba4 Active Directory con SSSD y Realmd. > servicios para autenticar usuarios en un Active Directory.

Requisitos:

  1. Cree una infraestructura de Active Directory con Samba4 en Ubuntu

Paso 1: Configuraciones iniciales

1. Antes de comenzar a unir Ubuntu a un Directorio Activo, asegúrese de que el nombre de host esté configurado correctamente. Utilice el comando hostnamectl para configurar el nombre de la máquina o editar manualmente el archivo /etc/hostname.

sudo hostnamectl set-hostname your_machine_short_hostname
cat /etc/hostname
hostnamectl

2. En el siguiente paso, edite la configuración de la interfaz de red de la máquina y agregue las configuraciones de IP adecuadas y las direcciones de servidor IP DNS correctas para apuntar al controlador de dominio Samba AD como se ilustra en la siguiente captura de pantalla.

Si ha configurado un servidor DHCP en sus instalaciones para asignar automáticamente configuraciones de IP para sus máquinas LAN con las direcciones IP de AD DNS adecuadas, puede omitir este paso y seguir adelante.

En la captura de pantalla anterior, 192.168.1.254 y 192.168.1.253 representan las direcciones IP de los controladores de dominio Samba4.

3. Reinicie los servicios de red para aplicar los cambios usando la GUI o desde la línea de comando y emita una serie de comando ping contra su nombre de dominio para probar si la resolución DNS es funcionando como se esperaba. Además, utilice el comando host para probar la resolución de DNS.

sudo systemctl restart networking.service
host your_domain.tld
ping -c2 your_domain_name
ping -c2 adc1
ping -c2 adc2

4. Finalmente, asegúrese de que el tiempo de la máquina esté sincronizado con Samba4 AD. Instale el paquete ntpdate y sincronice la hora con el AD emitiendo los siguientes comandos.

sudo apt-get install ntpdate
sudo ntpdate your_domain_name

Paso 2: instale los paquetes necesarios

5. En este paso, instale el software necesario y las dependencias requeridas para unir Ubuntu a Samba4 AD DC: servicios Realmd y SSSD.

sudo apt install adcli realmd krb5-user samba-common-bin samba-libs samba-dsdb-modules sssd sssd-tools libnss-sss libpam-sss packagekit policykit-1 

6. Introduzca el nombre del dominio predeterminado en mayúsculas y presione la tecla Entrar para continuar con la instalación.

7. A continuación, cree el archivo de configuración SSSD con el siguiente contenido.

sudo nano /etc/sssd/sssd.conf

Agregue las siguientes líneas al archivo sssd.conf.

[nss]
filter_groups = root
filter_users = root
reconnection_retries = 3

[pam]
reconnection_retries = 3

[sssd]
domains = tecmint.lan
config_file_version = 2
services = nss, pam
default_domain_suffix = TECMINT.LAN


[domain/tecmint.lan]
ad_domain = tecmint.lan
krb5_realm = TECMINT.LAN
realmd_tags = manages-system joined-with-samba
cache_credentials = True
id_provider = ad
krb5_store_password_if_offline = True
default_shell = /bin/bash
ldap_id_mapping = True
use_fully_qualified_names = True
fallback_homedir = /home/%d/%u
access_provider = ad

auth_provider = ad
chpass_provider = ad
access_provider = ad
ldap_schema = ad
dyndns_update = true
dyndns_refresh_interval = 43200
dyndns_update_ptr = true
dyndns_ttl = 3600

Asegúrese de reemplazar el nombre de dominio en los siguientes parámetros en consecuencia:

domains = tecmint.lan
default_domain_suffix = TECMINT.LAN
[domain/tecmint.lan]
ad_domain = tecmint.lan
krb5_realm = TECMINT.LAN

8. A continuación, agregue los permisos adecuados para el archivo SSSD emitiendo el siguiente comando:

sudo chmod 700 /etc/sssd/sssd.conf

9. Ahora, abra y edite el archivo de configuración Realmd y agregue las siguientes líneas.

sudo nano /etc/realmd.conf

Extracto del archivo Realmd.conf:

[active-directory]
os-name = Linux Ubuntu
os-version = 17.04

[service]
automatic-install = yes

 [users]
default-home = /home/%d/%u
default-shell = /bin/bash

[tecmint.lan]
user-principal = yes
fully-qualified-names = no

10. El último archivo que necesitas modificar pertenece al demonio Samba. Abra el archivo /etc/samba/smb.conf para editarlo y agregue el siguiente bloque de código al principio del archivo, después de la sección [global] como se ilustra en la imagen a continuación.

 workgroup = TECMINT
   client signing = yes
   client use spnego = yes
   kerberos method = secrets and keytab
   realm = TECMINT.LAN
   security = ads

Asegúrese de reemplazar el valor del nombre de dominio, especialmente el valor del dominio para que coincida con su nombre de dominio y ejecute el comando testparm para verificar si la configuración El archivo no contiene errores.

sudo testparm

11. Después de haber realizado todos los cambios necesarios, pruebe la autenticación Kerberos utilizando una cuenta administrativa de AD y enumere el ticket emitiendo los siguientes comandos.

sudo kinit [email 
sudo klist

Paso 3: Únase a Ubuntu en Samba4 Realm

12. Para unir la máquina Ubuntu a Samba4 Active Directory, siga una serie de comandos como se ilustra a continuación. Utilice el nombre de una cuenta de AD DC con privilegios de administrador para que el enlace al dominio funcione como se esperaba y reemplace el valor del nombre de dominio en consecuencia.

sudo realm discover -v DOMAIN.TLD
sudo realm list
sudo realm join TECMINT.LAN -U ad_admin_user -v
sudo net ads join -k

13. Una vez realizada la vinculación del dominio, ejecute el siguiente comando para asegurarse de que todas las cuentas de dominio tengan permiso para autenticarse en la máquina.

sudo realm permit --all

Posteriormente, puede permitir o denegar el acceso a una cuenta de usuario de dominio o a un grupo utilizando el comando domain como se presenta en los ejemplos siguientes.

sudo realm deny -a
realm permit --groups ‘domain.tld\Linux Admins’
realm permit [email 
realm permit DOMAIN\\User2

14. Desde una máquina Windows con herramientas RSAT instaladas, puede abrir AD UC y navegar al contenedor Computers y verificar si hay una cuenta de objeto con el nombre de su máquina ha sido creado.

Paso 4: configurar la autenticación de cuentas AD

15. Para autenticarse en una máquina Ubuntu con cuentas de dominio, debe ejecutar el comando pam-auth-update con privilegios de root y habilitar todos los perfiles PAM, incluida la opción de crear automáticamente. directorios de inicio para cada cuenta de dominio en el primer inicio de sesión.

Verifique todas las entradas presionando la tecla [espacio] y presione Aceptar para aplicar la configuración.

sudo pam-auth-update

16. En los sistemas, edite manualmente el archivo /etc/pam.d/common-account y la siguiente línea para crear automáticamente hogares para los usuarios de dominio autenticados.

session    required    pam_mkhomedir.so    skel=/etc/skel/    umask=0022

17. Si los usuarios de Active Directory no pueden cambiar su contraseña desde la línea de comandos en Linux, abra el archivo /etc/pam.d/common-password y elimine el use_authtok de la línea de contraseña para que finalmente se vea como en el siguiente extracto.

password       [success=1 default=ignore]      pam_winbind.so try_first_pass

18. Finalmente, reinicie y habilite el servicio Realmd y SSSD para aplicar cambios emitiendo los siguientes comandos:

sudo systemctl restart realmd sssd
sudo systemctl enable realmd sssd

19. Para probar si la máquina Ubuntu se integró exitosamente al dominio, ejecute install winbind y ejecute el comando wbinfo para enumerar las cuentas y grupos de dominio como se ilustra a continuación.

sudo apt-get install winbind
wbinfo -u
wbinfo -g

20. Además, verifique el módulo Winbind nsswitch emitiendo el comando getent contra un usuario o grupo de dominio específico.

sudo getent passwd your_domain_user
sudo getent group ‘domain admins’

21. También puede utilizar el comando id de Linux para obtener información sobre una cuenta de AD, como se ilustra en el siguiente comando.

id tecmint_user

22. Para autenticarse en un host Ubuntu con una cuenta Samba4 AD, utilice el parámetro de nombre de usuario del dominio después del comando su –. Ejecute el comando id para obtener información adicional sobre la cuenta AD.

su - your_ad_user

Utilice el comando pwd para ver el directorio de trabajo actual del usuario de su dominio y el comando passwd si desea cambiar la contraseña.

23. Para usar una cuenta de dominio con privilegios de root en su máquina Ubuntu, debe agregar el nombre de usuario de AD al grupo del sistema sudo emitiendo el siguiente comando:

sudo usermod -aG sudo [email 

Inicie sesión en Ubuntu con la cuenta de dominio y actualice su sistema ejecutando el comando apt update para verificar los privilegios de root.

24. Para agregar privilegios de root para un grupo de dominio, abra y edite el archivo /etc/sudoers usando el comando visudo y agregue la siguiente línea como se ilustra .

%domain\ [email        		 ALL=(ALL:ALL) ALL

25. Para utilizar la autenticación de cuenta de dominio para Ubuntu Desktop, modifique el administrador de pantalla LightDM editando /usr/share/lightdm/lightdm.conf.d/50-ubuntu. conf, agregue las siguientes dos líneas y reinicie el servicio lightdm o reinicie la máquina para aplicar los cambios.

greeter-show-manual-login=true
greeter-hide-users=true

Inicie sesión en Ubuntu Desktop con una cuenta de dominio utilizando la sintaxis your_domain_username o your_domain_username@your_domain.tld.

26. Para usar el formato de nombre corto para cuentas de Samba AD, edite el archivo /etc/sssd/sssd.conf, agregue la siguiente línea en [sssd] bloque como se ilustra a continuación.

full_name_format = %1$s

y reinicie el demonio SSSD para aplicar los cambios.

sudo systemctl restart sssd

Notará que el mensaje de bash cambiará al nombre corto del usuario de AD sin agregar el nombre de dominio equivalente.

27. En caso de que no pueda iniciar sesión debido al argumento enumerate=true establecido en sssd.conf, debe borrar la base de datos almacenada en caché de sssd emitiendo el siguiente comando :

rm /var/lib/sss/db/cache_tecmint.lan.ldb

¡Eso es todo! Aunque esta guía se centra principalmente en la integración con Samba4 Active Directory, se pueden aplicar los mismos pasos para integrar Ubuntu con los servicios Realmd y SSSD en un Microsoft Windows Server Active Directory.