Régler la date et l’heure sur un serveur Linux (NTP)

Publié par Geoffrey Sauvageot-Berland le

NTP (Network Time Protocol) est un protocole permettant de distribuer l’heure sur un réseau informatique. Il assure la synchronisation des horloges à travers le réseau internet (ou un réseau local). Un client peut ainsi demander l’heure actuelle à un serveur et l’utiliser pour ajuster sa propre horloge.

Le maintien précis du temps est très utile pour la planification des sauvegardes, tâches diverses… pour surveiller les violations de la sécurité des réseaux informatiques.

Bien, après vous avoir rafraîchis la mémoire, nous allons passer aux explications :

Les distributions Linux ont longtemps utilisé ntpdate et ntpd pour ajuster l’horloge interne. Cette tâche est désormais assurée par timedatectl qui est installé par défaut depuis quelques années, sur les distro relativement ressentes.

Attention ! Si ntpdate ou ntpd sont installés sur votre machine, timedatectl se désactive pour permettre à l’utilisateur d’utiliser l’ancienne configuration. Ce principe permet d’éviter la coexistence de deux serveurs de temps sur le même appareil, il a pour défaut, en cas de mise à jour à partir d’une ancienne version de ntp ou ntpdate, de risquer de désactiver les services qui utilisent systemd. Pour suivre ce tutoriel, veuillez désinstaller ntpdate et ntpd.

apt autoremove ntpdate ntpd

Deux choix s’offrent à nous : La configuration « Manuel », ou bien la configuration automatique par le biais d’un serveur de temps (NTP). Afin d’éviter de potentielles incohérences, veillez à choisir uniquement l’une des deux méthodes en fonction de vos besoins.

Pour moi le bon choix s’orienterait en fonction du type d’usage que vous allez faire de votre machine.

  • Machines Serveurs : Configuration automatique
  • Machines Clientes : Configuration manuelle

Ce tutoriel a été réalisé avec Kali linux 2020.1

Mise à l’heure manuelle :

Commencez par vérifier les informations en tapant la commande suivante : timedatectl

timedatectl set-ntp false

Utiliser le même format pour changer l’heure avec cette commande :

timedatectl set-time "2020-06-13 16:40:00"

Je vous invite a éteindre, puis à allumer de nouveau votre machine pour vous assurer que l’heure reste juste.

Optionnel : Si le message d’erreur « Failed to parse time specification » est renvoyé, vérifier si la timezone est configurée (et correcte, en fonction de l’heure que vous avez indiqué !) -> Cf captures d’écran plus haut

Si vous habitez en France métropolitaine, le fuseau horaire doit être réglé sur : Europe/Paris. Dans le cas contraire, voici comment changer la zone de temps :

timedatectl list-timezones

timedatectl set-timezone "Europe/Paris"

Vérifions, la pris en compte des infos avec la commande :

timedatectl status

Configuration automatique

Éditons le fichier suivant : /etc/systemd/timesyncd.conf

Exemple avec des adresses IP au lieu de nom de domaine.
Permet la synchronisation NTP même si aucun serveur DNS n’est joignable :

Rechercher la section [Time]

[Time]
NTP=145.238.203.14 145.238.203.10

Les serveurs utilisés sont décrits ici : https://syrte.obspm.fr/spip/services/ref-temps/article/diffusion-de-l-heure-par-internet-ntp-network-time-protocol

Activation

timedatectl set-ntp true

timedatectl status

Vérifier la prise en compte du serveur avec :

systemctl status systemd-timesyncd.service

J’espère que vous êtes à l’heure à présent ! 🙂

À Bientôt

Brlndtech


En savoir plus sur Le Guide Du SecOps

Subscribe to get the latest posts sent to your email.

Catégories : Linux

Geoffrey Sauvageot-Berland

Ingénieur diplômé par l’état en Informatique et Cybersécurité. Généraliste, à l'origine administrateur systèmes et réseaux, j’occupe actuellement un poste d’auditeur en sécurité offensive. J’apprécie également la programmation/automatisation. Fondateur du blog : "Le Guide du SecOps", anciennement "Le Guide du SysOps"

En savoir plus sur Le Guide Du SecOps

Abonnez-vous pour poursuivre la lecture et avoir accès à l’ensemble des archives.

Continuer la lecture