
AD Forest Recovery Plan (avec conformité 3-2-1)
29 août 2025Thank you for reading this post, don't forget to subscribe!
Introduction
Active Directory est le cœur de ton infrastructure Microsoft.
Une forêt AD corrompue = arrêt total des authentifications, des GPO, des applications métier, et donc du business.
Un simple snapshot brut d’un hyperviseur, un ransomware, ou la suppression accidentelle d’une OU peuvent mettre ton SI à genoux.
Ce guide AD Forest Recovery Plan (avec conformité 3-2-1) détaille, étape par étape, les bonnes pratiques :
Sauvegarde System State native (GUI et PowerShell),
Sauvegarde VM-aware VSS (Hyper-V, VMware, Veeam),
Sauvegarde hors site Azure Backup (MARS),
Restauration non autoritative (classique),
Restauration autoritative (objets/OU),
Vérifications SYSVOL (DFSR),
Supervision & tests réguliers.
Chaque commande, chaque clic GUI, chaque capture est documenté.
Pré-requis
Un ou plusieurs contrôleurs de domaine Windows Server 2019/2022.
Un compte Administrateur du domaine et local.
Le mot de passe DSRM connu, stocké dans un coffre-fort.
Mettre à jour le mot de passe DSRM
1 | ntdsutil "set dsrm password" "reset password on server null" q q |
Ce secret sert à se connecter en Directory Services Restore Mode (DSRM) lors des restaurations critiques.
Explication des commandes ntdsutil pour le mot de passe DSRM
set dsrm password
Cette sous-commande de ntdsutil
permet de gérer le mot de passe du mode DSRM (Directory Services Restore Mode).
C’est ce mot de passe qui est utilisé quand un contrôleur de domaine démarre en mode restauration des services d’annuaire.
reset password on server null
Ici, on indique l’action à effectuer : réinitialiser le mot de passe DSRM.
Le mot-clé null
signifie que l’opération s’applique au serveur local.
Si tu voulais réinitialiser le mot de passe DSRM sur un autre contrôleur de domaine distant, tu remplacerais null
par le nom du serveur cible.
q q
Le premier q
permet de quitter le contexte set dsrm password
.
Le deuxième q
permet de sortir complètement de l’outil ntdsutil
.
Stratégie de sauvegarde 3-2-1 appliquée à AD
Principe :
3 copies de la sauvegarde,
2 supports différents,
1 copie hors site.
Matrice pratique :
Copie | Support | Emplacement | Fréquence | Outil recommandé | Objectif |
---|---|---|---|---|---|
C1 | System State | Disque local (E:) | Quotidienne | Windows Server Backup / wbadmin | Restauration rapide sur même DC |
C2 | Sauvegarde VM (VSS) | Repo backup (SAN/NAS) | Quotidienne | Veeam / DPM / Altaro | Rebuild VM/DC avec granularité |
C3 | Copie hors site | Azure ou NAS distant | Quotidienne/Hebdo | Azure Backup (MARS) | Protection sinistre/ransomware |
Sauvegarde System State native
Installer Windows Server Backup
GUI
Ouvrir Server Manager → Manage → Add Roles and Features.
Choisir Feature-based installation.
Cocher Windows Server Backup.
Installer.
PowerShell
1 | Install-WindowsFeature -Name Windows-Server-Backup -IncludeManagementTools |
Lancer une sauvegarde immédiate
GUI
Windows Server Backup → Local Backup → Backup Once.
Choisir Custom → Add Items → System State.
Dans Advanced Settings, onglet VSS Settings, laisser VSS Full (par défaut).
Choisir un disque dédié (ex :
E:
).Lancer le backup.
PowerShell
1 | wbadmin start systemstatebackup -backuptarget:E: -vssFull -quiet |
si tu as plusieurs solutions de sauvegarde qui tournent en parallèle, utilise -vssCopy
au lieu de -vssFull
.
Planifier la sauvegarde quotidienne
GUI
Windows Server Backup → Backup Schedule.
Ajouter System State.
Fréquence : Daily 02:00.
Destination : disque dédié ou volume
E:
.Valider.
PowerShell
1 2 3 | powershell.exe -NoProfile -ExecutionPolicy Bypass -File "C:\Scripts\Backup-SystemState.ps1" -BackupTarget "E:" -KeepVersions 14 -LogPath "C:\Logs\AD-SystemState-Backup.log" schtasks /Create /TN "AD-SystemState-02h" /XML "C:\Scripts\Backup-SystemState-Daily-02h.xml" /F |
Scripts fournis a télécharger ci-dessous :
Backup-SystemState.ps1
(sauvegarde + rotation + logs)Backup-SystemState-Daily-02h.xml
(tâche planifiée)
Sauvegarde VM-aware (Hyper-V, VMware, Veeam)
Vérifier les Writers VSS
1 | vssadmin list writers |
Tous les Writers doivent être Stable (notamment NTDS et DFS Replication).
Hyper-V — Production Checkpoints
GUI Hyper-V Manager
Clic droit VM (DC) → Settings → Checkpoints.
Coche Enable checkpoints + Production checkpoints.
Désactive l’option If production checkpoints fail, create standard….
Vérifie que les Integration Services (Time Sync, VSS) sont activés.
PowerShell
1 | Set-VM -Name "DC1" -CheckpointType Production |
VMware vSphere — Quiesced Snapshots
GUI vSphere
Clic droit VM → Snapshots → Take Snapshot.
Décoche Snapshot the VM’s memory.
Coche Quiesce guest file system.
Valider.
Veeam — Application-aware Processing
GUI Veeam
Crée un Backup Job.
Ajoute le DC.
Onglet Guest Processing → Enable Application-aware processing.
Veeam doit détecter le Domain Controller.
Coche Require successful processing.
Contrôle post-job : le rapport doit indiquer Application-aware: Success
.
Copie hors site avec Azure Backup (MARS)
Créer le Recovery Services Vault
Azure Portal → Create resource → Backup and Site Recovery → Recovery Services Vault.
Installer et configurer l’agent MARS
Télécharge l’agent MARS et les Vault Credentials.
Installe sur le DC.
Configure la passphrase (conserve-la hors ligne).
Crée une Backup Policy incluant System State.
Lance un Backup Now.
Surveiller :
Event Viewer (Microsoft-Windows-Backup, Azure Backup)
Console MARS (Job Status)
Restauration non autoritative (classique)
Entrer en DSRM
1 2 3 4 | bcdedit /set safeboot dsrepair shutdown /r /t 0 # Après restauration bcdedit /deletevalue safeboot |
Connexion avec le compte local + mot de passe DSRM.
Restaurer le System State
GUI
Windows Server Backup → Recover.
Source : This server (ou un backup distant).
Choisir date/heure.
Type : System State.
Mode : Original location.
Lancer.
PowerShell
1 2 | wbadmin get versions wbadmin start systemstaterecovery -version:08/28/2025-01:59 -quiet |
Vérifier après reboot
1 2 3 4 | repadmin /replsummary repadmin /showrepl dcdiag /v net share | findstr /i "SYSVOL NETLOGON" |
Restauration autoritative
Enchaînement correct
Restaurer System State en DSRM.
Ne pas redémarrer tout de suite.
Lancer une restauration autoritative des OU/objets voulus.
Redémarrer → réplication forcée vers les autres DC.
Exemple ntdsutil
1 2 3 4 5 6 | ntdsutil activate instance ntds authoritative restore restore subtree "OU=Paris,DC=contoso,DC=com" quit quit |
Possible aussi objet par objet :
1 | restore object "CN=J.Dupont,OU=Paris,DC=contoso,DC=com" |
Vérifications post-restauration
1 2 3 | repadmin /replsummary repadmin /showobjmeta "DC=contoso,DC=com" "OU=Paris,DC=contoso,DC=com" dcdiag /v |
SYSVOL (DFSR)
Vérifier backlog :
1 | dfsrdiag backlog /rgname:"Domain System Volume" /rfname:"SYSVOL Share" /smem:DC1 /rmem:DC2 |
Logs DFSR :
1 | Get-WinEvent -LogName "DFS Replication" | Select -First 20 | Format-List |
Jamais de rollback brut de snapshot DC.
Si SYSVOL reste bloqué → procédure DFSR officielle ou reconstruction DC.
Supervision & tests
Logs : Microsoft-Windows-Backup, Azure Backup.
EventID critiques : 5, 9, 14, 49.
Test annuel : simulation restauration autoritative en labo.
Commandes utiles
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | # Versions sauvegardées wbadmin get versions # Supprimer anciennes versions locales wbadmin delete systemstatebackup -keepVersions:14 -backupTarget:E: -quiet # Forcer réplication repadmin /syncall /AdeP # Vérifier santé AD dcdiag /c /v # Vérifier Writers VSS vssadmin list writers |
Bonus
Script GUI de restauration guidée a télécharger ci-dessous
Views: 22