diff --git a/HowtoNTP.md b/HowtoNTP.md index 2890d9e9..f770b5e0 100644 --- a/HowtoNTP.md +++ b/HowtoNTP.md @@ -1,37 +1,37 @@ -**Cette page a été importée automatiquement de notre ancien wiki mais n'a pas encore été révisée.** +--- +categories: system +title: Howto NTP +... -# Howto NTP +Le protocole [NTP (Network Time Protocol)](https://fr.wikipedia.org/wiki/Network_Time_Protocol) permet de maintenir à l'heure un système d'exploitation. +Il s'agit d'éviter les déviations d'heure, et **pas** de gérer les changements de fuseaux horaires ou les décalages d'heure été/hiver. +On utilise en général le protocole NTP version 4 (NTPv4) publié en juin 2010. Sur des petits équipements, on utilise parfois une version simplifiée de NTP appelée [SNTP (Simple Network Time Protocol)](https://tools.ietf.org/html/rfc4330). -Le protocole NTP (Network Time Protocol) permet de maintenir à l'heure un ordinateur. +Sur un serveur, nous recommandons d'être synchronisé avec les serveurs de temps de référence [pool.ntp.org](http://www.pool.ntp.org/). ## Installation -Installer un serveur NTP sous Linux : +Il existe des clients NTP en ligne de commande comme _ntpdate_ mais sur un +serveur nous conseillons d'utiliser un démon NTP qui maintiendra le système +synchronisé en permanence avec un temps de référence : ~~~ # apt install ntp + +# ntpd --help | head -1 +ntpd - NTP daemon program - Ver. 4.2.6p5 ~~~ -On le configure via le fichier _/etc/ntp.conf_. +## Configuration en tant que client NTP -## NTP sous OpenBSD +L'objectif est de maintenir le serveur synchronisé en permanence avec des serveurs NTP de référence. -OpenBSD installe par défaut OpenNTPD. - -Pour forcer une synchronisation immédiate : - -~~~ -# ntpd -s -~~~ - -## Serveur NTP uniquement pour la machine - -Pour un serveur utilisé uniquement pour la machine, -on aura principalement les directives suivantes : +La configuration se fait via le fichier `/etc/ntp.conf` : ~~~ # Le ou les serveurs sur lesquels on veut se synchroniser server ntp.evolix.net +server pool.ntp.org # Cette ligne sert à autoriser le contrôle TOTAL de l'horloge pour la machine locale # ce qui est le but recherché. @@ -42,16 +42,29 @@ restrict ::1 # On interdit toute requête de synchronisation VERS notre serveur restrict -4 ignore restrict -6 ignore - ~~~ -## Serveur NTP public +On peut vérifier le bon fonctionnement via la commande : -Pour un serveur sur lequel viendrait se synchroniser d'autres machines : +~~~ +# ntpq -p + remote refid st t when poll reach delay offset jitter +============================================================================== + ntp.example.com 213.251.153.35 3 u 50 64 3 19.404 -10.832 8.768 +~~~ + + +## Configuration en tant que serveur NTP + +Pour un serveur sur lequel viendrait se synchroniser d'autres machines, +on se synchronise avec plusieurs serveurs de strate 2 et on autorise +l'accès en lecture depuis d'autres machines via le fichier `/etc/ntp.conf` : + +On le configure via le fichier _/etc/ntp.conf_. ~~~ # Plusieurs serveurs (de strate 2 a priori) -# Voir +# Voir http://support.ntp.org/bin/view/Servers/StratumTwoTimeServers server ntp1.example.com server ntp2.example.com server ntp3.example.com @@ -66,23 +79,12 @@ restrict 127.0.0.1 restrict ::1 ~~~ -## Outils - -On vérifie son bon fonctionnement via : - -~~~ -# ntpq -p - remote refid st t when poll reach delay offset jitter -============================================================================== - ntp.example.com 213.251.153.35 3 u 50 64 3 19.404 -10.832 8.768 -~~~ - On peut voir la liste des clients qui se connectent au serveur via : ~~~ # ntpdc -c monlist -remote address port local address count m ver rstr avgint lstint -=============================================================================== +remote address port local address count m ver rstr avgint lstint +================================================================================ server1.example.com 41342 192.0.43.123 6404 3 4 1d0 27 2 server2.example.com 34764 192.0.43.123 6412 3 4 1d0 27 2 server3.example.com 44168 192.0.43.123 6970 3 4 1d0 25 10 @@ -90,11 +92,36 @@ server4.example.com 58051 192.0.43.123 2495 3 4 1d0 70 16 server5.example.com 123 192.0.43.123 2640 3 4 1d0 66 30 ~~~ -## Courbes Munin + +## NTP sous OpenBSD + +Sous OpenBSD on a le démon très léger [OpenNTPD](http://www.openntpd.org/). +Il est installé et lancé par défaut avec une configuration minimale via le fichier `/etc/ntpd.conf` : + +~~~ +servers pool.ntp.org +~~~ + +À noter que par défaut, la synchronisation NTP est lente, il faudra plusieurs minutes voire heures +si votre horloge a un fort décalage. + +Pour forcer une synchronisation immédiate : + +~~~ +# ntpd -s +~~~ + +On conseille de l'activer au démarrage : + +~~~ +# rcctl set ntpd flags "-s" +~~~ + +## Munin Pour les serveurs utilisant un serveur NTP uniquement pour leurs besoins, Munin intègre par défaut des scripts pour surveiller le décalage par rapport à un/des serveur(s) de temps. Il ne reste qu'à les activer. -Pour les serveurs NTP, les plugins ne sont pas officiels (_ntp_queries_ trouvables sur Internet...) +Pour les serveurs NTP, des plugins non officiels existent : _ntp_queries_ etc.