Le protocole NTP pour Network Time Protocol est un protocole qui permet de synchroniser, via un réseau informatique, l’horloge locale d’ordinateurs auprès d’autres serveurs de références.
Dans un premier temps, vous allez vous connecter sur le Domain Controller de votre AD qui porte le rôle FSMO de PDC Emulator car c’est ce dernier qui sert de référence concernant l’horloge au sein d’un Active Directory. Si vous êtes dans une infra de test, vous n’avez peut-être pas modifié la disposition des rôles FSMO ou vous ne disposez que d’un unique DC, utilisez ce dernier.
Vérifier où se trouve le PDC Emulator
Pour vérifier que vous êtes bien sur un Domain Controller qui dispose bien du rôle FSMO de PDC Emulator, vous pouvez procéder comme suit :
- Connectez-vous en RDP au DC souhaité,
- Ouvrez Active Directory Users and Computers,
- Effectuez un clic droit sur le nom du domaine et sélectionnez dans le menu contextuel Operations Masters,
- Allez ensuite sur l’onglet PDC pour voir le nom du serveur DC qui porte ce rôle FSMO.
Vous pouvez également utiliser la commande suivante :
netdom query fsmo
Configurer et forcer la synchronisation NTP
Nous allons maintenant dire à notre Domain Controller de se synchroniser auprès d’un serveur spécifique. Il peut s’agir d’un serveur de temps public (peu recommandé car cela veut dire que c’est votre DC qui le contacte en direct) ou bien vous disposez d’un relais NTP au sein de votre infrastructure. Ce dernier se connecte à un serveur de temps public et c’est ensuite le DC (ou tout autre service) qui s’y connecte pour se mettre à jour automatiquement.
Pour info, le port utilisé pour communiquer est le 123/UDP (pour les ouvertures de flux). 🙂
Connectez-vous donc au Domain Controller et exécutez les commandes suivantes :
w32tm /config /manualpeerlist:192.168.9.53 /syncfromflags:manual /reliable:yes /update
Remplacez bien entendu l’adresse IP avec ce qui vous correspond. Vous pouvez trouver des serveurs de temps publics à l’adresse suivante : http://www.pool.ntp.org/zone/fr. Vous pouvez également utiliser un hostname dans la commande précédente plutôt qu’une IP.
Pour forcer la synchronisation, utilisez la commande suivante :
w32tm /resync
Enfin, une fois que le changement est pris en compte, vous pouvez également vérifier votre configuration en exécutant les commandes suivantes :
w32tm /query /configuration
w32tm /query /status
Vous pouvez ainsi vérifier que les synchronisations se passent bien. Notamment avec le paramètres suivant : Last Successful Sync time.
Article mis à jour le 25 Mai 2020.
Pour ma part, il fallait également redémarrer le service w32time pour que le resync soit pris en compte :
net stop w32time
net start w32time
Merci pour l’ajout d’infos Serge.
Bonne soirée, Thibault.
pour info pour moi fonctionne uniquement sur Powershell 😉
Il n’y a aucun raison mais l’important est que ça fonctionne pour vous également. Sachez que dans une fenêtre CMD, vous pouvez basculer en PowerShell en tapant « powershell ». La fenêtre demeure noire mais vous aurez les CmdLet PowerShell. Même chose dans un prompt PowerShell, vous pouvez taper « cmd » pour basculer en CMD classique (et la fenêtre restera bleue).