Chapitre 15. Configurer NTP en utilisant Chrony Suite
En informatique, un chronométrage précis est important pour un certain nombre de raisons. Dans les réseaux' par exemple, un horodatage précis des paquets et des journaux est requis. Sur les systèmes Linux, le protocole
NTP est implémenté par un démon exécuté dans l'espace utilisateur.
Le démon de l'espace utilisateur met à jour l'horloge système exécutée dans le noyau. L'horloge système garde l'heure en utilisant diverses sources horaires. Habituellement, un compteur d'horodatage (« Time Stamp Counter », ou TSC) est utilisé. TSC est un enregistrement CPU qui compte le nombre de cycles depuis sa dernière réinitialisation. Ce compteur est très rapide, possède une haute résolution, et aucune interruption ne se produit.
Un choix se produit entre les démons
ntpd et chronyd, qui se trouvent dans les référentiels des paquets ntp et chrony respectivement. Cette section décrit l'utilisation de la suite d'utilitaires chrony pour mettre à jour l'horloge système sur les systèmes n'entrant pas dans la catégorie conventionnelle des serveurs dédiés, toujours en cours de fonctionnement et sur le réseau de manière permanente.
15.1. Introduction à Chrony Suite Copier lienLien copié sur presse-papiers!
Copier lienLien copié sur presse-papiers!
Chrony est composé de
chronyd, un démon exécuté dans l'espace utilisateur, et de chronyc, un programme de ligne de commande pour effectuer des ajustements sur chronyd. Les systèmes qui ne sont pas connectés de manière permanente, ou qui ne sont pas alimentés de manière permanente, prennent un temps relativement long à ajuster leurs horloges système avec ntpd. Ceci est dû au fait que de nombreuses petites corrections sont effectuées sur la base des observations de dérive et de décalage des horloges. Les changements de température, qui peuvent être significatives lors du démarrage d'un système, affectent la stabilité des horloges matérielles. Même si les ajustements commencent dès les premières millisecondes du démarrage d'un système, la précision acceptable peut prendre entre zéro et dix secondes pour un redémarrage de type « warm » à plusieurs heures, selon les besoins, l'environnement d'exploitation, et le matériel. chrony est une implémentation du protocole NTP différente de ntpd, et peut ajuster l'horloge système plus rapidement.
15.1.1. Différences entre ntpd et chronyd Copier lienLien copié sur presse-papiers!
Copier lienLien copié sur presse-papiers!
L'une des différences principales entre
ntpd et chronyd réside dans les algorithmes utilisés pour contrôler l'horloge de l'ordinateur. Ce que chronyd peut faire mieux que ntpd inclut :
chronydpeut bien fonctionner lorsque les références horaires externes sont accessibles de manière intermittente, tandis quentpda besoin d'interroger les références horaires régulièrement pour bien fonctionner.chronydpeut bien fonctionner même lorsque le réseau est encombré pendant de longues périodes.chronydpeut habituellement synchroniser l'horloge plus rapidement et avec une meilleure précision.chronyds'adapte rapidement aux changements soudains de vitesse de l'horloge, par exemple lorsque ceux-ci sont dus à des changements de température de l'oscillateur à cristal, tandis quentpdpourrait nécessiter plus de temps pour se réajuster.- Dans la configuration par défaut,
chronydn'arrête jamais l'heure après la synchronisation de l'horloge pendant le démarrage système, afin de ne pas perturber les autres programmes en cours d'exécution.ntpdpeut également être configuré de manière à ne jamais arrêter le temps, mais doit utiliser différents moyens pour ajuster l'horloge, ce qui entraîne un certain nombre d'inconvénients. chronydpeut ajuster la vitesse de l'horloge sur un système Linux dans une plage plus importante, ce qui lui permet d'opérer même sur des machines ayant une horloge endommagée ou instable. Par exemple, sur certaines machines virtuelles.
Ce que
chronyd peut faire, que ntpd ne peut pas faire :
chronydfournit la prise en charge des réseaux isolés, où l'unique méthode de correction du temps possible est manuelle, comme lorsque l'administrateur regarde l'horloge.chronydpeut examiner les erreurs corrigées lors de différentes mises à jour pour estimer la vitesse à laquelle l'ordinateur gagne ou perd du temps, et utilise ces estimations pour ajuster l'horloge système conséquemment.chronydfournit la prise en charge pour calculer la quantité de gains ou pertes de temps de l'horloge temps réel, l'horloge matérielle, et maintient l'heure lorsque l'ordinateur est éteint. Ces données peuvent être utilisées lorsque le système démarre pour définir l'heure système à l'aide d'une valeur ajustée de l'heure prise de l'horloge temps réel. Cette fonctionnalité, au moment de la rédaction de ce guide, est uniquement disponible sur Linux.
Ce que
ntpd peut faire, que chronyd ne peut pas faire :
ntpdprend totalement en chargeNTPversion 4 (RFC 5905), y compris la diffusion, multidiffusion, et le Manycast des clients et serveurs, ainsi que le mode Orphelin. Il prend également en charge des schémas d'authentification supplémentaires basés sur chiffrement de clé publique (RFC 5906).chronydutiliseNTPversion 3 (RFC 1305), qui est compatible avec la version 4.ntpdinclut des pilotes pour de nombreuses horloges de référence, tandis quechronydrepose sur d'autres programmes, comme par exemple gpsd pour accéder aux données des horloges de référence.
15.1.2. Choisir les démons NTP Copier lienLien copié sur presse-papiers!
Copier lienLien copié sur presse-papiers!
- Chrony devrait être pris en considération pour tous les systèmes qui sont fréquemment suspendus ou déconnectés de manière intermittente puis reconnectés à un réseau, comme des systèmes virtuels et mobiles.
- Le démon
NTP(ntpd) doit être considéré pour les systèmes habituellement en cours d'exécution de manière permanente. Les systèmes qui requièrent l'utilisation d'une adresseIPde diffusion ou de multidiffusion, ou qui effectuent l'authentification de paquets avec le protocoleAutokeydevraient envisager d'utiliserntpd. Chrony prend uniquement en charge l'authentification de clés symétriques à l'aide d'un code d'authentification de message (MAC) avec MD5, SHA1 ou avec des fonctions de hachage plus robustes, tandis quentpdprend également en charge le protocole d'authentificationAutokey, qui peut utiliser le système PKI.Autokeyest décrit dans RFC 5906.