Synchro NTP
Fuseaux horaires
- Liste tous les fuseaux horaires disponibles que votre système peut utiliser :
timedatectl list-timezones
- Définir le fuseau horaire du système à Europe/Paris :
sudo timedatectl set-timezone Europe/Paris
Observatoire de Paris
ntp-p1.obspm.fr
ping NTP-P1.OBSPM.FR
Protocole NTP (Network Time Protocol)
1. Vérifier date et l’heure actuelle
date +"%Y-%m-%d %H:%M:%S" #
2. Configurer des serveurs NTP fiables
- Pour `systemd-timesyncd` (fichier `/etc/systemd/timesyncd.conf`) : Décommentez et modifiez :
[Time] NTP=0.pool.ntp.org 1.pool.ntp.org
ou
[Time] NTP=ntp-p1.obspm.fr # Observatoire de paris
3. Redémarrez
sudo systemctl restart systemd-timesyncd
4. Vérifiez les logs
journalctl -u systemd-timesyncd -b --no-pager | grep -i ntp
journalctl -u ntp -b # ou chronyd/systemd-timesyncd
5. Vérifier l’état de la synchronisation
timedatectl status # Pour systemd-timesyncd
Recherchez des erreurs comme “No response from server” ou “Network unreachable”.
6. Ajoutez la règle NTP
sudo ufw allow out 123/udp # Autorise les requêtes NTP sortantes
sudo ufw allow in 123/udp # Autorise les réponses NTP entrantes (optionnel, mais utile)
Remarque : Sur la plupart des machines, seule la règle out est nécessaire.
7. Vérifications
Testez un autre serveur NTP
Remplacez temporairement ntp-p1.obspm.fr par un pool public (dans /etc/systemd/timesyncd.conf) :
[Time]
NTP=0.fr.pool.ntp.org 1.fr.pool.ntp.org
Puis redémarrez le service :
sudo systemctl restart systemd-timesyncd
Vérifiez l’heure actuelle
Si l’heure système est très décalée, forcez une synchronisation manuelle :
sudo timedatectl set-ntp true
timedatectl status
8. Comment vérifier si le pare-feu bloque les échanges NTP ?
Pour déterminer si votre pare-feu (ufw ou autre) bloque les requêtes NTP (port UDP 123), voici plusieurs méthodes :
1. Vérifier les règles actives du pare-feu (ufw)
Votre commande sudo ufw status montre que le port 123/udp n’est pas explicitement autorisé.
Cependant, ufw peut bloquer NTP même si aucune règle ne le mentionne explicitement.
🔹 Solution : Autoriser NTP explicitement
sudo ufw allow out 123/udp # Autoriser les requêtes NTP sortantes
sudo ufw allow in 123/udp # Autoriser les réponses NTP entrantes (optionnel)
sudo ufw reload # Recharger les règles
Puis vérifiez à nouveau :
sudo ufw status | grep 123
2. Vérifier avec tcpdump (écoute du trafic NTP)
Ouvrez un terminal et lancez une capture réseau sur le port 123/udp :
sudo tcpdump -i any port 123 -n
Dans un autre terminal, forcez une requête NTP :
sudo systemctl restart systemd-timesyncd
Interprétation
- ✅ Paquets NTP visibles (ex:
IP VOTRE_IP.123 > SERVEUR_NTP.123: NTPv4, ...)
→ Le trafic NTP passe, le pare-feu ne bloque pas.
- ❌ Aucun paquet NTP capturé
→ Le pare-feu bloque probablement le trafic.
3. Vérifier les logs du pare-feu (ufw)
Si ufw bloque NTP, des logs apparaissent dans /var/log/ufw.log ou journalctl :
sudo grep -i DROP /var/log/ufw.log | grep 123
Ou :
journalctl -u ufw | grep -i "DPT=123"
Si vous voyez des messages comme :
[UFW BLOCK] IN= OUT=eth0 SRC=VOTRE_IP DST=SERVEUR_NTP LEN=76 DPT=123 ...
→ Le pare-feu bloque NTP.
4. Désactiver temporairement ufw pour tester
Pour confirmer que le problème vient bien du pare-feu :
sudo ufw disable
Puis testez à nouveau NTP :
sudo systemctl restart systemd-timesyncd
timedatectl status
Si ça fonctionne maintenant, le pare-feu était bien le problème.
6. Vérifier d’autres pare-feu (iptables/nftables)
ufw utilise iptables en arrière-plan. Si vous avez des règles personnalisées, elles peuvent bloquer NTP :
sudo iptables -L -n -v | grep 123
Si vous voyez une ligne avec DROP ou REJECT, NTP est bloqué.