Как настроить синхронизацию часов с помощью NTP
Network Time Protocol (NTP) — сетевой протокол для синхронизации системного времени компьютеров через сетевое соединение. При установке соединения NTP-клиент (ваш сервер или ВМ) отправляет запрос на UDP‑порт 123 к нескольким серверам. Они отвечают точным временем, основанным на атомных часах или GPS, и NTP-клиент корректирует локальные часы с точностью до микросекунд.
Ищете надежную инфраструктуру для запуска и масштабирования вашего проекта? Обратите внимание на облачные решения от Облака Рег.ру — это удобная платформа, где собраны IaaS, PaaS и SaaS‑сервисы для любых бизнес-задач.
Зачем нужна синхронизация часов
Автоматическая синхронизация времени необходима, чтобы:
- Обеспечить единую временную шкалу. Все устройства и приложения опираются на одинаковое системное время, что очень важно для корректного обмена событиями и данными.
- Гарантировать корректность транзакций и безопасности. TLS/SSL-сертификаты, Kerberos-аутентификация, электронная подпись и другие механизмы шифрования тоже требуют точного времени.
- Вести точные логи и аудит. Метки времени позволяют расследовать инциденты и контролировать безопасность — без них анализ событий невозможен.
- Упорядочить расписания и задачи. Планировщики (cron), резервное копирование и рассылки зависят от правильного времени запуска.
- Соблюдать нормативные требования. Некоторые системы и регламенты требуют хранения временных меток с высокой точностью.
Правильная настройка синхронизации времени с помощью NTP — залог корректной работы всей инфраструктуры. Она предотвращает множество потенциальных проблем, которые связаны с несоответствием времени.
Рекомендуемые NTP-серверы для России
Для наиболее надежной работы рекомендуются:
Пуловые серверы:
- 0.ru.pool.ntp.org (основной)
- 1.ru.pool.ntp.org (резервный)
- 2.ru.pool.ntp.org (балансировочный)
- 3.ru.pool.ntp.org (дополнительный резервный)
Специализированные серверы:
- ntp1.vniiftri.ru (сервер ВНИИФТРИ)
- ntp2.vniiftri.ru (резервный сервер ВНИИФТРИ)
- ntp3.vniiftri.ru (дополнительный сервер ВНИИФТРИ)
Использование комбинации пуловых и специализированных серверов обеспечит:
- высокую точность (до миллисекунд);
- надежность за счет резервирования;
- минимальные задержки благодаря географической близости серверов;
- стабильность и балансировку нагрузки.

Настройка синхронизации часов с помощью NTP
Есть несколько инструментов и подходов к настройке синхронизации времени на сервере. Выбор зависит от операционной системы и сервиса, который используется для установки.
Способ 1. Синхронизация времени Linux с помощью systemd-timesyncd
systemd-timesyncd — это минималистичный клиент синхронизации времени, который встроен в systemd. Он не требует отдельной установки, потребляет минимум ресурсов и подходит для большинства серверов, где не нужна продвинутая конфигурация.
Важно! Если на сервере используется systemd, то, скорее всего, установлен встроенный сервис синхронизации времени systemd-timesyncd. Однако этот сервис может конфликтовать с классическим демоном ntpd, если он также запущен. Проверить запущенные сервисы можно командой:
1 |
ps -eF |
Если ntpd запущен, выберите один из сервисов. Например, вы можете остановить и отключить ntpd:
1 2 |
sudo systemctl stop ntp sudo systemctl disable ntp |
1. Чтобы настроить синхронизацию с помощью systemd-timesyncd, откройте конфигурационный файл:
1 |
sudo nano /etc/systemd/timesyncd.conf |
2. Укажите рекомендованные серверы в секции [Time]:
1 2 |
[Time] FallbackNTP=0.ru.pool.ntp.org 1.ru.pool.ntp.org ntp0.NL.net ntp2.vniiftri.ru ntp.ix.ru |
3. Убедитесь, что в конфигурации сети включена синхронизация времени. Файлы конфигурации обычно находятся по следующим путям:
- /etc/systemd/network/
- /var/lib/systemd/network/
- /etc/systemd/networkd.conf
4. Параметр должен быть указан как true:
1 |
UseNTP=true |
5. Перезапустите сервис:
1 |
sudo systemctl restart systemd-timesyncd |
6. Пропишите:
1 |
sudo systemctl daemon-reload |
7. Проверьте синхронизацию времени:
1 |
timedatectl |
8. В выводе должно быть указано:
1 2 |
System clock synchronized: yes NTP service: active |

Способ 2. Синхронизация времени Linux с помощью ntpd
ntpd — это классический демон синхронизации времени, который основан на полном протоколе NTP. Он позволяет тонко настраивать поведение клиента, указывать предпочтения между серверами, использовать аутентификацию и даже запускать сервер времени внутри сети.
Важно! Если одновременно работают сервисы ntpd и systemd-timesyncd, между ними может возникнуть конфликт. Вы можете либо удалить systemd-timesyncd, либо настроить синхронизацию времени через него — подробнее в способе 1.
Чтобы узнать, какие службы активны, выполните команду:
1 |
ps -eF |
Если systemd-timesyncd запущен, но вы предпочитаете ntpd, то отключите ненужный сервис:
1 2 |
sudo systemctl stop systemd-timesyncd sudo systemctl disable systemd-timesyncd |
1. Установите ntpd:
1 |
sudo apt install ntp |
2. Отредактируйте файл конфигурации:
1 |
sudo nano /etc/ntp.conf |
3. Закомментируйте стандартные серверы и укажите рекомендуемые:
1 2 3 4 5 |
server 0.ubuntu.pool.ntp.org server 1.ubuntu.pool.ntp.org server 0.ru.pool.ntp.org server 1.ru.pool.ntp.org server ntp2.vniiftri.ru |
4. Перезапустите ntpd:
1 |
sudo service ntp restart |
5. Проверьте состояние синхронизации:
1 |
sudo ntpq -p |

Способ 3. Синхронизация времени Linux с помощью chrony
chrony — современный и точный инструмент синхронизации времени, который включен во многие дистрибутивы Linux. Он хорошо работает в виртуализированных средах и в условиях нестабильного или прерывистого интернет-соединения.
1. Подключите Chrony и запустите службу:
1 2 |
sudo apt install -y chrony sudo systemctl enable --now chronyd |
2. Отредактируйте список NTP-серверов. Для этого откройте конфигурационный файл:
1 |
sudo vi /etc/chrony/chrony.conf |
3. Замените или дополните строки с NTP-серверами. Каждый сервер должен быть указан на новой строке с параметром iburst для ускоренного старта:
1 2 3 4 |
server 0.ru.pool.ntp.org iburst server 1.ru.pool.ntp.org iburst server ntp1.vniiftri.ru iburst server ntp2.vniiftri.ru iburst |
4. Перезапустите службу, чтобы применить изменения:
1 |
sudo systemctl restart chronyd |
5. Проверьте, от каких серверов сейчас поступает синхронизация:
1 |
chronyc -N sources |
Пример вывода:
1 2 3 |
MS Name/IP address Stratum Poll Reach LastRx Last sample ^* ntp1.vniiftri.ru 1 10 377 34 -0.035 0.006 ^+ 0.ru.pool.ntp.org 2 10 377 36 -0.125 0.011 |
Символ * указывает текущий основной сервер. + — дополнительный.

Способ 4. Синхронизация времени Windows Server
Для Windows используется служба Windows Time (w32time).
1. Подключитесь к Windows Server через RDP и запустите командную строку (cmd) или PowerShell от имени администратора.
2. Остановите службу времени:
1 |
net stop w32time |
3. Настройте NTP-серверы:
1 |
w32tm /config /syncfromflags:manual /manualpeerlist:"0.ru.pool.ntp.org 1.ru.pool.ntp.org ntp0.NL.net ntp2.vniiftri.ru ntp.ix.ru" |
4. Установите сервер как надежный источник времени:
1 |
w32tm /config /reliable:yes |
5. Запустите службу времени:
1 |
net start w32time |
6. Проверьте текущую конфигурацию:
1 |
w32tm /query /configuration |
Убедитесь, что в выводе указан список серверов, который вы прописали.
Готово! Настройка синхронизации времени с помощью NTP завершена. Часы сервера теперь автоматически обновляются по точному источнику, тем самым обеспечивая корректную работу систем и журналов.