Différences entre versions de « Ntpd »
(Page créée avec « = Principe = Le fichier "'''/etc/ntp.conf'''" est le fichier de configuration qui sera utilisé par le client ntp pour mettre à jour l'heure du système. Dans ce fichier... ») |
|||
(9 versions intermédiaires par le même utilisateur non affichées) | |||
Ligne 1 : | Ligne 1 : | ||
= Principe = | = Principe = | ||
− | Le fichier "'''/etc/ntp.conf'''" est le fichier de configuration qui sera utilisé par le client | + | Le fichier "'''/etc/ntp.conf'''" est le fichier de configuration qui sera utilisé par le client ''NTP'' pour mettre à jour l'heure du système. |
− | Dans ce fichier, il | + | Dans ce fichier, il faut plusieurs chose: |
− | * driftfile → permet de définir le fichier dans lequel sera stocké le ''glissement'' (dirft) du quartz interne de la machine par rapport au temps de l'horloge atomique (sur Internet) | + | * driftfile → permet de définir le fichier dans lequel sera stocké le ''glissement'' (dirft) du quartz interne de la machine par rapport au temps de l'horloge atomique (sur Internet); |
− | * restrict → permet de restreindre les interrogations du client NTP; | + | * restrict → permet de restreindre les interrogations du client ''NTP''; |
* server → permet de définir le ou les serveurs ''NTP'' à utiliser. | * server → permet de définir le ou les serveurs ''NTP'' à utiliser. | ||
Ligne 27 : | Ligne 27 : | ||
= Démarrage et automatisation = | = Démarrage et automatisation = | ||
Une fois le client installé et configuré, il faut le démarrer et l'enregistrer dans le chargeur de démarrage: | Une fois le client installé et configuré, il faut le démarrer et l'enregistrer dans le chargeur de démarrage: | ||
+ | * CentOS 6 : | ||
<pre> | <pre> | ||
# service ntpd start | # service ntpd start | ||
# chkconfig ntpd on | # chkconfig ntpd on | ||
</pre> | </pre> | ||
+ | * CentOS 7+ : | ||
+ | <pre> | ||
+ | # systemctl start ntpd.service | ||
+ | # systemctl enable ntpd.service | ||
+ | </pre> | ||
+ | |||
= Vérification de fonctionnement = | = Vérification de fonctionnement = | ||
− | On va tout simplement | + | On va tout simplement vérifier la connectivité avec les serveur ''NTP'': |
<pre> | <pre> | ||
# ntpq -p | # ntpq -p | ||
Ligne 46 : | Ligne 53 : | ||
# date | # date | ||
mar. nov. 10 18:55:48 CET 2015 | mar. nov. 10 18:55:48 CET 2015 | ||
+ | </pre> | ||
+ | |||
+ | = Les options = | ||
+ | == Les arguments == | ||
+ | Dans le fichier ''/etc/sysconfig/ntpd'' on peut voir avec quels arguments le démon ''ntp'' démarre: | ||
+ | <pre> | ||
+ | # cat /etc/sysconfig/ntpd | ||
+ | # Drop root to id 'ntp:ntp' by default. | ||
+ | OPTIONS="-u ntp:ntp -p /var/run/ntpd.pid -g" | ||
+ | </pre> | ||
+ | == Ajout d'un fichier de log == | ||
+ | Il est possible d'ajouter un fichier de log pour voir ce que fait ''ntpd''. Pour cela modifiez simplement la ligne précédente: | ||
+ | <pre> | ||
+ | |||
+ | OPTIONS="-u ntp:ntp -p /var/run/ntpd.pid -g -l /var/log/ntpd.log" | ||
+ | </pre> | ||
+ | ''Ntpd'' loggera maintenant dans le fichier ''/var/log/ntpd.log''. | ||
+ | |||
+ | == Problème de privilèges == | ||
+ | Lorsque l'on utilise un serveur en ligne chez un hébergeur, la virtualisation avec ''OpenVZ'' peut empêcher le changement d'utilisateur: | ||
+ | <pre> | ||
+ | # cat /var/log/ntpd.log | ||
+ | 8 Jan 08:07:27 ntpd[29175]: proto: precision = 0.151 usec | ||
+ | |||
+ | ... | ||
+ | |||
+ | 8 Jan 08:07:28 ntpd[29175]: cap_set_proc() failed to drop root privileges: Operation not permitted | ||
+ | </pre> | ||
+ | Dans ce cas, ''ntpd'' ne démarre pas... Il faut alors modifier la ligne d'option en supprimant : | ||
+ | <pre> | ||
+ | -u ntp:ntp | ||
+ | </pre> | ||
+ | |||
+ | == Changement de timezone == | ||
+ | Pour changer de fuseau horaire, il suffit de modifier le lien symbolique du fichier ''/etc/localtime''. Ce fichier à pour origine l'un des fichier de zone présent dans le répertoire ''/usr/share/zoneinfo'': | ||
+ | <pre> | ||
+ | # ll /etc/localtime | ||
+ | lrwxrwxrwx 1 root root 32 Jan 8 08:22 /etc/localtime -> /usr/share/zoneinfo/Europe/Paris | ||
+ | # date | ||
+ | Fri Jan 8 08:24:35 CET 2016 | ||
+ | </pre> | ||
+ | Si on le modifie, on s'aperçoit que la date change instantanément : | ||
+ | <pre> | ||
+ | # ln -fs /usr/share/zoneinfo/US/Pacific /etc/localtime | ||
+ | # ll /etc/localtime | ||
+ | lrwxrwxrwx 1 root root 30 Jan 7 23:25 /etc/localtime -> /usr/share/zoneinfo/US/Pacific | ||
+ | # date | ||
+ | Thu Jan 7 23:25:26 PST 2016 | ||
</pre> | </pre> |
Version actuelle datée du 11 février 2018 à 19:05
Principe
Le fichier "/etc/ntp.conf" est le fichier de configuration qui sera utilisé par le client NTP pour mettre à jour l'heure du système. Dans ce fichier, il faut plusieurs chose:
- driftfile → permet de définir le fichier dans lequel sera stocké le glissement (dirft) du quartz interne de la machine par rapport au temps de l'horloge atomique (sur Internet);
- restrict → permet de restreindre les interrogations du client NTP;
- server → permet de définir le ou les serveurs NTP à utiliser.
Installation
yum -y install ntp
Exemple
Voici un exemple de fichier "/etc/ntp.conf" :
driftfile /var/lib/ntp/drift restrict 127.0.0.1 server 0.pool.ntp.org server 1.pool.ntp.org server 2.pool.ntp.org server 3.pool.ntp.org
Démarrage et automatisation
Une fois le client installé et configuré, il faut le démarrer et l'enregistrer dans le chargeur de démarrage:
- CentOS 6 :
# service ntpd start # chkconfig ntpd on
- CentOS 7+ :
# systemctl start ntpd.service # systemctl enable ntpd.service
Vérification de fonctionnement
On va tout simplement vérifier la connectivité avec les serveur NTP:
# ntpq -p remote refid st t when poll reach delay offset jitter ============================================================================== *91.121.210.60 195.83.222.27 2 u 60 64 177 20.797 2.114 1.287 -37.187.56.220 145.238.203.14 2 u 69 64 177 22.739 4.218 0.788 +212.47.252.138 193.67.79.202 2 u 136 64 374 18.154 1.459 1.248 +37.187.2.84 193.67.79.202 2 u 150 64 374 20.312 1.856 17.909
On peut également contrôler le bon fonctionnement en affichant la date:
# date mar. nov. 10 18:55:48 CET 2015
Les options
Les arguments
Dans le fichier /etc/sysconfig/ntpd on peut voir avec quels arguments le démon ntp démarre:
# cat /etc/sysconfig/ntpd # Drop root to id 'ntp:ntp' by default. OPTIONS="-u ntp:ntp -p /var/run/ntpd.pid -g"
Ajout d'un fichier de log
Il est possible d'ajouter un fichier de log pour voir ce que fait ntpd. Pour cela modifiez simplement la ligne précédente:
OPTIONS="-u ntp:ntp -p /var/run/ntpd.pid -g -l /var/log/ntpd.log"
Ntpd loggera maintenant dans le fichier /var/log/ntpd.log.
Problème de privilèges
Lorsque l'on utilise un serveur en ligne chez un hébergeur, la virtualisation avec OpenVZ peut empêcher le changement d'utilisateur:
# cat /var/log/ntpd.log 8 Jan 08:07:27 ntpd[29175]: proto: precision = 0.151 usec ... 8 Jan 08:07:28 ntpd[29175]: cap_set_proc() failed to drop root privileges: Operation not permitted
Dans ce cas, ntpd ne démarre pas... Il faut alors modifier la ligne d'option en supprimant :
-u ntp:ntp
Changement de timezone
Pour changer de fuseau horaire, il suffit de modifier le lien symbolique du fichier /etc/localtime. Ce fichier à pour origine l'un des fichier de zone présent dans le répertoire /usr/share/zoneinfo:
# ll /etc/localtime lrwxrwxrwx 1 root root 32 Jan 8 08:22 /etc/localtime -> /usr/share/zoneinfo/Europe/Paris # date Fri Jan 8 08:24:35 CET 2016
Si on le modifie, on s'aperçoit que la date change instantanément :
# ln -fs /usr/share/zoneinfo/US/Pacific /etc/localtime # ll /etc/localtime lrwxrwxrwx 1 root root 30 Jan 7 23:25 /etc/localtime -> /usr/share/zoneinfo/US/Pacific # date Thu Jan 7 23:25:26 PST 2016