En este artículo, hablaremos sobre la copia de seguridad del controlador de dominio de Active Directory y aprenderemos cómo configurar la copia de seguridad automática de AD utilizando PowerShell y las herramientas integradas de Windows Server.
¿Necesito hacer una copia de seguridad de Active Directory?
Muchas veces he escuchado de mis compañeros administradores que si tiene varios controladores de dominio (3, 8, etc.) que están distribuidos en diferentes ubicaciones geográficas, no necesita hacer una copia de seguridad de su AD en absoluto. Dado que con varios controladores de dominio ha proporcionado tolerancia a errores de dominio. Es el esquema cuando la falla simultánea de todos los controladores de dominio tiende a 0, y si falla uno de los controladores de dominio, puede implementar rápidamente uno nuevo en el mismo sitio y eliminar el anterior usando ntdsutil.
Sin embargo, en mi práctica me he encontrado con varios escenarios en los que todos los controladores de dominio resultaron dañados: en un caso, todos los controladores de dominio (aunque había más de 20 de ellos en diferentes ciudades) fueron encriptados debido a una captura de contraseña de administrador de dominio por un ransomware que utiliza la herramienta mimikatz (para evitar estos escenarios, consulte «¿Cómo proteger Windows contra Mimikatz?» y «Protección de grupos de administradores en Active Directory»), en otro caso, una replicación de un archivo NTDS.DIT dañado resultó en un error de dominio.
Por lo tanto, puede y debe hacer una copia de seguridad de su AD. Debe hacer una copia de seguridad de al menos los controladores de dominio clave y los propietarios de roles FSMO (Operaciones flexibles de un solo maestro) con regularidad. Puede obtener la lista de controladores de dominio con roles FSMO usando este comando:
netdom query fsmo
Obtener la última fecha de copia de seguridad del controlador de dominio de Active Directory
Puede verificar cuándo se realizó una copia de seguridad del controlador de dominio de Active Directory actual la última vez con la herramienta repadmin:
repadmin /showbackup
Puede ver que en este ejemplo, la última vez que se realizó una copia de seguridad de las particiones DC y AD fue 2017-02-18 (es probable que la copia de seguridad no se haya realizado desde que se implementó el controlador de dominio).
Puede obtener el estado de la copia de seguridad para todos los controladores de dominio en el dominio mediante este comando:
repadmin /showbackup *
Realización de una copia de seguridad del controlador de dominio de AD mediante la copia de seguridad del servidor de Windows
Si no tiene ningún software de copia de seguridad especial, puede utilizar el Copia de seguridad de Windows Server (este componente ha reemplazado a la herramienta NTBackup). Puede configurar una tarea de copia de seguridad automática en la GUI de copia de seguridad de Windows Server, pero tiene algunas restricciones. La principal desventaja es que una nueva copia de seguridad del servidor siempre sobrescribirá la anterior.
Cuando realiza una copia de seguridad de un controlador de dominio mediante WSB, crea un Estado del sistema respaldo. El estado del sistema incluye la base de datos de Active Directory (NTDS.DIT), los objetos de política de grupo, el contenido del directorio SYSVOL, el registro, los metadatos de IIS, la base de datos de AD CS y otros archivos y recursos del sistema. La copia de seguridad se crea a través del Servicio de instantáneas de volumen (VSS).
Puede comprobar si la copia de seguridad de Windows Server está instalada mediante el cmdlet Get-WindowsFeature de PowerShell:
Get-WindowsFeature Windows-Server-Backup
Si WSB no está instalado, puede agregarlo con PowerShell:
Add-Windowsfeature Windows-Server-Backup –Includeallsubfeature
O instale Windows Server Backup a través de Administrador del servidor -> Características.
Guardaré la copia de seguridad de este controlador de dominio AD en una carpeta de red compartida en un servidor de copia de seguridad dedicado. Por ejemplo, una ruta al directorio de respaldo puede verse así: \mun-back1backupdc01
. Configure los permisos NTFS para esta carpeta: otorgue permisos de acceso de lectura y escritura a Administradores de dominio y Controladores de dominio grupos solamente.
Copia de seguridad de Active Directory con PowerShell
Intentemos hacer una copia de seguridad de un controlador de dominio con PowerShell. Para mantener varios niveles de copias de seguridad de AD, almacenaremos cada copia de seguridad en un directorio separado con la fecha de creación de la copia de seguridad como nombre de carpeta.
Import-Module ServerManager
[string]$date = get-date -f 'yyyy-MM-dd'
$path=”\mun-back1backupdc1”
$TargetUNC=$path+$date
$TestTargetUNC= Test-Path -Path $TargetUNC
if (!($TestTargetUNC)){
New-Item -Path $TargetUNC -ItemType directory
}
$WBadmin_cmd = "wbadmin.exe START BACKUP -backupTarget:$TargetUNC -systemState -noverify -vssCopy -quiet"
Invoke-Expression $WBadmin_cmd
Ejecute el script de PowerShell. Aparecerá la consola de wbadmin. Contiene información sobre el proceso de creación de la copia de seguridad del disco (instantánea):
The backup operation to \mun-back1backupdc12020-06-01 is starting. Creating a shadow copy of the volumes specified for backup...
Mi primer intento de hacer una copia de seguridad de un DC falló con un error (el controlador de dominio era una máquina virtual VMWare):
Detailed error: The filename, directory name, or volume label syntax is incorrect. The backup of the system state failed [01.06.2020 8:31].
Abrí el registro de errores de WSB: C: Windows Logs WindowsServerBackup Backup_Error-01-06-2020_09-23-14.log.
Hubo el siguiente error en el archivo:
Error in backup of C:windows\systemroot during enumerate: Error [0x8007007b] The filename, directory name, or volume label syntax is incorrect.
De cara al futuro, diré que el problema estaba en la ruta incorrecta de un controlador de VMWware Tools.
Para corregir el error, inicie el símbolo del sistema elevate y ejecute este comando:
DiskShadow /L writers.txt
list writers detailed
Después de obtener la lista, escriba quit y abra C: Windows System32 writers.txt. Busque la cadena que contiene «ventanas \» en eso.
En mi caso, la cadena que había encontrado se veía así:
File List: Path = c:windows\systemrootsystem32drivers, Filespec = vsock.sys
Como puede ver, se utiliza una ruta incorrecta al controlador VSOCK.SYS.
Para corregir la ruta, abra el Editor del registro y vaya a la clave reg HKLM SYSTEM CurrentControlSet Services vsock.
Cambiar el Ruta de la imagen valor de
systemrootsystem32DRIVERSvsock.sys
para
System32DRIVERSvsock.sys
Ejecute el script de respaldo nuevamente.
Si la copia de seguridad se ha realizado correctamente, verá los siguientes mensajes en el registro:
The backup operation successfully completed. The backup of volume (C:) completed successfully. The backup of the system state successfully completed [01.06.2020 09:52].
Verifique la hora de la última copia de seguridad de CC:
repadmin /showbackup
Ahora dice que la última copia de seguridad del controlador de dominio se realizó hoy.
El tamaño del directorio con la copia de seguridad del controlador de dominio en el servidor es de aproximadamente 9 GB. De hecho, tenemos un archivo VHDX que puede usar para restaurar el sistema operativo desde WSB, o puede montar manualmente el archivo VHDX y copiar los archivos o carpetas que necesita.
Si hay varios controladores de dominio en Active Directory, no es necesario realizar una copia de seguridad de todos ellos. Para ahorrar espacio, es suficiente hacer una copia de seguridad periódica de la base de datos de Active Directory – ntds.dit expediente. Para hacerlo, use estos comandos:
$WBadmin_cmd = "wbadmin start backup -backuptarget:$path -include:C:WindowsNTDSntds.dit -quiet"
Invoke-Expression $WBadmin_cmd
El tamaño de dicha copia de seguridad será de solo 50 a 500 MB, según el tamaño de la base de datos de AD.
Para una copia de seguridad automática de AD, cree el C: PS Backup_AD_DC.ps1 script en su DC. Ejecútelo de acuerdo con la programación usando Programador de tareas. Puede crear una tarea del Programador desde la GUI o con PowerShell. El requisito principal es que la tarea debe ejecutarse bajo el NT AUTHORITYSYSTEM
cuenta con el Ejecutar con los privilegios más altos opción marcada. Para una copia de seguridad diaria del controlador de dominio de AD, cree la siguiente tarea programada:
$Trigger= New-ScheduledTaskTrigger -At 02:00am -Daily
$User= "NT AUTHORITYSYSTEM"
$Action= New-ScheduledTaskAction -Execute "PowerShell.exe" -Argument "C:PSBackup_AD_DC.ps1"
Register-ScheduledTask -TaskName "BackupAD-DC-daily" -Trigger $Trigger -User $User -Action $Action -RunLevel Highest –Force
Entonces, hemos configurado una copia de seguridad de AD, y hablaremos de formas de restaurar AD desde una copia de seguridad del estado del sistema del controlador de dominio en nuestro próximo artículo.
Artículos Interesantes
Relacionados:
Contenido