Konfiguracja protokołu NTP
Ręczna konfiguracja czasu lokalnego
Konfiguracja zegara
# clock set godzina:minuta:sekunda dzień miesiąc rok
Ustawia nową godzinę jak i nową datę urządzenia.
# clock update-calendar
Aktualizuję ustawienia czasu systemu IOS (software) z ustawieniami urządzenia (hardware).
Konfiguracja strefy czasowej
(config)# clock timezone strefa-czasowa opóźnienie-czasu
Ustala strefą czasową w której pracuje urządzenie. W przypadku Polski komeda będzie wyglądała następująco [clock timezone +48 1 bądź clock timezone EDT 1] z czego +48 oznacza strefę PL a 1 różnice czasową do strefy 0.
(config)# clock summer-time strefa-czasowa date dzień miesiąc rok godzina dzień miesiąc rok godzina
Określa strefę czasową w jakiej znajduje się urządzenie wraz z dokładną datą rozpoczęcia i zakończenia czasu letniego. W przypadku Polski komeda będzie wyglądała następująco [clock summer-time UTC recurring last Sun Mar 2:00 last Sun Oct 3:00].
Podstawowa konfiguracja protokołu NTP
Domyślna konfiguracją protokołu NTP na ruterach jak i przełącznikach Cisco sprawia, że działają one zarówno jako klient jak i serwer protokołu NTP jednocześnie (Należy przy tym pamiętać, że prawdziwym zaufanym serwerem czasu zostaje jedynie urządzenie skonfigurowane za pomocą komendy [ntp master]).
W przypadku konfiguracji serwera NTP na ruterze Cisco, dobrą praktyką jest stworzenie interfejsu LoopBack, na który powoływać się będą klienci usługi NTP. Dzięki czemu awaria jednego z interfejsów nie zakłuci działania protokołu.
Konfiguracja serwera protokołu NTP
(config)# ntp master [1-15(8)(Stratum)]
Określa rolę danego urządzenia jako zaufany server protokołu NTP.
(config)# ntp peer {nazwa-hosta / adres-IP}
Określa adres IP innego serwera NTP, w celu uzyskania nadmiarowości.
(config)# interface interfejs
Włącza funkcję pasywną na określonym interfejsie sieciowym.
(config-if)# ntp broadcast
Aktywuje tryb Broadcast dla protokołu NTP na danym urządzeniu, względem określonego interfejsu bądź wielu interfejsów sieciowych.
Konfiguracja klienta protokołu NTP
(config)# ntp server {nazwa-hosta / adres-IP} [prefer] [version {3 / 4}(4)]
Określa adres IP bądź nazwę domenową serwera NTP (dodatkowa opcja „prefer” definiuje dany adres jako domyślny w przypadku skonfigurowania większej liczby serwerów NTP, natomiast komenda „version” określa wykorzystywaną wersją protokołu).
(config)# ntp broadcast client
Urządzenie zaczyna pełnić rolę klienta protokołu NTP dla wiadomości rozgłoszeniowych.
(config)# ntp source interfejs
Określa źródłowy interfejs wykorzystywany w komunikacji ze serwerem NTP.
Uwierzytelnianie protokołu NTP za pomocą klucza MD5
Konfiguracja serwera protokołu NTP
(config)# ntp master [1-15(8)(Wartość Stratum)]
Określa rolę danego urządzenia jako zaufany server protokołu NTP.
(config)# ntp authenticate
Aktywuje uwierzytelnianie serwera NTP.
(config)# ntp authentication-key ID-klucza md5 klucz
Tworzy nowy klucz MD5 z przypisanym numerem ID (Komenda może być wykonana wielokrotnie tworząc większą liczbę kluczy).
(config)# ntp trusted-key ID-klucza
Określa zaufany klucz służący do autentykacji klientów NTP (Komenda może być wykonana wielokrotnie umożliwiając przypisanie większej ilości kluczy dla różnych klientów NTP).
Konfiguracja klienta protokołu NTP
(config)# ntp authenticate
Aktywuje uwierzytelnianie klienta protokołu NTP.
(config)# ntp authentication-key ID-klucza md5 klucz
Tworzy nowy klucz MD5 z przypisanym numerem ID.
(config)# ntp trusted-key ID-klucza
Określa zaufany klucz służący do uwierzytelniania serwera NTP.
(config)# ntp server {nazwa-hosta / adres-IP} key ID-klucza
Przypisuje klucz do określonego serwera NTP.
W przypadku wykorzystywania adresacji IPv6 konieczne jest użycie pod komendy „version 4” na końcu każdej komendy NTP wymagającej podania adresu IPv6. Przykładowo [ntp server 2002:ACAC:32:FR:3 version 4].
Protokół NTP a listy ACL
Pomimo zastosowania autentykacji serwera NTP przy pomocy klucza, nadal wszystkie hosty w sieci mogą aktualizować swój czas systemowy z konfigurowanym urządzeniem (O ile znają kluz autentykacji). Aby dodatkowo ograniczyć to zjawisko należy stworzyć listę ACL określającą jakie adresy IP mogą aktualizować zegary a jakie nie.
(config)# access-list lista-ACL permit adres-IP maska
Tworzy nową listę dostępu ACL.
(config)# ntp access-group opcja lista-ACL
Przyłącza listę ACL do konfiguracji protokołu NTP.
* peer – Aktualizuje swój zegar jedynie z adresami zawartymi w liście ACL.
* serve – Dopuszcza zapytania dotyczące aktualizacji czasu jedynie od adresów zawartych w liście ACL. Odpowiada na zapytania NTP Request.
Odrzuca aktualizacje NTP updates.
* serve-only – Umożliwia klientom, których adres IP jest zgodny z listą ACL, synchronizację czasu zegara. Zabraniając przy tym aktualizacji własnego zegara z innymi źródłami NTP. Odpowiada jedynie na zapytania NTP Request.
Odrzuca prośbę o synchronizację czasu lokalnego.
Blokowanie protokołu NTP
Podstawowe blokowanie protokołu NTP
(config)# interface interfejs
Przechodzi do poziomu konfiguracji, określonego interfejsu sieciowego.
(config-if)# ntp disable
Wyłącza serwis protokołu NTP, na konfigurowanym interfejsie sieciowym.
Blokowanie protokołu NTP na podstawie listy ACL
(config-)# access list lista-ACL deny udp any eq 123 any eq 123
Definiuje listę dostępową ACL, blokującą cały ruch protokołu NTP (Domyślny port 123).
(config-)# access-list lista-ACL permit any any
Definiuje listę dostępową ACL, przepuszczającą pozostały ruch sieciowy.
(config)# interface interfejs
Przechodzi do poziomu konfiguracji, określonego interfejsu sieciowego.
(config-if)# ip access-group lista-ACL in
Przypisuje stworzoną listę ACL, do konfigurowanego interfejsu sieciowego.
Komendy Show
# show clock [detail]
Wyświetla czas oraz date lokalnego systemu (software). Dodatkowa komenda „detail” wyświetla źródło, z którego system pobierał informacje o czasie zegara.
# show calendar
Wyświetla czas oraz date lokalnego urządzenia (Hardware). Dodatkowa komenda „detail” wyświetla źródło, z którego system pobierał informacje o czasie zegara.
# show ntp associations
Wyświetla skonfigurowane serwery czasu. W przypadku klienta komunikat „unsynchronized” oznacza, że urządzenie nie pobiera jeszcze żadnych danych od serwera NTP. Natomiast w przypadku serwera „ntp master” ten komunikat będzie widoczny przez cały czas.
# show ntp status
Wyświetla status protokołu NTP na danym urządzeniu.
# show ntp config
Wyświetla konfiguracją protokołu NTP na danym urządzeniu.
# show ntp information
Wyświetla informacje dotyczące wersji protokołu NTP na danym urządzeniu.
# show ntp packets
Wyświetla ilość wysłanych / odebranych pakietów protokołu NTP na danym urządzeniu.
