Active
Directory
Todo lo que necesitas saber sobre Active Directory: qué es, cómo desplegarlo en un lab casero y cómo resolver los tickets más habituales que te encontrarás en tu día a día como técnico IT.
¿Qué es Active Directory?
Active Directory (AD) es el servicio de directorio de Microsoft que permite a las organizaciones gestionar de forma centralizada usuarios, equipos, grupos, permisos y políticas en toda la red. Es el núcleo de la infraestructura IT en la mayoría de empresas del mundo.
Imagínalo como la base de datos maestra de tu empresa: sabe quién eres, a qué tienes acceso, qué puedes hacer y desde qué equipo te puedes conectar.
Active Directory es como el departamento de RRHH de tu empresa, pero digital. Controla quién entra, qué puede hacer y dónde puede acceder.
¿Para qué sirve?
Gestión de usuarios
Crea, modifica y elimina cuentas de usuario. Controla contraseñas, bloqueos y atributos de cada persona.
Gestión de equipos
Registra todos los ordenadores de la empresa y aplica configuraciones remotamente sin tocarlos físicamente.
Control de accesos
Define quién puede acceder a qué carpetas, impresoras, aplicaciones y recursos de red.
Políticas de grupo (GPO)
Aplica configuraciones masivas a cientos de equipos a la vez: fondos de pantalla, restricciones, software...
Componentes principales
| Componente | Descripción | Ejemplo |
|---|---|---|
Domain Controller (DC) |
Servidor que aloja y gestiona AD. El "cerebro" del dominio. | SRV-DC01 |
Domain |
Nombre lógico del entorno. Agrupa todos los recursos. | empresa.local |
Forest |
Contenedor de uno o más dominios. El nivel más alto. | empresa.local (forest raíz) |
OU (Unidad Organizativa) |
Carpetas lógicas para organizar usuarios y equipos. | OU=RRHH, OU=IT... |
GPO |
Políticas de grupo que se aplican a OUs, sitios o el dominio. | Política de contraseñas |
DNS |
AD depende completamente del DNS para funcionar. | _ldap._tcp.empresa.local |
Conceptos clave
Antes de desplegar o administrar AD, necesitas entender estos conceptos fundamentales. Sin ellos te perderás rápido.
Estructura del dominio
Usuarios vs Grupos vs Equipos
Usuario (User Account)
Representa a una persona real. Tiene nombre, contraseña, email, departamento. Se usa para autenticarse en el dominio.
Grupo (Group)
Colección de usuarios. Se usa para asignar permisos a muchos usuarios a la vez. Mucho más eficiente que hacerlo uno a uno.
Equipo (Computer Account)
Representa una máquina unida al dominio. Permite aplicarle GPOs y gestionarla remotamente.
Tipos de grupos
| Tipo | Ámbito | Cuándo usarlo |
|---|---|---|
Global |
Todo el dominio | Agrupar usuarios del mismo dominio (ej: GG_RRHH) |
Domain Local |
Recursos locales | Asignar permisos sobre recursos (ej: DL_CarpetaShared_R) |
Universal |
Todos los dominios del forest | Entornos multi-dominio |
Accounts → Global groups → Domain Local groups → Permissions. Mete usuarios en grupos globales, los globales en grupos de dominio local, y asigna permisos a esos grupos locales. Así escala limpio.
Autenticación — Kerberos
AD usa el protocolo Kerberos para autenticar usuarios. Cuando inicias sesión, el DC te emite un ticket que demuestra tu identidad al resto de sistemas. No se transmite tu contraseña por la red, solo tickets cifrados.
Muchos errores de autenticación están relacionados con Kerberos: relojes desincronizados entre el cliente y el DC, SPN mal configurados, o tickets caducados. Si el reloj difiere más de 5 minutos, Kerberos falla.
Cómo desplegar AD en un lab
Vamos a montar un lab casero con Windows Server 2022 en una máquina virtual. No necesitas hardware especial, con VirtualBox o VMware Workstation te vale.
Windows Server 2022 (evaluación gratuita 180 días) · 4 GB RAM para el DC · 60 GB disco · Red interna en VirtualBox/VMware · Opcional: 1 VM adicional con Windows 10/11 para unir al dominio.
Paso a paso — Instalación del rol AD DS
Preparar la VM con Windows Server 2022
Instala Windows Server 2022 en una VM. Pon IP estática al servidor antes de promoverlo a DC. Esto es crítico — un DC nunca debe usar DHCP.
PowerShell — Configurar IP estática# Busca el nombre del adaptador
Get-NetAdapter
# Asigna IP estática
New-NetIPAddress -InterfaceAlias "Ethernet" -IPAddress "192.168.1.10" `
-PrefixLength 24 -DefaultGateway "192.168.1.1"
# DNS apuntando a sí mismo (el propio DC)
Set-DnsClientServerAddress -InterfaceAlias "Ethernet" `
-ServerAddresses "192.168.1.10"
Instalar el rol AD DS
Desde PowerShell como Administrador, instala el rol de Active Directory Domain Services.
PowerShellInstall-WindowsFeature -Name AD-Domain-Services -IncludeManagementTools
Promover el servidor a Domain Controller
Este comando crea el forest y el dominio nuevo. Cambia empresa.local por el nombre que quieras. El servidor se reiniciará solo al acabar.
Install-ADDSForest `
-DomainName "empresa.local" `
-DomainNetbiosName "EMPRESA" `
-InstallDns `
-SafeModeAdministratorPassword (ConvertTo-SecureString "P@ssw0rd123!" -AsPlainText -Force) `
-Force
La contraseña DSRM (Safe Mode) es para recuperación de desastres. Guárdala en un lugar seguro. Si la pierdes y el DC falla, estás en problemas.
Verificar que AD funciona
Tras el reinicio, comprueba que el dominio está activo y el DC responde correctamente.
PowerShell# Ver información del dominio
Get-ADDomain
# Comprobar que el DC responde
dcdiag /test:dns /v
# Ver todos los Domain Controllers
Get-ADDomainController -Filter *
Crear estructura básica de OUs
Organiza el AD antes de meter usuarios. Una buena estructura de OUs facilita enormemente la aplicación de GPOs.
PowerShell$domain = "DC=empresa,DC=local"
# OUs principales
New-ADOrganizationalUnit -Name "_EMPRESA" -Path $domain
New-ADOrganizationalUnit -Name "Usuarios" -Path "OU=_EMPRESA,$domain"
New-ADOrganizationalUnit -Name "Equipos" -Path "OU=_EMPRESA,$domain"
New-ADOrganizationalUnit -Name "Grupos" -Path "OU=_EMPRESA,$domain"
New-ADOrganizationalUnit -Name "IT" -Path "OU=Usuarios,OU=_EMPRESA,$domain"
New-ADOrganizationalUnit -Name "RRHH" -Path "OU=Usuarios,OU=_EMPRESA,$domain"
Crear usuarios de prueba
PowerShellNew-ADUser `
-Name "Juan García" `
-SamAccountName "jgarcia" `
-UserPrincipalName "jgarcia@empresa.local" `
-Path "OU=RRHH,OU=Usuarios,OU=_EMPRESA,DC=empresa,DC=local" `
-AccountPassword (ConvertTo-SecureString "Temporal123!" -AsPlainText -Force) `
-ChangePasswordAtLogon $true `
-Enabled $true
Unir un equipo cliente al dominio
Desde el equipo Windows 10/11 cliente, con IP estática y DNS apuntando al DC:
PowerShell (en el equipo cliente)# El equipo cliente debe tener DNS apuntando al DC (192.168.1.10)
Add-Computer -DomainName "empresa.local" `
-Credential (Get-Credential) `
-OUPath "OU=Equipos,OU=_EMPRESA,DC=empresa,DC=local" `
-Restart
Group Policy Objects (GPO)
Las GPOs son uno de los recursos más potentes de AD. Permiten aplicar configuraciones a cientos de usuarios y equipos automáticamente, sin tocarlos uno a uno.
¿Cómo funcionan?
Las GPOs se crean y vinculan a OUs, sitios o al dominio entero. Cuando un usuario inicia sesión o un equipo arranca, descarga las políticas que le corresponden del DC.
Las GPOs se aplican en este orden: Local → Site → Domain → OU. Las más cercanas al objeto (OU) ganan, a menos que haya un "Enforce" configurado.
GPOs más comunes en empresas
Política de contraseñas
Longitud mínima, complejidad, expiración, historial. Se aplica a nivel de dominio.
Fondos y restricciones
Imponer fondo corporativo, bloquear panel de control, ocultar unidades...
Mapeo de unidades
Conectar automáticamente unidades de red al iniciar sesión según el grupo del usuario.
Configurar firewall
Activar Windows Firewall, definir reglas, bloquear puertos en todos los equipos.
Crear una GPO básica — Política de contraseñas
PowerShell# Crear la GPO
New-GPO -Name "Politica-Contrasenas-Empresa"
# Vincularla al dominio
New-GPLink -Name "Politica-Contrasenas-Empresa" `
-Target "DC=empresa,DC=local"
# Las políticas de contraseña se configuran desde la GUI:
# Group Policy Management → editar GPO →
# Computer Configuration → Windows Settings →
# Security Settings → Account Policies → Password Policy
Comandos GPO del día a día
PowerShell# Forzar actualización de GPOs en el equipo local
gpupdate /force
# Ver GPOs aplicadas al usuario/equipo actual
gpresult /r
# Ver GPOs aplicadas en formato HTML (muy útil para troubleshooting)
gpresult /H C:\temp\gpo-report.html /F
# Forzar GPUpdate en un equipo remoto
Invoke-GPUpdate -Computer "PC-001" -Force
Resolución de Tickets IT (Modo Dual)
En el soporte técnico real, la eficiencia es clave. Aquí resolvemos los 7 casos más comunes combinando la facilidad de la interfaz gráfica (GUI) con la potencia de los comandos (PowerShell).
Escenario
El usuario ha fallado demasiadas veces la contraseña. Diagnóstico: Event ID 4740 en el DC.
ADUC -> Propiedades del usuario -> Pestaña Account -> Marcar "Unlock account".
Unlock-ADAccount -Identity "jgarcia"
Escenario
El usuario no recuerda su clave tras las vacaciones y no puede trabajar.
Clic derecho -> Reset Password -> Marcar "User must change password at next logon".
Set-ADAccountPassword "jgarcia" -Reset
Escenario
Configurar un nuevo PC para que forme parte de la red corporativa.
System -> About -> Rename this PC (advanced) -> Domain -> empresa.local.
Add-Computer -DomainName "empresa.local" -Restart
Escenario
Un usuario necesita acceso a los recursos del departamento de Marketing.
Propiedades -> Member Of -> Add -> "SG_Marketing".
Add-ADGroupMember -Identity "SG_Marketing" -Members "jgarcia"
Escenario
Se ha aplicado un cambio de fondo de pantalla pero el usuario no lo ve aún.
Reiniciar el equipo cliente o esperar el intervalo automático (90 min).
gpupdate /force
Escenario
Un empleado deja la empresa y hay que asegurar que no acceda a los datos.
Clic derecho -> Disable Account -> Mover a OU "Deshabilitados".
Disable-ADAccount -Identity "jgarcia"
Escenario
Los cambios en el Servidor A no se reflejan en el Servidor B.
Sites & Services -> Servers -> NTDS Settings -> Replicate Now.
repadmin /syncall /AdeP
Comandos esenciales
Referencia rápida de los comandos PowerShell más usados para administrar Active Directory en el día a día.
Usuarios
PowerShell# Buscar usuario por nombre
Get-ADUser -Filter {Name -like "*garcia*"} -Properties *
# Ver info de un usuario
Get-ADUser -Identity "jgarcia" -Properties LockedOut, PasswordLastSet, LastLogonDate
# Habilitar/deshabilitar cuenta
Enable-ADAccount -Identity "jgarcia"
Disable-ADAccount -Identity "jgarcia"
# Ver todos los usuarios deshabilitados
Search-ADAccount -AccountDisabled -UsersOnly
# Ver cuentas con contraseña expirada
Search-ADAccount -PasswordExpired -UsersOnly
# Usuarios que no han iniciado sesión en 90 días
$fecha = (Get-Date).AddDays(-90)
Get-ADUser -Filter {LastLogonDate -lt $fecha -and Enabled -eq $true} `
-Properties LastLogonDate | Select-Object Name, LastLogonDate
Grupos
PowerShell# Ver miembros de un grupo
Get-ADGroupMember -Identity "Domain Admins"
# Ver grupos de un usuario
Get-ADPrincipalGroupMembership -Identity "jgarcia" | Select-Object Name
# Añadir usuario a grupo
Add-ADGroupMember -Identity "GG_Marketing" -Members "jgarcia"
# Quitar usuario de grupo
Remove-ADGroupMember -Identity "GG_Marketing" -Members "jgarcia" -Confirm:$false
Equipos
PowerShell# Buscar equipo en AD
Get-ADComputer -Filter {Name -like "PC-*"} -Properties LastLogonDate
# Equipos que no se han conectado en 60 días (pueden estar obsoletos)
$fecha = (Get-Date).AddDays(-60)
Get-ADComputer -Filter {LastLogonDate -lt $fecha} -Properties LastLogonDate | Select-Object Name, LastLogonDate
# Ver en qué OU está un equipo
Get-ADComputer -Identity "PC-001" | Select-Object DistinguishedName
Diagnóstico general
PowerShell / CMD# Estado general del DC
dcdiag /v
# Ver roles FSMO (quién tiene cada rol maestro)
netdom query fsmo
# Ver info del dominio
Get-ADDomain
Get-ADForest
# Verificar comunicación con el DC desde el cliente
nltest /dsgetdc:empresa.local
Para ejecutar estos comandos desde tu equipo Windows 10/11 sin tener que conectarte al DC, instala las RSAT Tools: Get-WindowsCapability -Name RSAT* -Online | Add-WindowsCapability -Online. Así puedes administrar AD desde tu propio equipo.