La mise en œuvre du protocole NTP suppose que l'on ait besoin d'un horodatage
précis des évènements qui surviennent sur les équipements réseau.
Classiquement, le serveur du périmètre de gestion exécute un démon
ntpd
qui sert de référence à tous
les équipements. Le protocole ntp
est décrit dans le document RFC1119 Network Time Protocol (version 2) specification and
implementation.
Comme indiqué dans la Section 1.3, « Logiciels utilisés », seuls les paquets de la distribution Debian GNU/Linux sont présentés ici. L'installation du paquet ntp se résume donc à l'instruction suivante :
# apt-get install ntp
L'avantage de ce paquet, c'est qu'il ne nécessite aucune configuration. On peut donc passer côté équipement. Voici un exemple de configuration type commun aux routeurs et aux commutateurs :
! ntp server 192.168.2.1 source Vlan2 clock timezone CET +1 clock summer-time EDT recurring !
La syntaxe IOS de contrôle de l'état du service sur l'équipement est la suivante :
sw1#sh ntp status Clock is synchronized, stratum 4, reference is 192.168.2.1 nominal freq is 250.0000 Hz, actual freq is 249.9962 Hz, precision is 2**18 reference time is C5A12468.AFE91280 (21:02:48.687 CET Tue Jan 25 2005) clock offset is 0.0817 msec, root delay is 78.25 msec root dispersion is 122.21 msec, peer dispersion is 0.03 msec sw1#sh ntp associations address ref clock st when poll reach delay offset disp *~192.168.2.1 213.161.8.44 3 33 64 377 2.0 0.08 0.0 * master (synced), # master (unsynced), + selected, - candidate, ~ configured
L'utilitaire ntpq fournit les mêmes information pour le système GNU/Linux :
# ntpq ntpq> associations ind assID status conf reach auth condition last_event cnt =========================================================== 1 26588 9614 yes yes none sys.peer reachable 1 2 26589 9014 yes yes none reject reachable 1 ntpq> peer remote refid st t when poll reach delay offset jitter ============================================================================== *cpe1-8-44.cable 164.8.100.2 2 u 865 1024 377 79.463 -11.913 33.217 LOCAL(0) LOCAL(0) 13 l 39 64 377 0.000 0.000 0.004
Comme tftpd
et syslogd
, le service ntpd
n'est pas un modèle en matière de
sécurité. Il est donc souhaitable de bien encadrer son utilisation. On configure
le contrôle d'accès avec une règle de filtrage réseau par
équipement.
Voici encore un extrait du fichier /var/lib/iptables/active
utilisé par le script
d'initialisation du paquet iptables.
*filter :INPUT DROP [0:0] <snip/> -A INPUT -s 192.168.2.2 -p udp --dport 123 -m conntrack --ctstate NEW -j ACCEPT <snip/>
Pour un exemple complet, voir Annexe A, Configuration type du filtrage réseau.