Guide de Synchronisation NTP

Guide complet pour la synchronisation horaire Windows et Linux

Version 1.0 | Janvier 2026

Téléchargez nos livres blancs NTP

Architecture, bonnes pratiques et exploitation en production

📄 Livre Blanc (FR) 📄 White Paper (EN)

1. Introduction au NTP

Le Network Time Protocol (NTP) est un protocole reseau concu pour synchroniser les horloges des systemes informatiques. Une synchronisation horaire precise est essentielle pour :

Objectif : Ce guide vous aidera a atteindre une precision <10ms avec les serveurs NTP publics, ou <1ms sur les reseaux locaux.

2. Comprendre les Strates NTP

Strate Description Precision typique
0 Horloges de reference (GPS, horloges atomiques) < 1 microseconde
1 Serveurs primaires connectes directement a la Strate 0 < 10 microsecondes
2 Serveurs secondaires synchronises sur la Strate 1 < 100 microsecondes
3-15 Serveurs en aval (chaque niveau ajoute ~1ms de latence) 1-100 millisecondes
Recommande : Utilisez des serveurs Strate 2 pour le meilleur equilibre entre precision et disponibilite. RDEM Systems opere des serveurs Strate 2 dans le NTP Pool a pool-ntp.rdem-systems.com.

3. Configuration Windows

3.1 Commandes rapides (PowerShell Administrateur)

Verifier l'etat actuel

w32tm /query /status

Voir la configuration NTP actuelle

w32tm /query /configuration

Configurer des serveurs NTP externes

w32tm /config /manualpeerlist:"0.pool.ntp.org 1.pool.ntp.org 2.pool.ntp.org 3.pool.ntp.org" /syncfromflags:manual /reliable:yes /update

Forcer une synchronisation immediate

w32tm /resync /force

Redemarrer le service de temps

net stop w32time && net start w32time

3.2 Serveurs NTP recommandes pour Windows

w32tm /config /manualpeerlist:"0.europe.pool.ntp.org 1.europe.pool.ntp.org 2.europe.pool.ntp.org pool-ntp.rdem-systems.com" /syncfromflags:manual /reliable:yes /update
Conseil : Utilisez toujours plusieurs serveurs NTP (au moins 3-4) pour la redondance et la detection des serveurs defaillants.
Configuration rapide : Serveurs Strate 2 RDEM Systems
Copiez cette commande PowerShell complete (executez en Administrateur) :
w32tm /config /manualpeerlist:"pa3.pool-ntp.rdem-systems.com pa4.pool-ntp.rdem-systems.com pa5.pool-ntp.rdem-systems.com" /syncfromflags:manual /reliable:yes /update; net stop w32time; net start w32time; w32tm /resync /force

3.3 Controleurs de domaine Windows Server

Pour les environnements Active Directory, l'emulateur PDC doit se synchroniser sur un NTP externe :

# Sur l'emulateur PDC (executez en Administrateur)
w32tm /config /manualpeerlist:"0.pool.ntp.org 1.pool.ntp.org" /syncfromflags:manual /reliable:yes /update

# Sur les autres controleurs de domaine (automatique depuis le PDC)
w32tm /config /syncfromflags:domhier /update

3.4 Depannage Windows Time

Probleme Commande
Service non demarre net start w32time
Enregistrer le service w32tm /register
Afficher les pairs w32tm /query /peers
Mode debug w32tm /debug /enable /file:C:\w32time.log /size:10000000 /entries:0-300

4. Configuration Linux

4.1 Utiliser Chrony (Recommande)

Chrony est le client NTP prefere pour les systemes Linux modernes. Il gere mieux les connexions intermittentes et les machines virtuelles que ntpd.

Installation

# Debian/Ubuntu
sudo apt install chrony

# RHEL/CentOS/Rocky/Alma
sudo dnf install chrony

Configuration (/etc/chrony/chrony.conf)

# Serveurs NTP principaux
server 0.pool.ntp.org iburst
server 1.pool.ntp.org iburst
server 2.pool.ntp.org iburst
server 3.pool.ntp.org iburst

# Optionnel : RDEM Systems Strate 2
server pool-ntp.rdem-systems.com iburst

# Enregistrer le taux de derive de l'horloge systeme
driftfile /var/lib/chrony/drift

# Autoriser l'acces client NTP depuis le reseau local
#allow 192.168.0.0/16

# Servir l'heure meme si non synchronise
#local stratum 10

# Repertoire des fichiers de log
logdir /var/log/chrony

# Sauter l'horloge si le decalage > 1 seconde (3 premieres mises a jour uniquement)
makestep 1.0 3

Commandes Chrony courantes

# Verifier l'etat de synchronisation
chronyc tracking

# Lister les sources NTP
chronyc sources -v

# Afficher les statistiques des sources
chronyc sourcestats

# Forcer la synchronisation
sudo chronyc makestep

# Verifier si chrony est synchronise
chronyc waitsync 1 0.01

4.2 Utiliser systemd-timesyncd (Simple)

Pour les configurations simples, systemd-timesyncd est leger et suffisant :

Configuration (/etc/systemd/timesyncd.conf)

[Time]
NTP=0.pool.ntp.org 1.pool.ntp.org 2.pool.ntp.org
FallbackNTP=pool-ntp.rdem-systems.com

Activer et demarrer

sudo systemctl enable systemd-timesyncd
sudo systemctl start systemd-timesyncd
timedatectl timesync-status

4.3 Utiliser ntpd (Legacy)

Pour les systemes necessitant ntpd :

Configuration (/etc/ntp.conf)

# Serveurs NTP
server 0.pool.ntp.org iburst prefer
server 1.pool.ntp.org iburst
server 2.pool.ntp.org iburst
server 3.pool.ntp.org iburst

# Fichier de derive
driftfile /var/lib/ntp/drift

# Restrictions par defaut
restrict default kod nomodify notrap nopeer noquery
restrict 127.0.0.1
restrict ::1

Commandes ntpd courantes

# Verifier les pairs
ntpq -p

# Verifier l'etat de sync
ntpstat

# Forcer la sync (si decalage > 1000s)
sudo ntpd -gq

4.4 Script de verification rapide

#!/bin/bash
# ntp-check.sh - Verification rapide de l'etat NTP

echo "=== Heure Systeme ==="
date
timedatectl

echo -e "\n=== Etat Chrony ==="
if command -v chronyc &> /dev/null; then
    chronyc tracking
    chronyc sources
else
    echo "Chrony non installe"
fi

echo -e "\n=== Etat systemd-timesyncd ==="
if systemctl is-active systemd-timesyncd &> /dev/null 2>&1; then
    timedatectl timesync-status
else
    echo "systemd-timesyncd non actif"
fi

5. Tester votre configuration

5.1 Outils de test en ligne

5.2 Tests en ligne de commande

# Tester la reponse d'un serveur NTP
ntpdate -q pool.ntp.org

# Ou avec Chrony
chronyd -Q "server pool.ntp.org iburst"

# Ou avec sntp
sntp -d pool.ntp.org

5.3 A quoi ressemble une bonne synchronisation

Metrique Bon Acceptable A surveiller
Decalage (Offset) < 10ms < 100ms > 100ms
Strate 2-3 4-5 > 5
Reach 377 (8 sur 8) > 177 < 77
Jitter < 10ms < 50ms > 50ms

6. Bonnes pratiques de securite

Important : Le NTP peut etre exploite pour des attaques DDoS par amplification et des attaques basees sur le temps. Suivez ces recommandations de securite.

6.1 Configuration du pare-feu

# Autoriser le client NTP (sortant uniquement)
iptables -A OUTPUT -p udp --dport 123 -j ACCEPT
iptables -A INPUT -p udp --sport 123 -m state --state ESTABLISHED -j ACCEPT

# Bloquer les requetes serveur NTP (si vous ne servez pas l'heure)
iptables -A INPUT -p udp --dport 123 -j DROP

6.2 Parametres de securite Chrony

# /etc/chrony/chrony.conf
# Desactiver cmdmon depuis le reseau
cmdport 0

# Ou restreindre a localhost
bindcmdaddress 127.0.0.1
bindcmdaddress ::1

6.3 Sources multiples

Configurez toujours au moins 4 serveurs NTP pour detecter et exclure les serveurs defaillants (la tolerance aux fautes byzantines necessite 3f+1 serveurs pour tolerer f serveurs defaillants).

7. Depannage des problemes courants

7.1 "No server suitable for synchronization found"

7.2 Decalage initial important

# Chrony : Sauter l'horloge immediatement
sudo chronyc makestep

# ntpd : Autoriser la correction de decalage important
sudo ntpd -gq

7.3 L'horloge derive apres la synchronisation

7.4 Problemes de temps des machines virtuelles

Bonne pratique VM : Utilisez UNE SEULE methode de synchronisation - soit les VM tools, soit NTP. Utiliser les deux cause des conflits.
# Desactiver la sync temps VMware Tools
vmware-toolbox-cmd timesync disable

# Desactiver la sync temps Hyper-V (PowerShell)
Disable-VMIntegrationService -Name "Time Synchronization" -VMName "VotreVM"

# Puis configurez NTP normalement

8. Aide-memoire rapide

Tache Windows Linux (Chrony)
Verifier l'etat w32tm /query /status chronyc tracking
Lister les sources w32tm /query /peers chronyc sources
Forcer la sync w32tm /resync /force chronyc makestep
Redemarrer le service net stop/start w32time systemctl restart chronyd

9. Serveurs NTP recommandes

Serveurs du Pool public

Infrastructure RDEM Systems

RDEM Systems opere des serveurs NTP Strate 2 contribuant au Pool NTP mondial. Nos serveurs (AS206014) sont surveilles 24h/24 et maintiennent une precision sub-milliseconde.

Documentation complementaire

Telechargez nos livres blancs pour une reference complete sur NTP :