Les outils Active Directory pour diagnostiquer un domaine
Ouvertures de session lentes, objets absents sur un site, stratégies qui ne s'appliquent pas : trois outils Microsoft suffisent pour localiser la panne avant de toucher à quoi que ce soit.
Quand Active Directory dysfonctionne, la tentation est de redémarrer un contrôleur de domaine ou de forcer une réplication. Mieux vaut d'abord mesurer. Microsoft fournit pour cela des outils en ligne de commande et un module PowerShell, tous livrés avec les outils d'administration de serveur distant (RSAT) ou présents d'office sur un contrôleur de domaine.
Installer les outils
Sur un contrôleur de domaine, dcdiag et repadmin sont déjà disponibles. Depuis un poste d'administration, installez les outils AD DS des RSAT, ce qui suppose Windows 10 ou 11 en édition Professionnel ou Entreprise. La procédure complète figure dans la page sur les outils gratuits pour administrateur Windows.
Add-WindowsCapability -Online -Name Rsat.ActiveDirectory.DS-LDS.Tools~~~~0.0.1.0
Les commandes ci-dessous ne font que lire l'état de l'annuaire, à une exception signalée. Lancez-les d'abord dans un domaine de lab, et ayez une sauvegarde de l'état système des contrôleurs avant toute correction en production.
| Outil | Question à laquelle il répond |
|---|---|
dcdiag | ce contrôleur de domaine est-il en bonne santé ? |
repadmin | les contrôleurs répliquent-ils entre eux ? |
Get-ADReplicationFailure | quels échecs de réplication sont en cours, en PowerShell ? |
dcdiag : la santé d'un contrôleur de domaine
Microsoft décrit dcdiag comme un outil qui analyse l'état des contrôleurs de domaine d'une forêt et signale les problèmes à résoudre. Il doit être lancé avec des droits d'administration, depuis une invite élevée.
dcdiag /s:dc01
dcdiag /s:dc01 /f:C:\Temp\dcdiag-dc01.txt
dcdiag /e /q
/s désigne le contrôleur testé, /f écrit le résultat dans un fichier, /e teste tous les serveurs de l'entreprise et /q n'affiche que les erreurs. /c lance tous les tests, y compris ceux qui ne tournent pas par défaut.
Les tests à lire en premier
- Replications : signale une dernière tentative en échec, une réplication désactivée ou une latence supérieure à 12 heures ;
- Services : vérifie que les services dont dépend AD (NETLOGON, NTDS, KDC, DFSR, W32TIME…) tournent avec le bon type de démarrage ;
- SysVolCheck : lit la valeur
SysVolReadypour confirmer que SYSVOL est prêt ; - DNS : avec
dcdiag /test:DNS, contrôle délégation, redirecteurs, mises à jour dynamiques et enregistrements.
Une remarque de Microsoft évite bien des faux positifs : bloquer l'ICMP en interne empêche dcdiag de fonctionner normalement, car le test de connectivité inclut un ping.
dcdiag /fixn'est pas un mode lecture : il corrige les noms de principal de service (SPN) du compte d'ordinateur du contrôleur. Ne l'utilisez qu'après avoir lu le résultat du test MachineAccount.
Comme une bonne partie des pannes AD sont des pannes DNS, la page sur le DNS intégré à Active Directory et sa réplication complète ce diagnostic.
repadmin : la réplication entre contrôleurs
Microsoft liste les dépendances de la réplication AD DS : connectivité réseau sur les ports du service, résolution DNS des partenaires, authentification, horloges synchronisées à moins de 5 minutes pour Kerberos, base de données, topologie et moteur de réplication. Une panne de réplication vient presque toujours de l'une d'elles.
Pour voir l'état de réplication de tous les contrôleurs, Microsoft propose cette commande, qui ouvre un tableau filtrable :
repadmin /showrepl * /csv | ConvertFrom-Csv | Out-GridView
Sans interface graphique, exportez le même rapport vers un fichier CSV :
repadmin /showrepl * /csv > C:\Temp\showrepl.csv
Dans le tableau, triez par heure de dernière réussite, écartez les contrôleurs supprimés et ne gardez que les lignes dont l'heure du dernier échec n'est pas nulle. Le dernier état d'échec donne le code d'erreur à rechercher dans la documentation Microsoft.
Get-ADReplicationFailure : la même question en PowerShell
Le module Active Directory pour PowerShell, installé avec les RSAT, propose Get-ADReplicationFailure, qui renvoie les échecs actuellement associés à un contrôleur de domaine. Le paramètre -Scope élargit la recherche à un site, un domaine ou toute la forêt :
Get-ADReplicationFailure -Target dc01
Get-ADReplicationFailure -Target "lab.local" -Scope Domain
Un résultat vide est une bonne nouvelle. Pour un contrôle régulier, placez cette commande dans un script planifié avec une gestion d'erreurs propre.
Et la sécurité du domaine
Ces outils diagnostiquent la santé, pas l'exposition. Deux opérations de durcissement reviennent souvent après un incident : changer le mot de passe du compte krbtgt, qui dépend d'une réplication saine, et la suppression de SMBv1. Les autres tutoriels sont dans la rubrique Windows Server et sur l'accueil de Pixelabs.
Questions fréquentes
Quels sont les outils de dépannage Active Directory ?
Les principaux outils Microsoft sont dcdiag pour la santé des contrôleurs, repadmin pour la réplication et le module PowerShell Active Directory, avec Get-ADReplicationFailure. Ils sont livrés avec les RSAT et présents sur les contrôleurs de domaine.
Comment vérifier la santé d'un contrôleur de domaine ?
Lancez dcdiag /s:<nom-du-contrôleur> dans une invite élevée, ou dcdiag /e /q pour n'afficher que les erreurs de tous les contrôleurs de l'entreprise.
Comment voir les erreurs de réplication AD ?
Avec repadmin /showrepl * /csv, exporté vers un fichier ou envoyé vers Out-GridView, ou avec Get-ADReplicationFailure en PowerShell.
Pourquoi dcdiag échoue-t-il alors que le contrôleur fonctionne ?
Souvent parce que l'ICMP est filtré entre les machines. Microsoft précise que bloquer l'ICMP en interne empêche dcdiag de fonctionner comme prévu.
L'heure peut-elle casser la réplication Active Directory ?
Oui. Microsoft cite une précision de l'heure à moins de 5 minutes parmi les dépendances de la réplication, pour l'authentification Kerberos.