1. Importance du NTP sur Ubuntu
Qu’est‑ce que le NTP ?
NTP (Network Time Protocol) est un protocole utilisé pour synchroniser avec précision l’heure des systèmes informatiques sur un réseau. Maintenir une heure exacte est essentiel pour la cohérence des journaux, le traitement des transactions et la communication réseau précise. Les écarts de temps peuvent entraîner des erreurs réseau et des incohérences de données, ce qui le rend particulièrement critique pour les opérations serveur.
Sur Ubuntu, chrony
est le choix recommandé, car il permet une synchronisation précise de l’heure même dans des environnements réseau instables. De plus, Chrony est optimisé pour une faible latence et une synchronisation rapide, ce qui le rend adapté aux environnements serveur et client.
2.uring NTP
Installing and Setting Up Chronyh3>
Chrony est le client NTP standard pour Ubuntu 18.04 et versions ultérieures. Suivez les étapes ci-dessous pour l’installer et configurer la synchronisation de l’heure à l’aide d’un serveur NTP.
Installation Steps
sudo apt update
sudo apt install chrony
Ensuite, démarrez le service Chrony et activez son démarrage automatique.
sudo systemctl start chrony
sudo systemctl enable chrony
Le fichier de configuration se trouve à /etc/chrony/chrony.conf
. Si vous utilisez des serveurs NTP proches du Japon, configurez-les comme suit :
server ntp.nict.jp iburst
server 0.jp.pool.ntp.org iburst
server 1.jp.pool.ntp.org iburst
server 2.jp.pool.ntp.org iburst
L’option iburst
permet une synchronisation plus rapide lors de la connexion initiale.

3. Optimisation et choix d’un serveur NTP
Utilisation du projet NTP Pool
Le projet NTP Pool est une initiative mondiale qui fournit des serveurs NTP optimisés selon les régions géographiques. En configurant plusieurs serveurs NTP, la fiabilité est améliorée, garantissant que si un serveur tombe en panne, d’autres peuvent prendre le relais.
L’exemple de configuration suivant utilise des serveurs NTP situés au Japon :
server ntp.nict.jp iburst
server 0.jp.pool.ntp.org iburst
server 1.jp.pool.ntp.org iburst
server 2.jp.pool.ntp.org iburst
4. Configuration du fuseau horaire
Utilisation de la timedatectl
Commande
Par défaut, Ubuntu est réglé sur le fuseau horaire UTC. Pour le changer en heure normale du Japon (JST), utilisez la commande suivante :
sudo timedatectl set-timezone Asia/Tokyo
Après avoir changé le fuseau horaire, vous pouvez vérifier les paramètres actuels avec la commande suivante :
timedatectl
5. Dépannage
Lorsque NTP ne se synchronise pas
Vérification du pare-feu
NTP utilise le port UDP 123, qui peut être bloqué par le pare-feu. Utilisez la commande suivante pour ouvrir le port 123 :
sudo ufw allow 123/udp
Vérification des horloges fausses
Utilisez la commande ntpq -p
pour vérifier si les serveurs NTP fonctionnent correctement. Les horloges fausses (serveurs fournissant une heure incorrecte) sont marquées d’un x
. Si elles sont détectées, envisagez de choisir d’autres serveurs ou d’ajuster la configuration.
Erreur de Stratum 16
Si le serveur NTP ne parvient pas à se synchroniser avec des serveurs de niveau supérieur, une erreur de Stratum 16 peut survenir. Cela indique que le serveur n’est pas correctement connecté ou qu’il y a un problème de réseau. Vérifiez les paramètres de votre serveur et de votre réseau, et reconfigurez un serveur NTP fiable.
Synchronisation manuelle de l’heure
Pour synchroniser manuellement l’heure avec Chrony, exécutez la commande suivante :
sudo ntpdate ntp.nict.jp
Vous pouvez également consulter les journaux de Chrony pour diagnostiquer les problèmes de synchronisation :
sudo journalctl -u chrony

6. Optimiser le NTP pour les environnements à forte charge
Ajustement de minpoll
et maxpoll
Dans les environnements où une synchronisation temporelle haute précision est requise, ajuster l’intervalle d’interrogation du NTP peut garantir une synchronisation plus fréquente et réduire le dérive temporelle. Voici un exemple de configuration pour augmenter la fréquence de synchronisation :
server ntp.nict.jp iburst minpoll 4 maxpoll 10
Gestion du NTP avec Juju
Dans les environnements cloud à grande échelle, Juju peut être utilisé pour automatiser la gestion du service NTP. Juju surveille la charge de chaque hôte et sélectionne l’hôte optimal comme serveur NTP. Les commandes suivantes déploient le NTP à l’aide de Juju :
juju deploy cs:ntp ntp
juju config ntp auto_peers=true
Cette automatisation améliore la gestion du NTP et assure une synchronisation temporelle efficace avec des charges distribuées.
7. Renforcer la sécurité
Restreindre l’accès aux serveurs NTP
Pour améliorer la sécurité, vous pouvez restreindre l’accès au serveur NTP à des adresses IP spécifiques. En ajoutant des règles de contrôle d’accès à /etc/chrony/chrony.conf
, vous pouvez autoriser les requêtes NTP uniquement depuis des réseaux ou des adresses IP spécifiques :
allow 192.168.1.0/24
Cela empêche les requêtes NTP non autorisées provenant de sources externes, renforçant la sécurité de votre réseau interne.