NTP — Cheat Sheet Cisco IOS
Configuration pratique de NTP (Network Time Protocol) sur Cisco IOS. Pour la théorie (rôle de NTP, lien avec Syslog/SNMP), voir NTP, Syslog et SNMP : supervision réseau.
Pourquoi NTP est critique (pas juste « l'heure »)
Une horloge désynchronisée casse silencieusement d'autres briques : validité des certificats X.509 (voir VPN IPsec IKEv2), corrélation de logs Syslog entre équipements, tickets Kerberos, et le diagnostic (debug/show log avec des timestamps incohérents rend toute investigation inexploitable).
Client NTP simple
ntp server 192.168.1.10
ntp server 192.168.1.11
clock timezone CET 1
clock summer-time CEST recurring last Sun Mar 2:00 last Sun Oct 3:00
- Toujours configurer au moins deux serveurs : si l'un devient injoignable ou donne une heure aberrante, le second permet à l'algorithme NTP de continuer à trancher correctement.
clock timezone/clock summer-time: NTP synchronise toujours en UTC en interne — ces commandes ne font qu'afficher l'heure locale, elles n'affectent pas la synchronisation elle-même.
Le routeur comme serveur NTP pour le LAN
ntp master 3
Fait de ce routeur une source de temps autoritaire (stratum indiqué, ici 3) même sans accès à une source externe — utile pour un lab isolé sans Internet, mais jamais en production si une vraie source externe est disponible (dérive progressive sans référence).
Restreindre l'accès NTP (bonne pratique)
ntp access-group peer NTP-PEERS
ip access-list standard NTP-PEERS
permit 192.168.1.10
permit 192.168.1.11
Sans restriction, n'importe quel hôte peut interroger le service NTP du routeur — à filtrer comme tout service exposé.
Authentification NTP (intégrité de la source de temps)
ntp authenticate
ntp authentication-key 1 md5 <MotDePasseSolide>
ntp trusted-key 1
ntp server 192.168.1.10 key 1
Empêche un attaquant de fausser l'heure du routeur en usurpant un serveur NTP (attaque triviale sur un réseau non filtré, puisque NTP tourne en UDP 123 sans chiffrement par défaut).
NTP source (loopback recommandé)
ntp source Loopback0
Force les paquets NTP sortants à utiliser l'adresse loopback comme IP source — même logique que pour BGP/EIGRP update-source : stabilité si l'interface physique change d'état.
Vérification
show ntp status ! stratum, offset, synchronisé ou non
show ntp associations ! détail par serveur : delay, offset, reach
show clock detail ! heure actuelle et source (NTP ou manuelle)
:::tip Lire show ntp status
Clock is synchronized: tout va bien.Clock is unsynchronized: le routeur n'a pas encore atteint le seuil de confiance requis — attendre quelques minutes après une reconfiguration, ou vérifier la joignabilité des serveurs (ping, ACL, pare-feu UDP 123).- Le champ stratum indique la distance à la source de temps de référence (stratum 0) ; plus le chiffre est bas, plus la source est proche de l'horloge atomique/GPS. :::
:::warning Pièges fréquents
- Décalage horaire trop grand au démarrage : NTP refuse de faire un saut brutal (« step ») au-delà d'un certain seuil par sécurité — sur un routeur avec une horloge très éloignée de la réalité, la convergence peut prendre du temps ou nécessiter
ntp update-calendar/ un ajustement manuel initial. - UDP 123 bloqué par un pare-feu/ACL : diagnostic identique au cas IPsec/VPN — vérifier que le trafic retour n'est pas filtré avant de suspecter NTP lui-même.
ntp masteren production avec Internet disponible : dérive silencieuse de l'horloge sans avertissement, contrairement à un client synchronisé sur une source externe. :::
📝 Tester ses connaissances
1. Pourquoi une horloge désynchronisée est-elle un problème plus large que le simple affichage de l'heure ?
2. Pourquoi faut-il configurer au moins deux serveurs NTP plutôt qu'un seul ?
3. Que font concrètement `clock timezone` et `clock summer-time` sur un routeur Cisco ?
4. Pourquoi restreindre l'accès NTP avec `ntp access-group` est une bonne pratique ?