Настроим свой сервер времени и синхронизацию с ним клиентов Windows и Linux.
Настройка:
NTP Pool Project - список серверов точного времени.
Services -> NTP -> Settings
# NTP Server Configuration
- Выбираем на каких интерфейсах будет работать NTP Server,
Interface - LAN1 | LAN2;
Time Servers - 0.ru.pool.ntp.org | 1.ru.pool.ntp.org | 2.ru.pool.ntp.org | 3.ru.pool.ntp.org | (*) Is a Pool;
NTP Graphs - ();
Logging - ();
- Save;
- Настройка firewall,
Firewall -> Rules -> Lan Interface
Разрешаем входящие пакеты по протоколу IPv4 UDP с портом назначения 123
- Настраиваем DHCP-сервер,
Services -> DHCP Server -> Lan Interface
# Other Options
NTP - pfsense.domain.lan
- Просмотреть статус NTP сервера.
Status -> NTP
- Проверить логи работы сервиса NTP.
Status -> System Logs -> NTP
Clients:
Windows:
- Основные команды конфигурации w32tm:
w32tm /register - Регистрация и включение службы со стандартными параметрами.
w32tm /unregister - Отключение службы и удаление параметров конфигурации.
w32tm /monitor - Просмотр информации по домену.
w32tm /resync - Команда принудительной синхронизации с заданным в конфигурации источником.
w32tm /config /update - Применить и сохранить конфигурацию.
w32tm /config /syncfromflags:domhier /update – Задаем настройку синхронизации с контроллером домена.
w32tm /config /syncfromflags:manual /manualpeerlist:time.windows.com - задать конкретные источники синхронизации времени по протоколу NTP.
- Просмотр параметров (/query):
w32tm /query /computer:<target> - Информация о стутусе синхронизации определенной станции (если имя не указано - используется локальный компьютер).
w32tm /query /Source - Показать источник времени.
w32tm /query /Configuration - Вывод всех настроек службы времени Windows.
w32tm /query /Peers - Показать источники времени и их состояние.
w32tm /query /Status - Статус службы времени.
w32tm /query /Verbose - Подробный вывод всей информации о работе службы.
- Настройка,
# Панель управления -> Дата время -> Время по интернету -> Изменить параметры
И указываем - pfsense.domain.lan
- Не забываем включить Службу времени Windows
# WIN+R - services.msc, тип запуска - Автоматически, Запустить
# CMD,
- Проверяем статус,
MTV> w32tm /query /status
- Задаем адрес ntp-сервера,
MTV> w32tm /config /syncfromflags:manual /manualpeerlist:pfsense.domain.lan
- Запускаем службу,
MTV> net start w32time
- Применяем настройки,
MTV> w32tm /config /update
- Синхронизируем время,
MTV> w32tm /resync
Linux:
- Вывести текущую дату и время,
# date -R
- Устанавливаем пакеты,
ntp - сетевая служба времени и вспомогательные программы;
ntpdate - клиент для получения системного времени с серверов NTP;
# apt update && apt install ntp ntpdate
- Настройка ntp.conf
# nano /etc/ntp.conf
- Указываем наш локальный сервер,
server pfsense.domain.lan
- Можно также указать пул,
#pool 0.ru.pool.ntp.org
#pool 1.ru.pool.ntp.org
#pool 2.ru.pool.ntp.org
#pool 3.ru.pool.ntp.org
- Перезагружаем демон,
# /etc/init.d/ntp restart
- Проверить серверы с которых будет идти синхронизация,
# ntpq -p или -pn
В таблице указываются следующие параметры:
remote — адрес сервера точного времени (в этой графе отображаются серверы из списка в конфигурационном файле);
refid — вышестоящий сервер (тот, от которого сервер из предыдушей графы получает синхронизацию);
st — уровень (stratum) сервера;
t — тип пира (u- unicast, m- multicast);
when — время последней синхронизации;
poll — время в секундах, за которое демон NTP синхронизируется с пиром;
reach — состояние доступности сервера; после восьми успешных попыток синхронизации значение этого параметра становится равным 377;
delay — время задержки ответа от сервера;
offset — разница времени между нашим сервером и сервером синхронизации; положительное значение этого параметра означает, что наши часы спешат, отрицательное — что отстают;
jitter — смещение времени на удаленном сервере.
Слева от адреса сервера могут быть указаны следующие символы:
* сервер выбран для синхронизации;
+ сервер, пригодный для обновления (с которым можно синхронизироваться);
— с сервером синхронизироваться не рекомендуется;
х сервер недоступен.
- Проверить, пригоден ли сервер из списка для синхронизации,
ntpdate -q server (domain или ip)
- Устанавливаем на сервере локальную дату и время,
# ntpdate -u server (domain или ip)
- Проверяем изменения,
# date
Дополнительные настройки:
Если на ntp-сервере пропал интернет:
- Передать для синхронизации значения системных часов.
server 127.127.1.0
Ограничения на доступ для внешних клиентов:
* kod - клиент, отправляющий слишком частые запросы, сначала получит так называемый kod-пакет (предупреждение об отказе в обслуживании), а затем будет отключен от сервера;
* notrap - запрет приема управляющих сообщений;
* nomodify - запрет приема сообщений, изменяющих состояние сервера;
* nopeer - запрет установки одноранговых отношений с другими NTP-серверами;
* noquery - запрет любых запросов для синхронизации времени поступающих с других серверов;
* limited - запрет обслуживания, если интервал между пакетами от клиента превышает разрешенные значения;
restrict −4 default kod notrap nomodify nopeer noquery
restrict −6 default kod notrap nomodify nopeer noquery
- Разрешить синхронизацию из локальной сети:
restrict 192.168.1.0 mask 255.255.255.0 nomodify notrap
- Разрешить доступ без ограничений:
restrict 127.127.1.0
- Запретить доступ для всей сети:
restrict 192.168.2.0 mask 255.255.255.0 ignore
Серверы для синхронизации:
* iburst - увеличить точность синхронизации (на сервер будет отправляться несколько пакетов вместо одного);
* prefer - отметить сервер как предпочтительный;
server 0.ru.pool.ntp.org iburst prefer