Инструкция обновлена 9 августа 2025 г.
Синхронизация времени — это критически важный, но часто недооцененный аспект работы любой IT-инфраструктуры. Несовпадение временных меток всего на несколько секунд может привести к сбоям в аутентификации, ошибкам репликации баз данных и некорректной работе распределенных систем. За корректную синхронизацию времени на компьютерах и серверах, подключенных к сети, отвечает NTP-протокол, являющийся отраслевым стандартом.
Сегодня мы подробно рассмотрим настройку NTP-сервера на операционных системах Ubuntu 24.04, CentOS 9 и Windows Server 2022, а также расскажем, как настроить наш NTP-сервер для синхронизации с клиентами.
VDS и VPS
биллингом по всему миру: Россия, Азия и Европа.
Настройка NTP-сервера на Linux
Установим и настроим NTP-сервер на двух Linux-дистрибутивах — Ubuntu 22.04 и CentOS 9. Мы будем использовать Chrony — усовершенствованную и более эффективную реализацию протокола NTP, разработанную с нуля для лучшей работы при нестабильных сетевых условиях и при меньшем потреблении ресурсов, в отличие от классического NTP-демона (ntpd).
1) Для дистрибутива Ubuntu необходимо использовать команду:
Для дистрибутива CentOS команда установки будет следующей:
2) Основной конфигурационный файл Chrony — chrony.conf. В Ubuntu он находится в директории /etc/chrony/, в CentOS — в /etc/. Перед тем как вносить изменения, сделаем резервную копию файла, чтобы можно было откатиться к первоначальным настройкам в случае проблем:
Ubuntu:
CentOS:
3) При помощи любого текстового редактора, например nano, открываем на редактирование файл chrony.conf:
Ubuntu:
В дистрибутиве CentOS редактор nano по умолчанию отсутствует. Для его установки выполним команду:
Далее открываем конфигурационный файл:
Необходимо задать внешние серверы NTP, с которыми будет происходить синхронизация для получения текущего времени. Находим строки, которые начинаются со слова pool. Удалим значения по умолчанию и добавим новые адреса серверов:
Параметр iburst используется для отправки пакетов с короткими интервалами при первом подключении к NTP-серверу. Это ускоряет начальную синхронизацию, особенно на медленных или ненадежных сетях, помогая быстрее установить начальное время.

4) Перезапускаем сервис chrony:
Ubuntu:
CentOS:
6) Проверяем статус сервиса:
Ubuntu:

CentOS:
Если в выводе команды отображается active (running), то сервис успешно запущен и работает.
7) Добавляем сервис в автозагрузку:
Ubuntu:
CentOS:
8) Узнать подробный статус, а также получить список всех источников времени (NTP-серверов), которые знает и опрашивает Chrony, можно при помощи команды:

В частности, в поле Reference ID отображается IP-адрес сервера, с которым в данный момент синхронизируется система (источник эталонного времени).
9) Дополнительно можно получить информацию об источниках времени (NTP-серверах), с которыми синхронизируется сервер через Chrony:

На этом установка и настройка сервера NTP завершена. Теперь ваш сервер будет синхронихировать время по указанным публичным NTP-серверам.
Настройка сервера NTP для синхронизации клиентских устройств
В этом разделе рассмотрим, как разрешить доступ клиентам, чтобы они могли использовать настроенный выше NTP-сервер для получения времени. Если «раздача» времени на дополнительные серверы вам не нужна, описанные ниже шаги выполнять не требуется.
1) Открываем на редактирование файл chrony.conf:
Ubuntu:
CentOS:
В конец файла добавим директиву allow. В качестве примера укажем IP-адрес клиентского сервера (не забудьте поменять клиентский IP адрес на свой):
Также можно указать всю подсеть сразу:
Сохраняем изменения и выходим из файла.
2) Перезапускаем сервис chrony:
Ubuntu:
CentOS:
6) Проверяем статус сервиса:
Ubuntu:
CentOS:
Если в выводе команды отображается active (running), то сервис успешно запущен и работает.
Подключение клиентов к NTP-серверу
Перечисленные ниже команды необходимо выполнять на сервере, который будет выступать в роли клиента.
1) Установим сервис chrony.
Ubuntu:
CentOS:
2) Открываем на редактирование конфигурационный файл chrony.conf:
Ubuntu:
CentOS:
Удаляем или закомментируем все строки, которые начинаются со слова pool, и меняем их на строку следующего вида:
Где 185.42.14.235 — это IP-адрес нашего NTP-сервера с chrony.

Сохраняем изменения и выходим из файла.
3) Далее перезапускаем демон chrony и проверяем его статус.
Ubuntu:
CentOS:
Если в выводе команды отображается active (running), то сервис успешно запущен и работает.
4) Для проверки синхронизации времени с ранее настроенным сервером chrony выполняем команду:

В параметре Reference ID должен быть указан адрес нашего сервера. Если IP-адрес отображается корректно, то наш клиентский сервер успешно синхронизируется с сервером chrony.
Настройка NTP-сервера на Windows Server 2022
В Windows Server настройку NTP выполним при помощи PowerShell.
1) Открываем PowerShell. Для начала необходимо запустить службу NTP:
2) Настроим службу времени Windows для синхронизации с NTP-сервером по адресу 0.ru.pool.ntp.org:

3) Добавим конфигурацию сервера в реестр при помощи команд:
4) Перезапускаем сервис w32time:
5) Стоит обратить внимание, что по умолчанию в Windows Server 2022 порт 123, который использует протокол NTP, заблокирован для входящих подключений. Создадим правило чтобы клиентские компьютеры могли получить доступ до нашего NTP сервера:

6) Проверим конфигурацию:

На этом этапе настройка NTP-сервера успешно завершена.
Подключение клиентов к NTP-серверу
В этом разделе мы рассмотрим, как настроить ваш сервер на «раздачу» времени — чтобы другие серверы в вашей инфраструктуре могли синхронизировать время по нему, если такая настройка вам необходима.
Перечисленные ниже действия необходимо выполнять на сервере с Windows Server, который будет выступать в роли клиента.
1) Открываем PowerShell. Для начала необходимо запустить службу NTP:
2) Настроим подключение к серверу NTP при помощи команды:
Где 5.129.246.154 — это адрес нашего NTP-сервера.

3) Включаем NTP-клиент:
4) Перезапускаем сервис w32time:
5) Принудительно синхронизируем время с ранее настроенным NTP-сервером:

6) Для проверки статуса синхронизации выполним команду:

В параметре Source должен отображаться сервер с NTP, к которому мы подключились на предыдущем шаге.
Заключение
Грамотная конфигурация синхронизации времени по протоколу NTP служит краеугольным камнем для обеспечения отказоустойчивости и согласованности работы всех компонентов IT-инфраструктуры. В статье мы детально разобрали, как развернуть и настроить NTP-сервер, а также его клиенты в операционных системах Linux и Windows Server.
Ключевые выгоды внедрения NTP-синхронизации заключаются в следующем:
-
Необходимость: Точное время — это не удобство, а требование для работы современных сетевых протоколов безопасности, распределенных приложений и корректного анализа логов.
-
Универсальность: Несмотря на платформенные различия, принципы работы NTP едины: выбор источников и контроль синхронизации.
-
Контроль: Обязательным элементом является мониторинг для проверки статуса синхронизации и своевременного выявления расхождений.
