GNU/Linux >> Tutoriels Linux >  >> Ubuntu

Serveur NTP Ubuntu 20.04

NTP signifie National Time Protocol et est utilisé pour la synchronisation d'horloge sur plusieurs ordinateurs. Un serveur NTP est chargé de maintenir un ensemble d'ordinateurs synchronisés les uns avec les autres. Sur un réseau local, le serveur doit être capable de maintenir tous les systèmes clients à moins d'une milliseconde les uns des autres.

Une telle configuration serait nécessaire si, par exemple, les systèmes avaient besoin de démarrer ou d'arrêter une tâche à l'unisson à un moment précis. Dans cet article, nous allons vous montrer comment configurer un serveur NTP sur Ubuntu 20.04 Focal Fossa et comment configurer un système client pour synchroniser son heure système avec ledit serveur.

Dans ce didacticiel, vous apprendrez :

  • Comment installer et configurer le serveur NTP
  • Comment se connecter à un serveur NTP depuis une machine cliente

Serveur NTP Ubuntu 20.04

Configuration logicielle requise et conventions de ligne de commande Linux
Catégorie Exigences, conventions ou version du logiciel utilisée
Système Installation d'Ubuntu 20.04 ou mise à niveau d'Ubuntu 20.04 Focal Fossa
Logiciel Démon de serveur NTP
Autre Accès privilégié à votre système Linux en tant que root ou via le sudo commande.
Conventions # - nécessite que les commandes linux données soient exécutées avec les privilèges root soit directement en tant qu'utilisateur root, soit en utilisant sudo commande
$ – nécessite que les commandes linux données soient exécutées en tant qu'utilisateur normal non privilégié

Installer le serveur NTP

Pour commencer, nous devons installer le serveur NTP. Vous pouvez le faire en ouvrant un terminal et en saisissant la commande suivante :

$ sudo apt install ntp

Configurer le serveur NTP

Le serveur NTP est déjà préconfiguré avec certains pools de serveurs, que vous pouvez voir dans le /etc/ntp.conf fichier.

$ cat /etc/ntp.conf

Les pools de serveurs par défaut dans notre fichier de configuration NTP

Généralement, il est préférable de remplacer ces lignes par des pools de serveurs de votre propre pays, ou du moins de votre propre continent. Moins il y a de latence entre vous et un serveur de temps, mieux c'est. Vous pouvez utiliser le site Web NTP Pool Project pour trouver le pool de serveurs NTP le plus proche de votre emplacement.

Trouvez vos pools de serveurs les plus proches sur le site Web du projet de pool NTP

Une fois que vous avez trouvé la zone la plus pertinente, il vous suffit d'ajouter les lignes dans votre fichier de configuration en utilisant nano ou votre éditeur de texte préféré :

$ sudo nano /etc/ntp.conf

Entrez les serveurs dans le fichier de configuration NTP

Une fois ces modifications effectuées, enregistrez et quittez le fichier de configuration. Redémarrez le service NTP pour que les modifications prennent effet :

$ sudo systemctl restart ntp

Vérifiez l'état du service NTP à tout moment avec cette commande :

$ sudo systemctl status ntp

L'état du démon du serveur NTP

Les clients essayant de se connecter à votre serveur NTP le feront sur le port UDP 123 . Si le pare-feu UFW est activé sur votre système, assurez-vous de le configurer pour autoriser ces demandes de connexion entrantes :

$ sudo ufw allow from any to any port 123 proto udp
Rules updated
Rules updated (v6)

Configuration du client NTP

Maintenant que nous avons un serveur NTP opérationnel, nous allons montrer comment les systèmes clients peuvent s'y connecter pour la synchronisation de l'heure. Suivez simplement les étapes ci-dessous sur vos systèmes clients :

  1. Tout d'abord, nous devons installer le ntpdate emballer. Nous pouvons l'utiliser pour vérifier la connectivité entre le client et le serveur de temps NTP que nous avons créé.
    $ sudo apt install ntpdate
    
  2. Ensuite, essayons de synchroniser manuellement l'heure de notre système avec le serveur NTP. Tapez la commande suivante, en remplaçant l'adresse IP ou le nom d'hôte de votre serveur NTP, le cas échéant :
    $ sudo ntpdate 192.168.1.55
    

    La connexion au serveur NTP est réussie

  3. Cela semble fonctionner comme prévu. Ensuite, assurez-vous de désactiver le timesyncd par défaut d'Ubuntu service, car cela entrera en conflit avec nos tentatives de synchronisation avec le serveur NTP.
    $ sudo timedatectl set-ntp off
    
  4. Maintenant, nous devons installer le démon NTP sur notre système client afin de pouvoir le configurer pour extraire l'heure de notre serveur NTP que nous avons configuré précédemment.
    $ sudo apt install ntp
    
  5. Nous n'avons qu'à ajouter une seule ligne à notre ntp.conf fichier, et nous pouvons le faire très facilement avec une seule commande. Assurez-vous simplement de remplacer l'adresse IP ci-dessous par le nom d'hôte ou l'adresse IP de votre serveur NTP.
    $ sudo bash -c "echo server 192.168.1.55 prefer iburst >> /etc/ntp.conf" 
    
  6. Ensuite, redémarrez le démon NTP :
    $ sudo systemctl restart ntp
    
  7. Enfin, utilisez le ntpq commande pour lister la file d'attente de synchronisation de l'heure NTP :
    $ ntpq -p
    

    Sortie de la commande ntpq

    L'astérisque * dans la capture d'écran ci-dessus indique que notre serveur NTP 192.168.1.55 est sélectionné comme source de synchronisation de l'heure actuelle. Cela devrait rester le cas à moins que le serveur NTP ne se déconnecte, car c'est ainsi que nous l'avons configuré dans le ntp.conf fichier de configuration.

    Lisez l'annexe ci-dessous pour plus d'informations sur la façon d'interpréter le ntpq sortie de la commande.

Annexe

Interprétation de la sortie de la colonne de commande NTPQ :

  • à distance – Le serveur distant avec lequel vous souhaitez synchroniser votre horloge
  • refid – La strate en amont vers le serveur distant. Pour les serveurs de la strate 1, ce sera la source de la strate 0.
  • er – Le niveau de la strate, de 0 à 16.
  • t – Le type de connexion. Peut être « u » pour monodiffusion ou multidiffusion, « b » pour diffusion ou multidiffusion, « l » pour horloge de référence locale, « s » pour homologue symétrique, « A » pour un serveur de multidiffusion, « B » pour un serveur de diffusion, ou "M" pour un serveur multicast
  • quand – La dernière fois que le serveur a été interrogé pour l'heure. La valeur par défaut est les secondes, ou "m" s'affichera pour les minutes, "h" pour les heures et "d" pour les jours.
  • sondage – La fréquence à laquelle le serveur est interrogé pour l'heure, avec un minimum de 16 secondes à un maximum de 36 heures. Il est également affiché sous forme de valeur à partir d'une puissance de deux. En règle générale, il est compris entre 64 secondes et 1 024 secondes.
  • atteindre – Il s'agit d'une valeur octale de décalage vers la gauche de 8 bits qui indique le taux de réussite et d'échec de la communication avec le serveur distant. Le succès signifie que le bit est défini, l'échec signifie que le bit n'est pas défini. 377 est la valeur la plus élevée.
  • retard – Cette valeur est affichée en millisecondes et indique le temps d'aller-retour (RTT) de votre ordinateur communiquant avec le serveur distant.
  • compensation – Cette valeur est affichée en millisecondes, en utilisant la moyenne des carrés, et indique à quel point votre horloge est éloignée de l'heure indiquée par le serveur. Il peut être positif ou négatif.
  • gigue – Ce nombre est une valeur absolue en millisecondes, indiquant l'écart quadratique moyen de vos décalages.

Interprétation de la sortie de la ligne de commande NTPQ :

  • ” “ Rejeté car non valide. Il se peut que vous ne puissiez pas communiquer avec la machine distante (elle n'est pas en ligne), cette source de temps est un ".LOCL". refid time source, il s'agit d'un serveur de strate élevée ou le serveur distant utilise cet ordinateur comme serveur NTP.
  • x Rejeté par l'algorithme d'intersection.
  • . Rejeté par débordement de table (non utilisé).
  • Rejeté par l'algorithme de cluster.
  • + Inclus dans l'algorithme de combinaison. C'est un bon candidat si le serveur actuel avec lequel nous synchronisons est supprimé pour une raison quelconque.
  • # Bon serveur distant à utiliser comme sauvegarde alternative. Cela ne s'affiche que si vous avez plus de 10 serveurs distants.
  • * L'homologue système actuel. L'ordinateur utilise ce serveur distant comme source de temps pour synchroniser l'horloge
  • o Pair d'impulsions par seconde (PPS). Ceci est généralement utilisé avec les sources de temps GPS, bien que n'importe quelle source de temps fournissant un PPS fera l'affaire. Ce code de pointage et le code de pointage précédent "*" ne seront pas affichés simultanément.

Réf :https://pthree.org/2013/11/05/real-life-ntp/

Conclusion

Dans cet article, nous avons découvert le National Time Protocol (NTP) et comment configurer notre propre serveur NTP sur Ubuntu 20.04 Focal Fossa. Nous avons également vu comment configurer une machine cliente (ou plusieurs machines, comme c'est généralement le cas) pour se connecter au serveur NTP pour la synchronisation de l'heure.


Ubuntu
  1. Comment configurer le serveur NTP sur Ubuntu et LinuxMint

  2. Configurer le serveur Urbackup sur Ubuntu 20.04

  3. Ubuntu – Serveur Vcenter sous Linux ?

  4. Interface graphique du serveur Ubuntu

  5. Logo du serveur Ubuntu

Installation d'Ubuntu 22.04 PostgreSQL

Installation du serveur Samba sur Ubuntu 14.10

Installation du serveur Samba sur Ubuntu 15.10

Comment synchroniser l'heure à l'aide du serveur NTP dans Ubuntu

Comment installer le serveur et le client NTP sur Ubuntu

Ubuntu 19.04 :Configurer le serveur NTP