Свой NTP сервер времени на FreeBSD

ntpИметь точное время на сервере надо всегда, а если сервер ещё обслуживает другие пк в сети, то в пору задуматься о своём сервере времени — NTP. Ставить и настраивать будем на FreeBSD.

Приступим. Устанавливаем из портов:

cd /usr/ports/net/ntp/
make install clean
rehash

Создаём и редактируем файл конфигурации демона:

touch /etc/ntp.conf
ee /etc/ntp.conf
 

Содержимое этого файла должно быть примерно следующим:

#сервера с которыми будем сверяться:
# prefer - приоритетный сервер
server 193.125.143.173 iburst burst prefer
server 213.79.103.146 iburst burst
server 195.200.216.138 iburst burst
server 85.21.78.6 iburst burst
#файл смещения и логов
driftfile /var/db/ntpd.drift
logfile /var/log/ntpd.log
#те, кому можно будет с нами взаимодействовать
restrict default ignore
#разрешим следующим серверам времени:
restrict 193.125.143.173
restrict 213.79.103.146
restrict 195.200.216.138
restrict 85.21.78.6
#и localhost'у
restrict 127.0.0.1
#разрешим пользоваться нашей службой компьютерам в сети
restrict 10.36.1.0 mask 255.255.255.0 nomodify notrap

Теперь создадим те самые файлы для логов и смещения:

touch /var/log/ntpd.log
touch /var/db/ntpd.drift

В /etc/rc.conf пропишем:

ntpd_enable="YES"
ntpd_program="/usr/local/bin/ntpd"

Запускаем демона:

/etc/rc.d/ntpd start

После запуска сервера нужно подождать немного, минут 15.
Проверим, работает ли наш сервер времени:

ntpdate -q localhost

Должны увидеть, что то вроде:

server 127.0.0.1, stratum 4, offset -0.000011, delay 0.02568
2 Nov 21:10:06 ntpdate[2130]: adjust time server 127.0.0.1 offset -0.000011 sec

если видите:

server ip_адрес, stratum 0, offset 0.000000, delay 0.00000
1 Nov 23:19:03 ntpdate[40529]: no server suitable for synchronization found

значит не работает.

Узнать эти же параметры, но на другом сервере в интернете можно командой:

ntpdate -q 0.ru.pool.ntp.org

Так же проверить синхронизацию можно выполнив:

ntpq -p

Должны увидеть нечто похожее на:

20091102-ntpq

Здесь
символы перед remote серверами
* — значит, что с него мы синхронизировались последний раз
+ — подходящий для обновления сервер
– — не подходящий для обновления сервер
x — сервер не доступен
столбец delay — задержка в миллисекундах
столбец when показывает, когда последний раз обновлялись мы с этого сервера.

Найти ближний к вам сервер, с которым вам лучше синхронизироваться можно здесь. Там вы найдёте нужные вам сервера в зависимости от расположения вашего сервера, будь то Европа, Азия, Северная Америка и другие точки на планете. Но обратите внимание на то, что в конфигурационном файле я указывал их IP адреса, т.к. при обращении по имени, синхронизация не работает. Объяснить я это могу тем, что одно доменное имя сервера имеет несколько IP адресов. Я пропинговал несколько раз один из серверов, посмотрел до какого ИП адреса сигнал доходит быстрее и вписывал эти адреса.
Узнать нынешнее время на вашем сервере можно, выполнив:

touch /tmp/time && ls -lT /tmp/time | awk '{print $9, $6, $7, $8}' && rm /tmp/time

Для настройки FrssBSD в качестве клиента синхронизации в /etc/rc.conf надо вписать:

ntpdate_enable="YES"
ntpdate_program="/usr/sbin/ntpdate"
ntpdate_flags="-u имя_серве_ntp"

Для настройки Windows XP в качестве клиента синхронизации, жмём по часикам в трее, на вкладке «internet time» вписываете ваш сервер в отведённое поле, нажимаете «update now»

time-update

И кстати, не забудьте открыть на фаерволе порт udp 123, иначе все телодвижения были бесполезны.


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

Ваш адрес email не будет опубликован.

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.

Unlix © Все права защищены 2022

Копирование материалов с сайта Unlix.ru без указания полной ссылки на источник ЗАПРЕЩЕНО!