Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
ntp [Le 22/10/2011, 09:42]
83.201.72.37 [NTP] typo
ntp [Le 07/06/2023, 19:51] (Version actuelle)
86.209.56.205 [Pré-requis]
Ligne 1: Ligne 1:
-{{tag>Intrepid Jaunty Karmic ​serveur réseau BROUILLON}}+{{tag> ​Xenial client ​serveur réseau BROUILLON}}
  
 ====== NTP ====== ====== NTP ======
  
-NTP (Network Time Protocol) est un protocole permettant de distribuer l'​heure sur un réseau informatique. Il se décline en deux faces : le client, [[ntpdate]],​ et le serveur, ntpd. +Ubuntu ​ a longtemps utilisé [[ntpdate]] et ntpd  pour ajuster l'​horloge interne des systèmes d'​exploitation,​ cette tâche est désormais assurée par [[timedatectl]] qui est installé par défaut dans votre distribution. ​NTP (Network Time Protocol) est un protocole permettant de distribuer l'​heure sur un réseau informatique. Il se décline en deux faces : le client, [[ntpdate]],​ et le serveur, ntpd.
  
 Chaque machine peut être à la fois serveur //et// client. Chaque machine peut être à la fois serveur //et// client.
  
-Chaque machine qui souhaite mettre à jour son horloge va sélectionner dans sa configuration un serveur de temps. En même temps que l'​heure,​ elle récupère un numero ​de strate, n, et se déclare elle-même de strate n+1.+Chaque machine qui souhaite mettre à jour son horloge va sélectionner dans sa configuration un serveur de temps. En même temps que l'​heure,​ elle récupère un numéro ​de strate, n, et se déclare elle-même de strate n+1.
  
-Un certains ​nombre de sources (horloges atomiques d'​universités,​ récepteurs GPS...) sont de strate 0 et connectées à des serveurs (strate 1) qui diffusent donc l'​heure. Ces mêmes serveurs fournissent l'​heure à des serveurs de strate 2, qui sont eux, généralement accessibles au public (serveurs d'​administrations,​ d'​universités ou de centres de recherches dont l'​accès est ouvert au public).+Un certain ​nombre de sources (horloges atomiques d'​universités,​ récepteurs GPS...) sont de strate 0 et connectées à des serveurs (strate 1) qui diffusent donc l'​heure. Ces mêmes serveurs fournissent l'​heure à des serveurs de strate 2, qui sont eux, généralement accessibles au public (serveurs d'​administrations,​ d'​universités ou de centres de recherches dont l'​accès est ouvert au public).
  
 Ce fonctionnement pyramidal a pour but de fournir une heure de qualité (déviant peu par rapport aux différentes mesures du temps, temps légal, universel et autre. Ces mesures sont fonction des lois de la physique.) tout en ne surchargeant pas les machines critiques que sont les serveurs de strates 0 et 1. Plus la strate de votre serveur est haute, plus votre signal de temps peut dévier par rapport à l'​heure "​moyenne",​ "​légale"​ ou autre. Toutefois, globalement le protocole fournit un signal de temps précis à la seconde, voire encore plus précis. Ce fonctionnement pyramidal a pour but de fournir une heure de qualité (déviant peu par rapport aux différentes mesures du temps, temps légal, universel et autre. Ces mesures sont fonction des lois de la physique.) tout en ne surchargeant pas les machines critiques que sont les serveurs de strates 0 et 1. Plus la strate de votre serveur est haute, plus votre signal de temps peut dévier par rapport à l'​heure "​moyenne",​ "​légale"​ ou autre. Toutefois, globalement le protocole fournit un signal de temps précis à la seconde, voire encore plus précis.
  
-**Cet article traite de l'​installation et de l'​utilisation d'un serveur ntp.** 
  
-===== Pré-requis ​=====+===== Client NTP ===== 
 +C'est l'​utilisateur final, il existe typiquement deux façons pour une machine cliente de se synchroniser sur un serveur : 
 + 
 +==== Par requête ==== 
 +Le client envoie une requête à un serveur et récupère la réponse.\\ 
 +Par défaut((d'​après [[https://​help.ubuntu.com/​lts/​serverguide/​NTP.html]])),​ //​[[timedatectl]]// ​ pré-installée (à partir de [[./​xenial]]),​ qui remplace [[./​ntpdate]],​ synchronise l'​heure au démarrage et lors d’activations de connexion réseau. 
 + 
 +==== Par écoute d'un broadcast/​multicast ==== 
 +Le client est à l'​écoute des émissions en broadcast/​multicast régulière de l'​heure. Cette solution est optimale, elle évite les requêtes vers le serveur.\\ 
 + 
 +FIXME Dans les versions récentes d'​Ubuntu,​ //​timesyncd//​ remplace la partie client de ntpd((https://​help.ubuntu.com/​lts/​serverguide/​NTP.html#​timesyncd)) 
 + 
 +<note important>​Cette solution nécessite d'​être dans un réseau maîtrisé, typiquement un réseau d'​entreprise où le routeur sert de serveur NTP</​note>​ 
 +Il faut [[:​tutoriel:​comment_installer_un_paquet|installer le paquet]] **[[apt>​ntp]]**. 
 +<​code>​sudo apt-get install ntp</​code>​ 
 +puis dé-commenter les deux lignes suivante dans le fichier **/​etc/​ntp.conf** : 
 +<file - /​etc/​ntp.conf>​ 
 +disable auth 
 +broadcastclient 
 +</​file>​ 
 + 
 +===== Serveur NTP ===== 
 + 
 +====Pré-requis ====
  
 NTP étant un protocole réseau, il vous faut une interface réseau active. Vous pouvez tout à fait diffuser un signal de temps sur un réseau //hors internet//. L'​horloge de référence sera celle du serveur ntp, celui-ci sera alors la strate 1 et sera uniquement serveur. NTP étant un protocole réseau, il vous faut une interface réseau active. Vous pouvez tout à fait diffuser un signal de temps sur un réseau //hors internet//. L'​horloge de référence sera celle du serveur ntp, celui-ci sera alors la strate 1 et sera uniquement serveur.
Ligne 21: Ligne 43:
 Si toutefois vous voulez disposer d'une heure synchrone avec le reste du monde, votre serveur ntp devra être à la fois serveur (pour diffuser l'​heure) //et// client (pour mettre sa propre horloge à jour auprès de serveurs de confiance). Pour ce faire, il doit disposer d'une connexion internet sortante. Si toutefois vous voulez disposer d'une heure synchrone avec le reste du monde, votre serveur ntp devra être à la fois serveur (pour diffuser l'​heure) //et// client (pour mettre sa propre horloge à jour auprès de serveurs de confiance). Pour ce faire, il doit disposer d'une connexion internet sortante.
  
-De plus il faut que cette connexion sortante supporte UDP et le port 123. Ceci est rarement le cas derrière les hotspots wifi publiques ​par exemple. Dans une telle situation ntpdate donnera uniquement un message comme "​no ​server ​suitable for synchronization found"​. +De plusil faut que cette connexion sortante supporte UDP et le port 123. Ceci est rarement le cas derrière les hotspots wifi publics ​par exemple. Dans une telle situation ntpdate donnera uniquement un message comme "​no ​Server ​suitable for synchronization found"​. 
-===== Installation ​=====+ 
 + 
 +==== Installation ====
  
-Il vous suffit d'​[[:​tutoriel:​comment_installer_un_paquet|intaller ​le paquet]] **[[apt://ntp|ntp]]**.+Il vous suffit d'​[[:​tutoriel:​comment_installer_un_paquet|installer ​le paquet]] **[[apt>ntp]]**.
  
-Il existe aussi une implémentation BSD du protocole qui est disponible sur Ubuntu via le paquet [[apt://​openntpd|openntpd]].+Il existe aussi une implémentation BSD du protocole qui est disponible sur Ubuntu via le paquet ​**[[apt>openntpd]]**.
  
-===== Configuration ​=====+==== Configuration ====
  
 Toute la configuration du serveur se fait sur le fichier /​etc/​ntp.conf Toute la configuration du serveur se fait sur le fichier /​etc/​ntp.conf
Ligne 82: Ligne 106:
 Le démon ntpd va de plus utiliser des algorithmes pour déterminer quelle source est la meilleure. Le démon ntpd va de plus utiliser des algorithmes pour déterminer quelle source est la meilleure.
  
-===== Utilisation ​=====+==== Utilisation ====
  
 On va lister ici les commandes qui permettent un bon diagnostic de l'​état de votre serveur et qui sont fournies dans son paquet (ntp). On va lister ici les commandes qui permettent un bon diagnostic de l'​état de votre serveur et qui sont fournies dans son paquet (ntp).
Ligne 99: Ligne 123:
  ​web1.euromise.c 195.113.144.201 ​ 2 u   ​52 ​  ​64 ​   7   ​52.944 ​  ​-3.416 ​ 24.792  ​web1.euromise.c 195.113.144.201 ​ 2 u   ​52 ​  ​64 ​   7   ​52.944 ​  ​-3.416 ​ 24.792
  ​4504ds1-vo.1.fu .INIT. ​         16 u    -   ​64 ​   0    0.000    0.000   0.000  ​4504ds1-vo.1.fu .INIT. ​         16 u    -   ​64 ​   0    0.000    0.000   0.000
 +
 </​code>​ </​code>​
  
Ligne 121: Ligne 146:
 Pour utiliser votre serveur en tant que source pour les ordinateurs de votre réseau, reportez vous à l'​article [[ntpdate]] et mettez son adresse en source dans le paramètre NTPSERVERS. Pour utiliser votre serveur en tant que source pour les ordinateurs de votre réseau, reportez vous à l'​article [[ntpdate]] et mettez son adresse en source dans le paramètre NTPSERVERS.
  
-==== Serveurs NTP =====+==== Les Serveurs NTP existants ​====
  
 Le Comité Réseau des Universités maintient une liste des grands serveurs ntp français [[http://​www.cru.fr/​services/​ntp/​serveurs_francais|ici]].\\ Le Comité Réseau des Universités maintient une liste des grands serveurs ntp français [[http://​www.cru.fr/​services/​ntp/​serveurs_francais|ici]].\\
-Des serveurs de strate 2 sont aussi listés ici : [[http://​support.ntp.org/​bin/​view/​Servers/​StratumTwoTimeServers|serveurs ntp]].\\+Des serveurs de strate 2 sont aussi listés ici : [[https://​support.ntp.org/​bin/​view/​Servers/​StratumTwoTimeServers|serveurs ntp]].\\
  
 Ajoutez ici les serveurs que vous connaissez ou que vous rendez publics : Ajoutez ici les serveurs que vous connaissez ou que vous rendez publics :
Ligne 132: Ligne 157:
  
  
-==== le pool NTP ====+=== le pool NTP ===
  
 Le pool de serveurs ntp est un projet global qui vise à fournir un service ntp fiable tout en répartissant la charge du service sur de nombreux serveurs. Le pool de serveurs ntp est un projet global qui vise à fournir un service ntp fiable tout en répartissant la charge du service sur de nombreux serveurs.
  
-=== Utiliser le pool ===+== Utiliser le pool ==
  
 Si vous le souhaitez, vous pouvez l'​utiliser dans votre liste de sources : Si vous le souhaitez, vous pouvez l'​utiliser dans votre liste de sources :
- +<file bash /​etc/​ntp.conf>​ 
-''​server 0.fr.pool.ntp.org''​ +server 0.fr.pool.ntp.org 
 +server 1.fr.pool.ntp.org 
 +</​file>​
 Le service est décomposé en zones par pays : ch, de, fr ... et par continent : asia, africa, europe. Enfin, vous ajoutez (ou non) les préfixes 0, 1 et 2. Le service est décomposé en zones par pays : ch, de, fr ... et par continent : asia, africa, europe. Enfin, vous ajoutez (ou non) les préfixes 0, 1 et 2.
 +En général vous pouvez utiliser **pool.ntp.org**
 Le pool va vous renvoyer une adresse de serveur au hasard pris dans la zone considéré. Vous aurez ainsi souvent des sources près de chez vous et fiables. Le pool va vous renvoyer une adresse de serveur au hasard pris dans la zone considéré. Vous aurez ainsi souvent des sources près de chez vous et fiables.
  
-=== Rejoindre le pool ===+== Rejoindre le pool ==
  
-Si vous avez une ip fixe (et pas un client dyndns ou une ip dhcp par exemple), on vous encourage à rejoindre vous aussi le pool de serveurs ntp. La charge sur le serveur (bande passante et cpu) est très faible. Il vous suffit d'​avoir un serveur stable. Vous pouvez ainsi rendre un grand service à la communauté à peu de frais, y compris en tant que simple particulier.+Si vous avez une IP fixe (et pas un client dyndns ou une ip dhcp par exemple), on vous encourage à rejoindre vous aussi le pool de serveurs ntp. La charge sur le serveur (bande passante et cpu) est très faible. Il vous suffit d'​avoir un serveur stable. Vous pouvez ainsi rendre un grand service à la communauté à peu de frais, y compris en tant que simple particulier.
  
-[[http://​www.pool.ntp.org/​fr/​join.html|Rejoindre le pool]]+[[https://​www.pool.ntp.org/​fr/​join.html|Rejoindre le pool]]
  
 Il vous faut dans ce cas rendre votre serveur public. Si vous êtes derrière un pare-feu, il vous faut ouvrir le port ntp (normalement le 123). Il vous faut dans ce cas rendre votre serveur public. Si vous êtes derrière un pare-feu, il vous faut ouvrir le port ntp (normalement le 123).
Ligne 156: Ligne 183:
 \\ \\
 Si vous êtes derrière un routeur type box, il vous faut rediriger le port 123 de votre box vers le port 123 de votre serveur. Si vous êtes derrière un routeur type box, il vous faut rediriger le port 123 de votre box vers le port 123 de votre serveur.
 +
 +===== Tests =====
 +Un moyen simple de voir s'il y a un broadcast NTP dans votre réseau local (généralement le router):
 +<​code>​sudo tcpdump -n "​broadcast or multicast"​ | grep NTP</​code>​
 +
 +Pour voir si des clients se connectent à votre serveur NTP :
 +<​code>​ntpq -c mrulist</​code>​
  
 ===== Liens ===== ===== Liens =====
  
-[[wpfr>​Network_Time_Protocol|le protocole ntp sur wikipedia]]\\+[[wpfr>​Network_Time_Protocol|le protocole ntp sur wikipedia]]\\ 
 + 
 +* [[https://​www.pool.ntp.org/​zone/​fr|le pool ntp fr]]
  
-[[http://www.pool.ntp.org/zone/fr|le pool ntp fr]]+[[https://www.it-connect.fr/​configurer-un-client-ntp-sous-linux/|Configurer un client NTP sous Linux]]
 ---- ----
  
-Contributeurs : [[utilisateurs:​stephaneguedon]] , [[utilisateurs:​wido]]+Contributeurs : [[utilisateurs:​stephaneguedon]] , [[utilisateurs:​wido]], M4T
  • ntp.1319269371.txt.gz
  • Dernière modification: Le 15/12/2011, 15:20
  • (modification externe)