Настраиваем в локальной сети сервер точного времени

ntpdДля любой локальной сети, а особенно доменной, для избежания проблем взаимодействия между сетевыми программами рекомендуется синхронизация компьютеров с сервером точного времени.
Наиболее популярной программой сервера точного времени является демон ntpd из пакета ntp. Ntp обычно устанавливать не требуется, программа уже входит в минимальный набор программ устанавливаемый вместе с системой.

Конфигурация сервера достаточно проста - создаем файл /etc/ntpd.conf с таким содержимым


#сервера синхронизации времени. 0 сервер выбран основным
server 0.pool.ntp.org iburst prefer
server 1.pool.ntp.org iburst
server 2.pool.ntp.org iburst
server 3.pool.ntp.org iburst

#Отключаем мониторинг list (из-за уязвимости к DDoS атакам)
disable monitor

#Файл смещения - корректирует отклонение времени системных часов
driftfile /var/db/ntpd.drift
#логфайл демона ntpd
logfile /var/log/ntp.log

#разрешаем доступ на изменение времени через локальный интерфейс
restrict 127.0.0.1
# Разрешаем менять наше время с серверов с которыми сверяемся
restrict 0.pool.ntp.org noquery notrap
restrict 1.pool.ntp.org noquery notrap
restrict 2.pool.ntp.org noquery notrap
restrict 3.pool.ntp.org noquery notrap

#сервер времени может принимать запросы только из локальной сети
restrict 192.168.0.0 mask 255.255.0.0 nomodify notrap nopeer

Сервера точного времени с которыми мы собираемся сверяться лучше выбирать из своей временной зоны. Список серверов можно посмотреть здесь.

Вот и вся настройка, от root или sudo запускаем сервер, если он не был запущен


#ntpd -c /etc/ntp.conf

если был запущен, как это обычно бывает в debian и ubuntu - перезапускаем ntpd


#sudo /etc/init.d/ntp restart

Убедимся что в логе /var/log/ntp.log нет ошибок и демон корректно запустился. Теперь надо подождать минут 15-20, пока пройдет полная синхронизация времени между вашим сервером и серверами интернет.
Проверяем сервера синхронизации. "+" показывает тот сервер с которым в последний раз была синхронизация


# ntpq -c peers
     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
*host-81.200.8.2 82.219.4.31      3 u   41  256  377   25.596   -3.286   0.181
+ns.mipt.ru      62.117.76.138    2 u  117  128  377   16.996    0.371   0.331
-95.140.94.2     193.79.237.14    2 u  111  128  377    9.457    5.808   0.349
+ddt2.static.cor 192.36.143.151   2 u  108  128  377   51.185   -5.608   1.775

Запрос на синхронизацию с самим собой


#ntpdate -q localhost
server 127.0.0.1, stratum 4, offset -0.000003, delay 0.02562
27 Sep 17:16:23 ntpdate[16306]: adjust time server 127.0.0.1 offset -0.000003 sec

Самой лучшей проверки работы сервера времени будет успешная синхронизация времени клиентского компьютера. Для клиентов ОС unix выполняем команду от root или sudo


#ntpdate <сервер времени>
например
# ntpdate gw
27 Sep 15:44:15 ntpdate[32159]: adjust time server 192.168.0.1 offset -0.272284 sec

Сервер работает и отдает правильное время - задача выполнена. Добавим загрузку демона в стартовые скрипты ОС и при необходимости открываем порт 123 udp.
Для FreeBSD


add pass udp from any to me 123 via <интерфейса_нашего_сервера>
add pass udp from me 123 to any via <интерфейса_нашего_сервера>

Для Linux


#пердполагается что все исходящее у нас разрешено по умолчанию
iptables -A INPUT -p udp -s 0/0 --sport 123 -d <ip_интерфейса_нашего_сервера> \
 --dport 1024:65535 -m state --state ESTABLISHED -j ACCEPT

В большинстве linux дистрибутивов что-то дополнительно для прописывания в запуск не требуется, это делается автоматически при установке пакета ntp.
Для FreeBSD добавим в /etc/rc.conf


ntpd_enable="YES"
ntpd_config="/etc/ntp/ntp.conf"
ntpd_sync_on_start="YES"

Для сети с доменом из win машин в GPO AD указываем включение сервиса времени на всех ПК, и указать сервер с кем синхронизироваться.

Статья просмотрена 8 770 раз
Запись опубликована в рубрике Сервера с метками . Добавьте в закладки постоянную ссылку.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>