chrony chronyc chronyc_sources chronyc_ntpdaya chronyc_clients
Ключевые моменты
- NTP работает на 123 порту по протоколу UDP
- NTP with AUTH - защищенное подключение, работающее на основе синхронного ключа. Ключ должен быть один и тот же как у клиента, так и у сервера.
- cronyc - пакет для настройки NTP
- Файлы конфигураций:
/etc/chrony/chronyc.conf # Конфиги
/etc/chrony/chronyc.key # Ключи для сервераРучная настройка клиента
- Установить chrony
apt install chrony- Указать сервера с которыми будет производиться синхронизация в файле /etc/chrony/chrony.conf:
# Через pool - указывается DNS к которому привязана пачка ntp серверов
pool 0.kz.pool.ntp.org iburst
# Через server - указывается DNS или IP адрес одиночного сервера времени
server ntp.vm.local iburst
# Или
server 192.168.1.100 iburst- Перезапуск службы
systemctl restart chronyПроверка работы ntp настроенного в ручном режиме:
chronyc_sources chronyc_ntpdaya chronyc sources - показать статус серверов синхронизации
^- time.firstlink.net.np 3 6 37 55 +4834us[+4834us] +/- 214ms
^- time2.unima.ac.id 2 6 37 55 -10ms[ -10ms] +/- 178ms
^- v160-16-113-133.ntp.tky2> 3 6 37 54 +32ms[ +32ms] +/- 112ms
^+ time.cloudflare.com 3 6 37 57 +3487us[+3288us] +/- 31ms
^+ ntp.nic.kz 1 6 37 56 -777us[ -975us] +/- 13ms
^- 45.132.84.104 3 6 37 57 +2005us[+1807us] +/- 119ms
^- 185.116.194.200 2 6 37 57 -6050us[-6249us] +/- 58ms
^* 213.157.40.210 2 6 37 56 -914us[-1112us] +/- 14mschronyc ntpdata - показать текущий статус синхронизации
Remote address : 172.16.20.1 (AC101401)
Remote port : 123
Local address : 172.16.20.10 (AC10140A)
Leap status : Normal
Version : 4
Mode : Server
Stratum : 3
Poll interval : 6 (64 seconds)
Precision : -26 (0.000000015 seconds)
Root delay : 0.022156 seconds
Root dispersion : 0.002594 seconds
Reference ID : AC100A01 ()
Reference time : Fri Jan 27 03:45:56 2023
Offset : +0.000189471 seconds
Peer delay : 0.000403266 seconds
Peer dispersion : 0.000000040 seconds
Response time : 0.000093885 seconds
Jitter asymmetry: +0.00
NTP tests : 111 111 1111
Interleaved : No
Authenticated : No
TX timestamping : Kernel
RX timestamping : Daemon
Total TX : 7
Total RX : 7
Total valid RX : 7- Нужно перезапускать службу networking если на сервере что-то меняли
Автоматическая настройка N TP
- Настройка происходит на DHCP-сервере в файле /etc/dhcp/dhcpd.conf.
- Нужно добавить option ntp-servers.
subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.2 192.168.1.254;
option routers 192.168.1.1;
option domain-name "vm.local";
option domain-name-servers 192.168.1.2;
option ntp-servers 192.168.168.1.2;
}Проверка работы ntp настроенного в автоматическом режиме:
- Через timedatectl status
timedatectl status
Local time: Wed 2023-01-25 21:58:10 EST
Universal time: Thu 2023-01-26 02:58:10 UTC
RTC time: Thu 2023-01-26 02:58:11
Time zone: America/New_York (EST, -0500)
System clock synchronized: yes
NTP service: active
RTC in local TZ: no- Через timedatectl timesync-status
user@debian:~$
Server: 172.16.20.1 (172.16.20.1)
Poll interval: 4min 16s (min: 32s; max 34min 8s)
Leap: normal
Version: 4
Stratum: 3
Reference: AC100A01
Precision: 1us (-25)
Root distance: 13.869ms (max: 5s)
Offset: +760us
Delay: 548us
Jitter: 292us
Packet count: 4
Frequency: +3.295ppmВ обоих случаях нас интересуют поля указывающие на адрес сервера с которым происходит синхронизация, фактический стратум и общее состояние синхронизации.
- Нужно перезапускать службу chrony если на сервере что-то меняли
Настройка NTP сервера
- Установить chrony
apt install chrony- Указать сервера с которыми будет производиться синхронизация в файле /etc/chrony/chrony.conf:
# Через pool - указывается DNS к которому привязана пачка ntp серверов
pool 0.kz.pool.ntp.org iburst
# Через server - указывается DNS или IP адрес одиночного сервера времени
server ntp.vm.local iburst
# Или
server 192.168.1.100 iburst
# Если сервер будет работать в автономном режиме
local stratum 10 # десятый уровень (0 - считается самым точным)- Для включения прослушивания запросов необходимо указать сети и/или устройства которым можно подключаться:
allow 172.16.0.0/16 # Для подсетки
allow 192.168.1.1 # Только для одного хоста
# Если нужно несколько, то нужно несколько allow
- Указать адрес с которого NTP сервер будет принимать запросы
bindaddress 192.168.1.1
# Если нужно несколько, то нужно bindacqaddress несколько раз.
- Перезапустить службу
Проверка работы NTP сервера
chronyc_clients 6. Команда: chronyc clients
Hostname NTP Drop Int IntL Last Cmd Drop Int Last
===============================================================================
172.16.20.11 4 0 6 - 156 0 0 - -
Отобразит устройства которые осуществляют синхронизацию с вашим сервером.
- Проверка статуса синхронизации на конечных устройствах, расписана в пунктах про ручную и автоматическую настройку клиентов NTP.
Настройка NTP без chrony
vi /etc/systemd/timesyncd.conf
[Time]
NTP=203.0.113.2
service systemd-timesyncd restart