Blog · 19

Un chequeo de los lunes para Active DirectoryA Monday-morning health check for Active Directory

Controladores de dominio, replicación, DHCP, directivas de grupo y cuentas de administrador desde una exportación de solo lectura, ordenados por lo que hay que arreglar hoy.Domain controllers, replication, DHCP, Group Policy and admin accounts from one read-only export, ordered by what to fix today.

El problema

dcdiag y repadmin te lo cuentan todo, de controlador en controlador. La mayoría de problemas de Active Directory avisan antes: un reloj que se desvía, DFSR parado después de parchear, un enlace de replicación fallando en silencio durante semanas, un ámbito de DHCP lleno la semana que llegan las incorporaciones, una cuenta de administrador que nadie usa desde la primavera. El lunes a primera hora quieres una página con lo que hay que arreglar hoy.

Qué he hecho

  • scripts/Export-ADHealth.ps1: una exportación de solo lectura con los módulos estándar de RSAT (dominio y bosque, cada DC, metadatos de replicación, ámbitos y conmutación de DHCP, vínculos de GPO, grupos privilegiados, cuentas inactivas, líneas NO_CLIENT_SITE). Si una sección falla, el resto se exporta igual.
  • Seis áreas de comprobaciones: controladores de dominio, replicación (con el riesgo de tombstone), DHCP, directivas de grupo, acceso privilegiado (incluida la antigüedad de la contraseña de krbtgt) e higiene del directorio.
  • health_check.md con Arreglar hoy / Planificar esta semana / Limpieza, findings.csv con el primer paso de cada hallazgo y report.html.
  • Comparación con la ejecución de la semana anterior: qué es nuevo y qué se ha resuelto.

Cómo está hecho

Python solo con la librería estándar y PowerShell. La demo es un dominio inventado con seis DC en cuatro sedes y fallos puestos a propósito. 15 tests. Un runbook corto para el chequeo semanal.

Qué aprendí

Un DC que no responde debe dar un hallazgo, no diez. Y casi todo el valor está en el orden de la lista: qué hay que arreglar antes de las 9:00 y qué puede ir a un cambio.

Siguientes pasos

  • Ejecutar Export-ADHealth.ps1 con RSAT desde un puesto de administración unido al dominio.
  • En servidores en otros idiomas, adaptar la lectura de la salida de w32tm.
  • Programarlo para el lunes a primera hora y guardar la ejecución anterior para la comparación.

¿Quieres llevarlo a tu entorno o adaptarlo a tu caso? Escríbeme y lo vemos.

The problem

dcdiag and repadmin tell you everything, one domain controller at a time. Most Active Directory problems give a warning first: a clock drifting, DFSR stopped after patching, a replication link failing quietly for weeks, a DHCP scope full the week new joiners arrive, an admin account nobody has used since spring. On Monday morning you want one page with what to fix today.

What I built

  • scripts/Export-ADHealth.ps1: one read-only export with the standard RSAT modules (domain and forest, every DC, replication metadata, DHCP scopes and failover, GPO links, privileged groups, inactive accounts, NO_CLIENT_SITE lines). If one section fails, the rest is still exported.
  • Six areas of checks: domain controllers, replication (with the tombstone risk), DHCP, Group Policy, privileged access (including the krbtgt password age) and directory hygiene.
  • health_check.md with Fix today / Plan this week / Housekeeping, findings.csv with the first step for each finding and report.html.
  • Comparison with last week's run: what is new and what was resolved.

How it is built

Python with the standard library only, plus PowerShell. The demo is a made-up domain with six DCs in four sites and faults placed on purpose. 15 tests. A short runbook for the weekly check.

What I learned

An unreachable DC should give one finding, not ten. And most of the value is in the order of the list: what has to be fixed before 09:00 and what can go to a change.

Next steps

  • Run Export-ADHealth.ps1 with RSAT from an admin workstation joined to the domain.
  • On servers in other languages, adapt the parsing of the w32tm output.
  • Schedule it for Monday morning and keep last week's run for the comparison.

Want to bring it to your environment or adapt it to your case? Get in touch and we can look at it together.

Tech Career Lab · newsletter

¿Te ha servido? Cada dos semanas envío una idea práctica para perfiles IT: LinkedIn, proyectos, networking y procesos de selección.Found this useful? Every two weeks I send one practical idea for IT professionals: LinkedIn, projects, networking and hiring processes.

Apúntate y llévate las 33 ideasSign up and get the 33 ideas →