Настройка NTP сервера в CISCO
Очень полезно в своей сети, а в доменной – просто необходимо, иметь сервер точного времени, с которым будут синхронизировать свои часы все остальные устройства. В статье приведу пошаговый процесс настройки NTP сервера на примере cisco-маршрутизаторов 2800 серии. В моем распоряжении есть Cisco 2821 и Cisco 2811 с IOS c2800nm-adventerprisek9_ivs-m и c2800nm-adventerprisek9-m соответственно. В заметке будет происходить исключительно настройка NTP сервера на cisco. Вопросы безопасности будут затронуты лишь вскользь, касательно именно этого сервиса. |
Узнать текущее время, установленное на вашем маршрутизаторе cisco можно командой show clock
:
Router#show clock 11:17:44.500 MSK Tue Feb 26 2013
Следующими двумя командами мы установим свою временную зону (для Московского часового пояса – MSK, со смещением 4 от UTC); так же настроим периодическую синхронизацию календаря и времени clock, которое генерирует кварцевый резонатор, пока устройство cisco включено:
Router(config)#clock timezone MSK 4 Router(config)#clock calendar-valid
Теперь вы можете вручную настроить (в режиме enable) время с помощью команды clock, имеющей формат:
clock set hh:mm:ss день месяц год
Router#clock set 11:30:00 26 Mar 2013 Router#show clock .11:30:02.784 MSK Tue Mar 26 2013
На всякий случай приведу команду, выполняющую автоматический периодический перевод времени на летнее и обратно (с нашим правительством все возможно!):
Router(config)#clock summer-time Moscow recurring last Sun Mar 2:00 last Sun Oct 2:00
Теперь – ряд команд, позволяющих добавлять текущее время к событиям, записываемых в логи и настройка самого логирования:
Router(config)#service timestamps debug datetime localtime Router(config)#service timestamps log datetime localtime Router(config)#service sequence-numbers Router(config)#logging count Router(config)#logging message-counter syslog Router(config)#logging snmp-authfail Router(config)#logging userinfo Router(config)#logging buffered 51200 warnings Router(config)#no logging console guaranteed Router(config)#no logging console Router(config)#no logging monitor
Настройте оба сетевых интерфейса. Пусть FastEthernet0/0 – смотрит в интернет (на котором мы отключили работу NTP командой ntp disable
), FastEthernet0/1 – обслуживает локальную сеть 192.168.0.0/24:
Router(config)#interface FastEthernet0/0 Router(config-if)#description INTERNET Router(config-if)#ip address XX.XX.XX.XX 255.255.255.248 Router(config-if)#ip virtual-reassembly Router(config-if)#no cdp enable Router(config-if)#no shutdown Router(config-if)#ip verify unicast reverse-path Router(config-if)#no ip redirects Router(config-if)#no ip unreachables Router(config-if)#no ip proxy-arp Router(config-if)#ip nat outside Router(config-if)#ip virtual-reassembly max-reassemblies 32 Router(config-if)#duplex auto Router(config-if)#speed auto Router(config-if)#ntp disable Router(config-if)#no cdp enable Router(config-if)#no mop enabled Router(config-if)#exit Router(config)#interface FastEthernet0/1 Router(config-if)#description LOCALNET Router(config-if)#ip address 192.168.0.1 255.255.255.0 Router(config-if)#ip virtual-reassembly Router(config-if)#ip nat inside Router(config-if)#no cdp enable Router(config-if)#no shutdown Router(config-if)#exit
Перейдем непосредственно к настройке NTP сервера. В первую очередь вам необходимо определиться с ntp-серверами в глобальной сети интернет, с которыми вы будете синхронизировать своей время. Я пользуюсь пулом ntp-серверов от ФГУП «Всероссийский научно-исследовательский институт физико-технических и радиотехнических измерений» является одним из ведущих национальных метрологических институтов России (данные ip актуальны на 13.11.2013):
- ntp1.vniiftri.ru – 89.109.251.21
- ntp2.vniiftri.ru – 89.109.251.22
- ntp3.vniiftri.ru – 89.109.251.23
- ntp4.vniiftri.ru – 89.109.251.24
А еще лучше воспользоваться национальными пулами ntp-серверов:
- ru.pool.ntp.org
- 0.ru.pool.ntp.org
- 1.ru.pool.ntp.org
- 2.ru.pool.ntp.org
- 3.ru.pool.ntp.org
Только существует одно НО: если вы пропишете их в таком явном виде (при включенном ip domain-lookup
на вашем устройстве) таким вот образом:
Router(config)#ntp server 2.ru.pool.ntp.org source FastEthernet0/0 Router(config)#ntp server ru.pool.ntp.org prefer source FastEthernet0/0 Router(config)#ntp server 0.ru.pool.ntp.org source FastEthernet0/0 Router(config)#ntp server 1.ru.pool.ntp.org source FastEthernet0/0 Router(config)#ntp server 3.ru.pool.ntp.org source FastEthernet0/0
при перезагрузке вашей cisco данные настройки пропадут. Проще сделать пинг и прописать ip в явном виде.
Теперь следующими командами настроим:
1. логирование событий NTP сервера;
2. для использования конкретного IP адреса в пакетах ntp укажем внутренний интерфейс;
3. обозначим, что наш NTP сервер принадлежит ко второму слою:
Это компьютеры, которые получают время от серверов первого слоя. Устройства второго слоя обращаются к нескольким серверам первого слоя, и используя NTP-алгоритм, получают наилучший образец данных, отсеивая сервера с очевидно неверным временем. Компьютеры могут сравнивать свои данные с другими компьютерами своего слоя для получения стабильных и непротиворечивых данных на всех компьютерах слоя. Компьютеры второго слоя в свою очередь выступают в качестве серверов для компьютеров третьего слоя и отвечают на NTP-запросы.
4. настроим периодическое обновление календаря с использованием NTP;
5. определим сервера NTP в интернете (их может быть несколько), с которыми будет производиться синхронизация времени:
- 89.109.251.21 будет основным (prefer);
6. определим стандартный access-list со списком вышестоящих серверов, которым мы доверяем;
7. определим стандартный access-list со списком подчиненных нашему NTP серверу компьютеров;
8. настроим список доверенных клиентов, которые будет синхронизироваться с нашим NTP сервером;
9. настроим список доверенных серверов.
Router(config)#ntp logging Router(config)#ntp source FastEthernet0/1 Router(config)#ntp master 2 Router(config)#ntp update-calendar Router(config)#ntp server 89.109.251.21 source FastEthernet0/0 prefer Router(config)#ntp server 89.109.251.22 source FastEthernet0/0 Router(config)#ntp server 89.109.251.23 source FastEthernet0/0 Router(config)#ntp server 89.109.251.24 source FastEthernet0/0 Router(config)#ntp access-group peer ntp_servers kod Router(config)#ntp access-group serve ntp_clients kod Router(config)#ip access-list extended ntp_clients Router(config-ext-nacl)#permit udp 192.168.0.0 0.0.0.255 host 192.168.0.1 eq 123 log-input Router(config-ext-nacl)#deny ip any any log-input Router(config-ext-nacl)#exit Router(config)#ip access-list extended ntp_servers Router(config-ext-nacl)#permit udp host 89.109.251.21 any log-input Router(config-ext-nacl)#permit udp host 89.109.251.22 any log-input Router(config-ext-nacl)#permit udp host 89.109.251.23 any log-input Router(config-ext-nacl)#permit udp host 89.109.251.24 any log-input Router(config-ext-nacl)#deny ip any any log-input Router(config-ext-nacl)#exit
Вот и все. Проверить работу нашего NTP сервера можно следующими командами:
1. show ntp status
– покажет статус нашего NTP сервера (примерный вывод команды):
Router#show ntp status Clock is synchronized, stratum 2, reference is 62.117.76.140 nominal freq is 250.0000 Hz, actual freq is 249.9948 Hz, precision is 2**24 reference time is D4D6E899.EF805800 (11:54:01.935 MSK Tue Feb 26 2013) clock offset is 0.0000 msec, root delay is 0.00 msec root dispersion is 0.03 msec, peer dispersion is 0.01 msec loopfilter state is 'CTRL' (Normal Controlled Loop), drift is 0.000020522 s/s system poll interval is 1024, last update was 1682 sec ago.
2. show ntp associations
– показать состояние синхронизации с вышестоящими серверами (примерный вывод команды):
Router#show ntp associations address ref clock st when poll reach delay offset disp ~127.127.1.1 .LOCL. 1 7 16 377 0.000 0.000 0.227 *~62.117.76.140 .PPS. 1 222 1024 377 5.982 0.073 11.226 +~62.117.76.141 .PPS. 1 195 1024 377 5.112 -0.172 11.221 +~62.117.76.142 .PPS. 1 191 1024 377 5.329 -0.029 11.240 * sys.peer, # selected, + candidate, - outlyer, x falseticker, ~ configured
3. show ntp associations detail
– более детальная информация о собственной синхронизации (примерный вывод команды):
Router#show ntp associations detail 127.127.1.1 configured, insane, invalid, stratum 1 ref ID .LOCL., time D4D6EFE2.F7BAC8CA (12:25:06.967 MSK Tue Feb 26 2013) our mode active, peer mode passive, our poll intvl 16, peer poll intvl 16 root delay 0.00 msec, root disp 0.00, reach 377, sync dist 2.83 delay 0.00 msec, offset 0.0000 msec, dispersion 0.23 precision 2**24, version 4 org time D4D6EFE2.F7BAC8CA (12:25:06.967 MSK Tue Feb 26 2013) rec time D4D6EFE2.F7BB8C3D (12:25:06.967 MSK Tue Feb 26 2013) xmt time D4D6EFE2.F7BA4FB9 (12:25:06.967 MSK Tue Feb 26 2013) filtdelay = 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 filtoffset = 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 filterror = 0.00 0.24 0.46 0.72 0.99 1.21 1.45 1.71 minpoll = 4, maxpoll = 4 62.117.76.140 configured, our_master, sane, valid, stratum 1 ref ID .PPS., time D4D6EE86.6A48B652 (12:19:18.415 MSK Tue Feb 26 2013) our mode client, peer mode server, our poll intvl 1024, peer poll intvl 1024 root delay 0.00 msec, root disp 1.25, reach 377, sync dist 20.59 delay 5.98 msec, offset 0.0736 msec, dispersion 11.22 precision 2**18, version 4 org time D4D6EE99.F6D83C6C (12:19:37.964 MSK Tue Feb 26 2013) rec time D4D6EE99.F797711C (12:19:37.967 MSK Tue Feb 26 2013) xmt time D4D6EE99.F6018DA0 (12:19:37.960 MSK Tue Feb 26 2013) filtdelay = 5.98 6.24 5.74 6.06 5.78 5.85 6.00 5.46 filtoffset = 0.07 0.15 -0.21 0.04 -0.25 0.23 -0.06 -0.01 filterror = 0.00 15.37 23.04 30.72 38.38 46.06 53.76 61.44 minpoll = 6, maxpoll = 10 62.117.76.141 configured, sane, valid, stratum 1 ref ID .PPS., time D4D6EEB1.D40D6E7E (12:20:01.828 MSK Tue Feb 26 2013) our mode client, peer mode server, our poll intvl 1024, peer poll intvl 1024 root delay 0.00 msec, root disp 0.27, reach 377, sync dist 19.10 delay 5.11 msec, offset -0.1729 msec, dispersion 11.22 precision 2**19, version 4 org time D4D6EEB4.F6C4B4CF (12:20:04.963 MSK Tue Feb 26 2013) rec time D4D6EEB4.F777931D (12:20:04.966 MSK Tue Feb 26 2013) xmt time D4D6EEB4.F62674F7 (12:20:04.961 MSK Tue Feb 26 2013) filtdelay = 5.11 5.93 6.25 7.79 5.80 4.99 5.18 4.74 filtoffset = -0.17 -0.58 0.40 0.76 -0.10 -0.08 -0.18 -0.28 filterror = 0.00 15.34 23.04 30.75 38.41 46.12 53.80 61.48 minpoll = 6, maxpoll = 10 62.117.76.142 configured, sane, valid, stratum 1 ref ID .PPS., time D4D6EEAE.2D00B29D (12:19:58.175 MSK Tue Feb 26 2013) our mode client, peer mode server, our poll intvl 1024, peer poll intvl 1024 root delay 0.00 msec, root disp 0.38, reach 377, sync dist 18.94 delay 5.32 msec, offset -0.0297 msec, dispersion 11.24 precision 2**19, version 4 org time D4D6EEB8.F6DBB4B0 (12:20:08.964 MSK Tue Feb 26 2013) rec time D4D6EEB8.F78C4F5E (12:20:08.966 MSK Tue Feb 26 2013) xmt time D4D6EEB8.F62B97F8 (12:20:08.961 MSK Tue Feb 26 2013) filtdelay = 5.32 6.35 5.12 6.87 4.98 5.03 5.54 5.04 filtoffset = -0.02 -0.11 -0.12 0.30 -0.04 0.00 -0.22 -0.23 filterror = 0.00 15.37 23.08 30.79 38.49 46.15 53.82 61.51 minpoll = 6, maxpoll = 10
4. show ip access-lists
– просмотр использования наших списков доступа:
Router#show ip access-list Extended IP access list ntp_clients 10 permit udp 192.168.0.0 0.0.0.255 host 192.168.0.1 eq ntp log-input (3488 matches) 20 deny ip any any log-input (1823 matches) Extended IP access list ntp_servers 10 permit udp host 89.109.251.21 any log-input (80 matches) 20 permit udp host 89.109.251.22 any log-input (81 matches) 30 permit udp host 89.109.251.23 any log-input (80 matches) 40 permit udp host 89.109.251.24 any log-input (82 matches) 50 deny ip any any log-input (3488 matches)
Ну и в заключении, листинг проделанной ними работы:
Router#sh run Building configuration... Current configuration : 1738 bytes ! ! Last configuration change at 09:27:21 MSK Tue Mar 26 2013 ! NVRAM config last updated at 12:01:47 MSK Tue Feb 26 2013 ! version 12.4 no service pad service tcp-keepalives-in service tcp-keepalives-out service timestamps debug datetime localtime service timestamps log datetime localtime service password-encryption service sequence-numbers ! hostname Router ! boot-start-marker boot-end-marker ! logging count logging message-counter syslog logging snmp-authfail logging userinfo logging buffered 51200 warnings no logging console guaranteed no logging console no logging monitor ! no aaa new-model clock timezone MSK 4 clock calendar-valid ! dot11 syslog ip source-route ! ip cef ! no ipv6 cef ! multilink bundle-name authenticated ! voice-card 0 ! archive log config hidekeys ! interface FastEthernet0/0 description INTERNET ip address XX.XX.XX.XX 255.255.255.248 ip verify unicast reverse-path no ip redirects no ip unreachables no ip proxy-arp ip nat outside ip virtual-reassembly max-reassemblies 32 duplex auto speed auto ntp disable no cdp enable no mop enabled ! interface FastEthernet0/1 description LOCALNET ip address 192.168.0.1 255.255.255.0 ip virtual-reassembly ip nat inside duplex auto speed auto no cdp enable ! ip forward-protocol nd no ip http server no ip http secure-server ! ip access-list extended ntp_clients permit udp 192.168.0.0 0.0.0.255 host 192.168.0.1 eq ntp log-input deny ip any any log-input ip access-list extended ntp_servers permit udp host 89.109.251.21 any log-input permit udp host 89.109.251.22 any log-input permit udp host 89.109.251.23 any log-input permit udp host 89.109.251.24 any log-input deny ip any any log-input ! no cdp run ! control-plane ! line con 0 line aux 0 line vty 0 4 login ! scheduler allocate 20000 1000 ntp logging ntp source FastEthernet0/1 ntp access-group peer ntp_servers kod ntp access-group serve ntp_clients kod ntp master 2 ntp update-calendar ntp server 89.109.251.21 prefer source FastEthernet0/0 ntp server 89.109.251.22 source FastEthernet0/0 ntp server 89.109.251.23 source FastEthernet0/0 ntp server 89.109.251.24 source FastEthernet0/0 end Router#
Все сделал как у Вас описано, но пока не ввел no ntp disable для внешнего интерфейса не работало.
Виталий, сервис ntp по умолчанию всегда включен для всех интерфейсов в приведенных мной моделях cisco и IOS.
А почему у Вас “show ntp associations” выдаёт, что у 127.127.1.1 stratum равен 1?
Разве это правильно?
Почему вы считаете, что если указать имя ntp сервера вместо адреса, то данные настройки пропадут при перезагрузке? Прописывать ip адреса вместо имен х.ru.pool.ntp.org нелогично, там адрес и так меняется каждый час.
Ринат, не знаю, как у Вас, но на всех моих cisco, в режиме configure terminal, при указании сервера ntp вот таким образом: х.ru.pool.ntp.org – при последующей перезагрузке настройка удаляется.
Поясните, зачем вы сделали disable ntp на интерфейсе?
Зачем прописываем на интерфейсах nat и в дальнейшем ничего с этим не делаем?
Написано всё толково… незачем придираться.
Автору респект.
Большое спасибо. настроил ntp, работает. Правда использовал не весь ваш конфиг. Еще бы в статью добавить как настроить на остальном оборудовании. допустим когда к главной cisco подключено еще несколько.