Configurer un serveur NTP sous Linux

L'installation d'un serveur NTP sous Linux se fait à l'aide des commandes suivantes :

Installation du serveur NTP :

yum -y install ntp          (cette commande est valide sous CentOS)

 

 

Edition du fichier de configuration NTP :

vi /etc/ntp.conf

Ajout des différents serveurs NTP, une liste de serveurs est consultable à cette adresse : https://www.cru.fr/services/ntp/serveurs_francais

server ntp.internet-fr.net
server ntp1.jussieu.fr

Edition du second fichier de configuration NTP :

vi /etc/sysconfig/ntpd

Remplacer cette ligne

OPTIONS="-u ntp:ntp -p /var/run/ntpd.pid -g"

par

OPTIONS="-x -u ntp:ntp -p /var/run/ntpd.pid -g"

Redémarrer le service NTP :

service ntpd restart

Faire en sorte que le service NTP soit lancé au démarrage du système :

chkconfig ntpd onifconfig

 

Récupérer l'heure et la date d'un serveur :

ntpdate <adresse-IP-serveur-NTP>

 

Il est possible de faire de l'authentification NTP en définissant des clés dans le fichier /etc/ntp/keys :

#
# PLEASE DO NOT USE THE DEFAULT VALUES HERE.
#
#65535  M       akey
#1      M       pass
10      M       NTP-password

10      M       NTP-mot-de-passe


Cette authentification permet de définir des mots de passes devant correspondre sur les serveurs et les clients NTP. Les clés sont stockées sous le format :

Identifiant-de-la-CLE   M (M pour cryptage MD5)   Mot-de-Passe

Aller dans le fichier /etc/ntp.conf pour spécifier l'emplacement des clés ainsi que les clés à utiliser :

# Key file containing the keys and key identifiers used when operating
# with symmetric key cryptography.
keys /etc/ntp/keys

# Specify the key identifiers which are trusted.
#trustedkey 4 8 42
trustedkey 10 12

Voici le résultat d'une capture :  "tcpdump -i eth0 -vv port 123"

 15:29:14.750863 IP (tos 0x0, ttl 28, id 27377, offset 0, flags [none], proto UDP (17), length 96)
    1.2.3.4.ntp > XXXXXX.ntp: [udp sum ok] NTPv4, length 68
        Client, Leap indicator:  (0), Stratum 4 (secondary reference), poll 6s, precision -10
        Root Delay: 0.006011, Root dispersion: 0.160598, Reference-ID: sup.rie.disic
          Reference Timestamp:  3574762088.632979094 (2013/04/12 15:28:08)
          Originator Timestamp: 3574762088.628337264 (2013/04/12 15:28:08)
          Receive Timestamp:    3574762088.632979094 (2013/04/12 15:28:08)
          Transmit Timestamp:   3574762154.754493892 (2013/04/12 15:29:14)
            Originator - Receive Timestamp:  +0.004641858
            Originator - Transmit Timestamp: +66.126156598
        Key id: 167772160
        Authentication: 340fed4a3f846f235885f04f7fee1229
15:29:14.750985 IP (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto UDP (17), length 96)
    XXXXXX.ntp > 1.2.3.4.ntp: [bad udp cksum 34ea!] NTPv4, length 68
        Server, Leap indicator:  (0), Stratum 3 (secondary reference), poll 6s, precision -24
        Root Delay: 0.005035, Root dispersion: 0.153533, Reference-ID: horlogegps.reseau.jussieu.fr
          Reference Timestamp:  3574761593.932179987 (2013/04/12 15:19:53)
          Originator Timestamp: 3574762154.754493892 (2013/04/12 15:29:14)
          Receive Timestamp:    3574762154.750863015 (2013/04/12 15:29:14)
          Transmit Timestamp:   3574762154.750975608 (2013/04/12 15:29:14)
            Originator - Receive Timestamp:  -0.003630878
            Originator - Transmit Timestamp: -0.003518236
        Key id: 167772160
        Authentication: 22ab1433ba1188667cdea853ce48385f

Informations supplémentaires