Samba

En este documento se explica cómo implementar un equipo Linux como controlador de Active Directory.

Pasos previos

Red

Para realizar este ejercicio, los equipos, un cliente Windows 10 y un servidor con Linux, Lubuntu, estarán en la misma red LAN virtualizada, SAMBA_LAN.

La red será 10.0.0.0/24 y ambas máquinas tendrán una IP estática. El controlador DC tendrá la 10.0.0.10 y el cliente la 10.0.0.20.

Además, ambos equipos tendrán como DNS al DC, la 10.0.0.10.

Resolucion de nombres

En el archivo /etc/hosts del servidor Linux:

10.0.0.10 smb-dc.inaki.lan smb-dc

Donde smb-dc.inaki.lan y smb-dc son los nombres NetBIOS del servidor.

Instalación

Es necesario tener instalados una serie de paquetes. Dependiendo de la distribución, se realizará de una u otra manera. Para una distribución basada en Ubuntu:

sudo apt update && sudo apt upgrade
sudo apt install samba krb5-config winbind smbclient

Durante la instalación de Kerberos, se pedirá introducir el reino INAKI.LAN, el nombre del servidor de Kerberos SMB-DC.INAKI.LAN y el nombre del servidor administrativo SMB-DC.INAKI.LAN.

Una vez terminada la instalación, es necesario mover el archivo /etc/samba/smb.conf para proceder con la configuración:

sudo mv /etc/samba/smb.conf /etc/samba/smb.conf.old

A continuación, se debe promover el equipo como controlador de dominio. Para ello, ejecuta el siguiente comando:

sudo samba-tool domain provision

Los valores a ingresar son:

  • Realm: INAKI.LAN
  • Domain: INAKI
  • Server Role: dc
  • DNS backend: SAMBA_INTERNAL
  • DNS forwarder IP address: 127.0.0.53

Finalmente, copia el archivo de configuración de Kerberos:

sudo cp /var/lib/samba/private/krb5.conf /etc/

Ajustes adicionales

A continuación, ajusta la resolución de nombres. Primero, detén los servicios implicados:

sudo systemctl stop smbd nmbd winbind systemd-resolved

Luego, deshabilítalos para que no se inicien automáticamente después de un reinicio:

sudo systemctl disable smbd nmbd winbind systemd-resolved

Es importante ejecutar ambos comandos y asegurarse de que se ejecuten correctamente.

A continuación, asegúrate de que el servicio samba-ad-dc pueda iniciarse sin dificultades, eliminando cualquier enmascaramiento existente:

sudo systemctl unmask samba-ad-dc

Ejecuta el comando para verificar que no haya errores.

Después, elimina el archivo resolv.conf. Para comprobarlo, consulta su entrada en el directorio:

sudo ls -l /etc/resolv.conf

Si la comprobación es correcta, elimina el enlace con:

sudo rm /etc/resolv.conf

Y crea un nuevo archivo resolv.conf:

domain inaki.lan
nameserver 127.0.0.1

Finalmente, se inica el servicio samba-ad-dc y habilitarlo:

sudo systemctl start samba-ad-dc
sudo systemctl enable samba-ad-dc

Comprobaciones

Si todo ha salido correctamente, podremos unir un cliente Windows al dominio.

Imagen del equipo Windows en el dominio

Usuarios, grupos y GPOs

Una vez dentro del dominio, el siguiente paso será crear usuarios, grupos, OUs y GPOs.

Para ello, es necesario habilitar desde PowerShell la siguiente capability:

Get-WindowsCapability -Name RSAT* -Online | Add-WindowsCapability -Online

Usuarios y equipos de Active Directory

Tras instalar las herramientas, podremos administrar el controlador de Active Directory directamente desde el cliente Windows usando el usuario Administrator:

Imagen de la OU empresa y el usuario pepe

GPOs

Del mismo modo, es posible crear y vincular políticas de grupo:

Imagen de una GPO