Guide de configuration et d’optimisation NTP sous Ubuntu | Obtenir une synchronisation temporelle précise et une sécurité renforcée

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.

侍エンジニア塾