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-dcDonde 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 smbclientDurante la instalación de Kerberos, se pedirá introducir el reino
INAKI.LAN, el nombre del servidor de KerberosSMB-DC.INAKI.LANy el nombre del servidor administrativoSMB-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.oldA continuación, se debe promover el equipo como controlador de dominio. Para ello, ejecuta el siguiente comando:
sudo samba-tool domain provisionLos 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-resolvedLuego, deshabilítalos para que no se inicien automáticamente después de un reinicio:
sudo systemctl disable smbd nmbd winbind systemd-resolvedEs 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-dcEjecuta 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.confSi la comprobación es correcta, elimina el enlace con:
sudo rm /etc/resolv.confY crea un nuevo archivo resolv.conf:
domain inaki.lan
nameserver 127.0.0.1Finalmente, se inica el servicio samba-ad-dc y habilitarlo:
sudo systemctl start samba-ad-dc
sudo systemctl enable samba-ad-dcComprobaciones
Si todo ha salido correctamente, podremos unir un cliente Windows al 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 -OnlineUsuarios 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:

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