Свой 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 © Все права защищены 2023

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