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