Vous êtes sur la page 1sur 8

Serveur NTP

Etape 1 : prparation du contexte


Objectif
Prparer les conditions d'excution du TP.
Prrequis
Prrequis exprim dans la prsentation du TP
Manipulations
Relevez l'adresse IP de chacune des trois machines et vrifier par un ping
qu'elles communiquent bien entre elles.
IP machine hte :
IP .__________
IP serveur-1 :

vboxnet3 : IP : 172.17.124.__________

IP serveur-2 :

vboxnet3 : IP : 172.17.124.__________

ATTENTION : puisque vous travaillez en circuit ferm sur un rseau


virtuel , vous n'avez pas accs internet. Vous devez donc ajouter sur le
serveur-virtuel serveur-1 une carte vers l'interface de votre hte physique
qui va vers internet. Ceci vous permettra la fois d'accder votre rseau
virtuel et aux autres machines de ce rseau, et aussi internet.
Vrifiez par un ping www.free.fr, depuis chacune des trois machines, que le
fonctionnement du rseau est correct et que vos machines sont
correctement configures.
Note importante : dans ce Tp, pour accder un serveur de temps NTP on
utilise en gnral le nom de domaine. Mais, ce stade nous n'avons pas
encore cr le serveur DNS sur notre rseau priv. Par consquent, nous
appellerons le serveur NTP interne avec son IP directement.

Etape 2 : introduction NTP et ntpd


Objectif
Comprendre l'usage de NTP et manipuler l'outil ntpdate
NTP
NTP (Network Time Protocol) permet de synchroniser sa machine avec des
serveurs via un rseau et de garder sa machine l'heure. Nous allons voir
deux mthodes pour se synchroniser : ntpdate et ntpd. Ces deux outils

peuvent s'utiliser de manire complmentaire ou bien de manire


indpendante.
ntpdate
ntpdate est un des moyens pour mettre l'heure la machine. Cette mise
l'heure se fera quelle que soit le dcalage (offset) entre l'heure de la
machine et l'heure officielle fournie par le serveur de temps. Il faudra
lirehttps://packages.debian.org/fr/wheezy/ntpdate et https://wiki.debian.or
g/fr/NTP pendant que vous attendrez la synchronisation.
Manipulations
Sur le serveur1
Installer l'utilitaire ntpdate : apt-get install ntpdate
Affichez l'heure courante avec : date
Comme le lyce possde son propre serveur de temps
(ntp.rdescartes.local), vous allez synchroniser votre machine sur ce
serveur :

Lancez la commande : ntpdate ntp

si le lyce n'a pas de serveur ntp dans votre domaine, tappez


ntpdate autre_serveur_ntp
autres serveurs ntp : ntp.via.ecp.fr , ntp.obspm.fr , ntp.univ-lyon1.fr

Etape 3 : le daemon ntpd


Objectif
Comprendre le principe du daemon NTPD, installer et utiliser ce daemon.
Prrequis
Thme NTP, contexte.
NTPD
On peut mettre la machine l'heure manuellement en lanant la
commande sudo ntpdate serveur_ntp , comme on vient de le faire. On
pourrait aussi automatiser cette tche intervalle rgulier grce une
tche programme se dclenchant intervalle rgulier (cron). Toutefois la
machine drivera rgulirement entre deux mises l'heure, mme
espaces de quelques minutes. Ce n'est donc pas une bonne ide car
l'heure serait toujours plus ou moins fausse.

Manipulations

placez-vous sur le serveur-1

Rappel : avant chaque installation, avec le "virtualiseur", il faut faire un


instantan (snapshot ou image)!

Installez ntpd

# apt-get install ntp


Aprs l'installation, les fichiers et programmes principaux sont les suivants
:
/etc/ntp.conf
Fichier de configuration de ntpd, c'est l que sont indiqus les serveurs
avec lesquels ntpd doit se synchroniser. Par dfaut, le protocole ntp se
synchronise d'aprs des serveurs appartenant un pool de serveurs
de temps public. Toutefois cela implique une communication vers
l'extrieur et charge inutilement les serveurs de temps publics.
/usr/sbin/ntpd
L'excutable principal (le programme).
/etc/init.d/ntp
Le script de gestion du dmon ntpd (Les actions possibles sont : stop,
start, et restart)

Toujours sur le serveur-1 : vrifiez si le service ntpd


tourne sur la machine

# ps -Al | grep ntpd

Si ce n'est pas le cas, le lancer avec

# /etc/init.d/ntp start

ditez le fichier de configuration /etc/ntp.conf et


supprimez toutes les lignes indiquant le nom des
serveurs de temps public. (ou les mettres en
commentaires avec #). Elles commencent toutes par
server ;

Remplacez ces lignes par la ligne :

server nom_du_serveur_ntp
(prenez le nom du serveur ntp que vous avez utilis plus haut)

Sauvegardez.

Comme toujours, aprs chaque modification du fichier de configuration


d'un service (ici /etc/ntp.conf), il ne faut pas oublier de relancer le
daemon pour que les modifications soient prises en compte.

relancez le damon

# /etc/init.d/ntp restart

Vrifiez, nouveau, si le service ntpd tourne sur la


machine

# ps -Al | grep ntp

Si ce n'est pas le cas, chercher votre erreur, corrigez-l


et lancer le service par

# /etc/init.d/ntp start
Explications :
Grce ce service, la machine est en permanence l'heure, sans qu'il soit
besoin de lancer ntpdate rgulirement. ntpd ne met pas l'horloge
l'heure mais ajuste son fonctionnement pour qu'elle ne drive pas de plus
de quelques millimes de seconde. En revanche, ce service s'avre
parfaitement incapable de mettre l'heure la machine si l'cart est trop
important (suprieur 30s). On voit donc que ces deux outils se
compltent : ntpdate "remet les pendules l'heure" alors que ntpd va
synchroniser la machine, de manire permanente et trs prcise.
Attention : lorsque ntpd est en fonctionnement, on ne peut plus utiliser
ntpdate car l'horloge est sous le contrle de ntpd.
Essayez :

vrifier que ntpd est lanc

Lancez la commande ntpdate

# ntpdate ntp
Pour pallier cet inconvnient il faut :

Arrter le service ntpd

Puis relancez la commande ntpdate

Puis remettre en route le service

QUESTION : donnez la commande pour arrter le service ntpd.


RPONSE :
/etc/init.d/ntp stop

Etape 4 : outils de contrle et


vrification
Objectif
Connatre les commandes de vrification et contrle de NTP.
Prrequis
Thme NTP, NTPD, contexte.

Manipulations

placez-vous sur le serveur-1

Commande tnpq -p

Cette commande permet d'avoir la liste des serveurs de temps indiqus


dans le fichier /etc/ntp.conf avec leur niveau hirarchique. On met
souvent plus d'un serveur dans la liste des serveurs de temps afin que, si
l'un d'entre eux est indisponible, on puisse se synchroniser sur un autre
serveur. Une toile prcde la source qui sert actuellement de rfrence.
Si l'toile n'apparat pas c'est que la synchronisation n'est pas encore
russie. Le service ntpd reste dans cet tat quelques minutes (compter
environ cinq minutes) aprs chaque redmarrage, le temps que la
synchronisation se fasse et soit stable.

Commande tnptrace

Cette commande galement de vrifier l'tat de synchronisation de votre


machine et lorsque la synchronisation est correcte, de vrifier : l'cart
(offset), en seconde, entre votre machine et les serveurs sur lesquels vous
vous synchronisez, ainsi que le niveau de votre machine (strate) dans la
hirarchie des serveurs de temps.
Voirhttp://en.wikipedia.org/wiki/Network_Time_Protocol pour le stratum :
stratum 16 is used to indicate that a device is unsynchronized .
La synchronisation demandant plusieurs minutes (3 10) ntpd, ne vous
tonnez pas de rester en strate 16 (non-synchronise) pendant un certain
temps. Par contre si vous y restez trop longtemps (plus de 10 minutes)
c'est qu'il y a un problme soit au niveau du serveur, soit au niveau de
votre configuration.

Voir le processus ntpd


On peut voir le processus ntpd s'excuter et vrifier
avec la commande ps :

Voir les logs

On peut aussi En attendant d'tre synchronis, ouvrez une seconde


session dans une seconde TTY et surveillez le fichier des logs systme :
tail -f /var/log/syslog
en attendant d'y voir apparatre un message indiquant que vous tes
synchronis. Pendant cette attente faites le travail indiqu au chapite
suivant (comprendre les mcanismes).

Etape 5 : devenir serveur de temps


Objectif :
Apprendre implmenter le service "serveur de temps" sur une machine.
Prrequis :
NTP, ntpd, contrles des services de syncrhonisation
Manipulations
Ds que votre machine est synchronise (qu'elle n'est plus de strate 16),
elle peut son tour devenir serveur de temps. Pour faire cette
manipulation, il faut que le serveur-1 possde deux interfaces rseau.
L'une allant sur internet et l'autre sur le rseau virtuel priv vboxnet3 .

Le second serveur-virtuel serveur-2, n'a besoin que d'une interface sur


vboxnet3 .

Placez-vous sur le serveur-1 , qui va devenir le


serveur de temps :

ditez le fichier de configuration de ntp et supprimer


l'indication noquery afin d'autoriser d'autres
machines interroger votre serveur de temps.
(Attention il faut enlever noquery deux endroits) ;

Relancez le dmon ntpd ;

Attendez et vrifiez que le serveur-1 soit bien


synchronis ;

Placez-vous sur le serveur-2 :

Mettez vous en accs internet (carte 1 sur l'interface


du host vers internet)

tester l'appel ntpdate au serveur NTP avec son


adresse IP : ntp.via.ecp.fr a pour adresse
138.195.130.62.

NOTE : pour l'instant nous n'avons pas utilis de DNS et de nom de


domaine... car nous sommes en circuit ferm sur vboxnet3. Nous
installerons un serveur dns plus tard. En attendant, nous pouvons utiliser
directement les IP pour communiquer entre les machines.

Installez le paquet ntp ;

Remettez l'interface cart1 sur le rseau priv


vboxnet3

Mettez la machine l'heure d'aprs le serveur-1 ;

Modifier le fichier de configuration pour que le


serveur-2 se synchronise sur le serveur-1 , en
indiquant son adresse IP dans le fichier de
configuration.

Relancer le dmon ntpd

Vrifiez que son dmon ntpd fonctionne

Surveillez le journal de log

Lorsque la synchronisation est faite : vrifier la strate


de fonctionnement