I. Présentation
Dans ce tutoriel, nous allons apprendre à configurer le client NTP de Debian 12 pour que la machine synchronise la date et l’heure à partir d’un serveur de temps externe. Nous verrons aussi comment configurer le fuseau horaire et comment afficher la configuration actuelle.
Sur Linux, il existe plusieurs paquets pour configurer un client NTP et ainsi se synchroniser à partir d’un serveur de temps externe (externe à l’entreprise ou un autre serveur). Nous pouvons citer ntpd, l’application Chrony, ainsi que Systemd grâce à son service Timesyncd. C’est lui que l’on va configurer sur Debian 12, car il est présent nativement !
Version originale de l’article : 08 avril 2014
II. Configurer le fuseau horaire
Commencez par vérifier la date et l’heure actuelle de votre machine, via cette commande :
date
Puis, vous allez commencer par définir le bon fuseau horaire. Pour cela, listez les fuseaux horaires disponibles via la commande indiquée ci-dessous. Appuyez sur la barre d’espace pour faire défiler la liste ou « CTRL + C » pour quitter.
timedatectl list-timezones
Pour se caler sur l’heure française, configurez votre machine pour qu’elle utilise le fuseau horaire « Europe/Paris » comme ceci :
sudo timedatectl set-timezone Europe/Paris
III. Vérifier l’état du service systemd-timesyncd
Désormais, nous allons voir comment configurer systemd-timesyncd sur la machine. Commencez par vérifier l’état du service, afin de vous assurer de sa présence…
sudo systemctl status systemd-timesyncd.service
Voici le résultat obtenu sur une machine Debian 12 :
S’il n’est pas installé sur votre machine, sachez que vous pouvez l’ajouter via cette commande :
sudo apt-get update
sudo apt-get install systemd-timesyncd
Quand c’est fait, activez son démarrage automatique et lancez-le dès maintenant :
sudo systemctl enable --now systemd-timesyncd
Comment effectuer la configuration ? C’est ce que nous verrons dans la prochaine partie de ce tutoriel.
IV. Configurer le client NTP
Avant d’évoquer la configuration, exécutez la commande ci-dessous pour afficher la configuration actuelle. Ce sera l’occasion de voir si vous avez bien défini le bon fuseau horaire. Vous devriez aussi voir la mention « System clock synchronized: no« , ce qui montre que la machine n’est pas synchronisée avec une source externe.
timedatectl
Désormais, éditez le fichier de configuration :
sudo nano /etc/systemd/timesyncd.conf
Puis, ajoutez une ligne pour définir l’adresse de votre serveur NTP. Vous pouvez définir plusieurs valeurs, si besoin. Ici, j’utilise une source publique associée à un pool de serveurs : fr.pool.ntp.org (voir cette page). Il y a d’autres options, mais elles ne sont pas indispensables pour configurer le client NTP.
NTP=fr.pool.ntp.org
Quand c’est fait, enregistrez et fermez le fichier.
Puis, exécutez la commande suivante pour activer la synchronisation NTP :
sudo timedatectl set-ntp true
Redémarrez le service systemd-timesyncd :
sudo systemctl restart systemd-timesyncd.service
À partir de maintenant, votre machine devrait chercher à se synchroniser via les serveurs de la source fr.pool.ntp.org. Pour vous en assurer, voici deux commandes utiles pour le diagnostic et pour afficher la configuration actuelle.
timedatectl
timedatectl show-timesync --all
Cette fois-ci, nous pouvons constater que l’option « System clock synchronized » est à « yes« , ce qui indique que la synchronisation NTP fonctionne.
V. Conclusion
Quelques minutes suffisent pour configurer le client NTP d’une machine Debian 12 ! Libre à vous d’utiliser la source de temps de votre choix, tout en sachant qu’il est préférable d’utiliser le même pool NTP sur vos équipements pour garder une cohérence. Une mauvaise synchronisation peut avoir un impact sur l’horodatage des journaux, mais aussi sur l’authentification (avec Windows).