Problème de NTP (openntpd) sur pfSense 2.0
-
Bonjour à tous,
J'utilise pfSense 2.0 RC3.
Dans « System: General Setup », j'ai indiqué le serveur NTP de strate 1 suivant : ntp-p1.obspm.fr (qui se résoud en 145.238.203.14).
Dans « Services : NTP server », le service est bien activé et il écoute sur les interfaces LAN et loopback.
Les règles de firewall sont celles par défaut après installation.
Sur pfSense :
-
la patte LAN a l'adresse 10.1.1.254 (réseau 10.1.1.0/24)
-
la patte WAN a l'adresse XX.XX.XX.XX
Sur le LAN, j'ai un client Ubuntu natty avec le paquet ntp 1:4.2.6.p2+dfsg-1ubuntu5.1 à l'adresse 10.1.1.1.
La configuration de ntp sur 10.1.1.1 est la suivante (/etc/ntp.conf) :
driftfile /var/lib/ntp/ntp.drift statistics loopstats peerstats clockstats filegen loopstats file loopstats type day enable filegen peerstats file peerstats type day enable filegen clockstats file clockstats type day enable server 10.1.1.254 restrict -4 default kod notrap nomodify nopeer noquery restrict -6 default kod notrap nomodify nopeer noquery restrict 127.0.0.1 restrict ::1
Afin de vérifier que tout fonctionne correctement, j'exécute les commandes suivantes sur 10.1.1.1 :
$ ntptrace
localhost.localdomain: stratum 3, offset 0.099028, synch distance 0.017055
10.1.1.254: timed out, nothing received
***Request timed out$ ntpq -p -n
remote refid st t when poll reach delay offset jitter*10.1.1.254 71.83.72.185 2 u 135 256 377 0.342 99.028 74.275
Je constate 2 problèmes :
-
Le message « ***Request timed out » pour ntptrace.
-
Le fait que le « refid » du serveur NTP de pfSense soit « 71.83.72.185 » alors que cela ne correspond pas à l'adresse IP du serveurs NTP indiqué. Si je multiplie les essais, l'adresse IP indiquée n'est pas toujours la même.
Sur pfSense, la configuration de NTP est la suivante (/var/etc/ntpd.conf) :
servers ntp-p1.obspm.fr listen on 10.1.1.254 listen on 127.0.0.1
Quelques tests sur pfSense :
netstat -p udp -n | grep -E '.123 '
udp4 0 0 XX.XX.XX.XX.9501 145.238.203.14.123
udp4 0 0 127.0.0.1.123 .
udp4 0 0 10.1.1.254.123 .ntpq -p -n
localhost: timed out, nothing received
J'ai essayé d'indiquer plutôt l'adresse IP du serveur NTP dans pfSense mais le résultat identique. Cela devrait donc éliminer d'éventuels problèmes de résolution.
Ayant lu qu'il pouvait y avoir dans certaines circonstances quelques problèmes avec NTP sur pfSense 2.0 RC et que les logs de OpenNTPD sous pfSense ne sont pas bavarde (il n'y a rien), j'ai essayé de démarrer ntpd manuellement et de le laisser fonctionner quelques minutes :
killall ntpd
/usr/local/sbin/ntpd -d -f /var/etc/ntpd.conf > & /root/ntpd.log
^C
Voici ce que j'obtiens (/root/ntpd.log) :
listening on 10.1.1.254 listening on 127.0.0.1 ntp engine ready reply from 145.238.203.14: offset -0.199347 delay 0.028923, next query 7s reply from 145.238.203.14: offset -0.200206 delay 0.028770, next query 5s reply from 145.238.203.14: offset -0.200877 delay 0.028835, next query 5s peer 145.238.203.14 now valid reply from 145.238.203.14: offset -0.201890 delay 0.028094, next query 8s reply from 145.238.203.14: offset -0.202871 delay 0.027882, next query 5s reply from 145.238.203.14: offset -0.204005 delay 0.028000, next query 9s reply from 145.238.203.14: offset -0.204312 delay 0.028947, next query 33s reply from 145.238.203.14: offset -0.209456 delay 0.028109, next query 32s adjusting local clock by -0.202871s ntp engine exiting Lost child: child exited Terminating
Tout semble se passer correctement et c'est bien le serveur indiqué qui est utilisé.
Qu'en penses-vous ?
Merci de votre attention et au plaisir de vous lire.
-
-
Il faut d'abord créer une règle de firewall permettant a la machine client de joindre la patte LAN de pfsense sur le port 123/UDP.
-
Bonjour,
Merci pour la réponse.
Il y a déjà une règle par défaut « Default LAN -> any » qui autorise tout depuis le LAN.
Sauf erreur de ma part, cette règle est créée par défaut à l'installation de pfSense.
D'ailleurs, j'arrive à accéder depuis 10.1.1.1 à :
-
tcp/80 de 10.1.1.254 : interface de gestion de pfSense
-
icmp de 10.1.1.254 : ping
Je ne vois pas pourquoi je n'arriverai pas à fairte du udp/123 ?
D'autre part, cela n'explique pas :
-
l'absence de réponse à la commande ntpq en console sur pfSense
-
la valeur du champ « refid » de la commande ntpq depuis 10.1.1.1
-
-
Ok,
j'oubliais qu'il y avait par défaut cette règle ultra permissive…Pouvez vous faire une capture coté pfsense pour voir si votre client tente bien une connexion.
tcpdump -i em0 -ttt -n proto UDP and port 123 and host 10.1.1.1
ensuite redémarrez ntpd sur votre client.
remplacer em0 par votre interface lan.
Pour info, il faut attendre un certain temps avant que le serveur NTP de pfsense réponde favorablement à une demande de synchronisation. En effet lorsqu'il démarre il va attendre un certain nombre de synchronisations avec ses serveurs de référence afin de connaitre précisément son jitter. Généralement, au bout de 15 minutes il répond convenablement.J'ajoute qu'il y a effectivement eut des pb en 2.0 mais en RC3 tout devrait bien fonctionner pour ntp.