Настройка синхронизации времени в домене Windows Server 2008 R2/2012 R2 | IT-блог Жаконды

Включение ntp-сервера

NTP-сервер по умолчанию включен на всех контроллерах домена, однако его можно включить и на рядовых серверах.

  • [HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesW32TimeTimeProvidersNtpServer]
  • "Enabled"=dword:00000001

Включение синхронизации внутренних часов с внешним источником

  • [HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesW32TimeParameters]
  • "Type"="NTP"
  • w32tm /config /syncfromflags:manual

Подробности — в библиотеке TechNet.

Задание интервала синхронизации с внешним источником

Время в секундах между опросами источника синхронизации, по умолчанию 900с = 15мин. Работает только для источников, помеченных флагом 0×1.

  • [HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesW32TimeTimeProvidersNtpClient]
  • "SpecialPollInterval"=dword:00000384

Конфигурация ntp-сервера

Задаем тип синхронизации внутренних часов, на использование внешнего источника. (Командная строка/Реестр):

  • w32tm /config /syncfromflags:manual
  • [HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesW32TimeParameters] — «Type»=NTP

Конфигурация ntp-сервера на корневом pdc

Конфигурирование сервера времени (NTP-сервера) может осуществляться как с помощью утилиты командной строки w32tm, так и через реестр. Где возможно, я приведу оба варианта.

Конфигурация ntp-сервера/клиента групповой политикой

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

Настройка сервера времени на домен контроллере — реальные заметки ubuntu & mikrotik

Задача: разобрать действия по организации сервиса времени для всей локальной сети дабы рабочие станции, сервера получали точное время и оно везде было одинаковым. Сервис времени организовывается на домен контроллере под управлением операционной системы Windows Server 2022 R2, также действия ниже аналогичны и для Server 2008 R2

Схема: интернет — MikrotikDC — Workstations

Открываю на srv-dc консоль командной строки с правами администратора:

Win X — Command Prompt (Admin)

Определяю какой домен контроллер (Windows Server 2022 R2 Std) имеет роль PDC если домен контроллеров несколько в домене:

C:Windowssystem32>netdom query fsmo

  • Schema master srv-dc.polygon.local
  • Domain naming master srv-dc.polygon.local
  • PDC srv-dc.polygon.local
  • RID pool manager srv-dc.polygon.local
  • Infrastructure master srv-dc.polygon.local

The command completed successfully.

Как видно из вывода, это контроллер домена srv-dc.polygon.local, подключаюсь теперь к нему по RDP или VNC соединению для выполнения следующих команд:

C:Windowssystem32>net stop w32time

Настраиваем внешний источник времени:

C:Windowssystem32>w32tm /config /syncfromflags:manual /manualpeerlist:"0.pool.ntp.org"

Cделать ваш контроллер доменаPDCдоступным для клиентов:

C:Windowssystem32>w32tm /config /reliable:yes

Запускаю службу времени:

C:Windowssystem32>net start w32time

Также можно изменения вносить и через реестр в ключе: HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesW32TimeParameters

Чтобы после принудительно запросить получение точного времени проделываем:

C:Windowssystem32>W32tm /config /reliable:yes

The command completed successfully.

C:Windowssystem32>W32tm /config /update

The command completed successfully.

C:Windowssystem32>W32tm /resync

Sending resync command to local computer

The command completed successfully.

Вот и все, служба времени Windows начинает синхронизацию времени с внешним источником, посмотреть этот процесс можно так:

C:Windowssystem32>w32tm /query /configuration

После нужно добавить параметр вDHCPоснастку, что сервер времени это наш домен контроллер:

:/>  Как убрать стрелки с ярлыков в WIndows XP, 7 и 8

Win X — Control Panel — Administrative Tools — запускаю оснастку DHCP: DHCP → srv-dc.polygon.local → IPv4 → Scope [10.10.10.0] local → и через правый клик мышью по Scope Options вызываю меню Configure Options… где добавляю опцию для всего домена: 042 NTP Servers

Параметр времени для роли DHCP домен контроллера Server 2022 R2Теперь доменные Windows станции будут знать, что сервер времени это домен контроллер, а для моих Ubuntu системы после установке sudo apt-get install ntp -y в файле /etc/ntp.conf нужно будет в параметре server указать IP адрес этого домен контроллера и перезапустить службу времени sudo service ntp restart.

Если же у Вас DHCP сервис развернут не на Windows, то донести до всех где брать точное время можно через групповые политики GPO. Создаем GPO_NTP и предопределяем, что ориентирована она будет на текущий домен и все рабочие станции посредством WMI-фильтра.

Открываю оснастку на srv-dc управления групповыми политиками домена:

Win X — Control Panel — Administrative Tools — Group Policy Management, открываю на редактирование: Group Policy Management → Forest: polygon.local → Domains → polygon.local → и через правый клик мышью по WMI Filters вызываю меню New…

  • Name:W7
  • Decription: Windows 7 x86/x64
  • Queries:Add
  • Namespace:rootCIMv2
  • Query:Select
    * from WIN32_OperatingSystem where ((Version > "6") and
    (ProductType = 1))

и
нажимаю OK, OK, Save

После перехожу к редактированию групповой политики для рабочих станции домена, через правый клик мышью по GPO_NTP вызываю меню Edit.

Computer Configuration → Policies → Administrative Tools → System → Windows Time Service → Time Providers → Configure Windows NTP Client, включаю ее Enabled и определяю настройки:

Настройки NTP через GPO для рабочих станций

NtpServer: srv-dc.polygon.local,0x9

все остальное оставляю по умолчанию.
После нажимаю Apply & OK.

И не забываем к политике добавить WMI фильтр. В конечном итоге политика должна выглядеть так:

Итоговый вид групповой политики

После когда политика применится к системам согласно WMI-фильтру можно будет проверить куда смотрит рабочая станции если ей нужно точное время:

C:Usersalektest>w32tm /query /status

Индикатор помех: 0(предупреждений нет)

Страта: 4 (вторичная ссылка - синхронизирована с помощью (S)NTP)

Точность: -6 (15.625ms за такт времени)

Задержка корня: 0.0876923s

Дисперсия корня: 7.8503892s

Идентификатор опорного времени: 0x0A0A0A02 (IP-адрес источника: 10.10.10.2)

Время последней успешной синхронизации: 30.04.2022 16:46:38

Источник: srv-dc.polygon.local

Интервал опроса: 10 (1024s)

C:Usersalektest>w32tm /monitor

srv-dc.polygon.local *** PDC ***[10.10.10.2:123]:

ICMP: 0ms задержка

NTP: 0.0000000s смещение относительно srv-dc.polygon.local

RefID: ground.corbina.net [85.21.78.91]

Страта: 3

Работает.

На замету:Если же в локальной сети появятся рабочие станции под управлениемWindows 8и выше, то нужно будет модифицироватьWMIфильтр.

Но как известно, в случае чего с домен контроллером его роли можно забирать, так может произойти в случае различных проблем. Вот забрали роль PDC и время поехало во всем домене, чтобы этого не произошло нужно создать групповую политику ориентированную только на домен контроллер с рольюPDC: GPO_PDC и WMI фильтр с именем PDC следующего содержания:

:/>  Проверка доступности uri адреса средствами powershell на подобие curl

Select * from Win32_ComputerSystem where DomainRole = 5

Computer Configuration → Policies → Administrative Tools → System → Windows Time Service → Time Providers → Configure Windows NTP Client, включаю ее Enabled и определяю настройки:

Настройки NTP через GPO для домен контроллера с ролью PDC

NtpServer:0.pool.ntp.org,0x9

все
остальное оставляю по умолчанию.
После нажимаю Apply & OK.

и Computer Configuration → Policies → Administrative Tools → System → Windows Time Service → Time Providers -> Enable Windows NTP Client включить Enable.

Также параметр Type вместо NT5DS можно использовать и NTP

И не забываем к политике добавить WMI фильтр ← PDC. Теперь не важно кто является домен контроллером, точное время на нем будет.

А раз так, что рабочие станции не обязательно привязывать/создавать к политике назначения точного времени, ведь по умолчанию рабочие станции домена, итак, забирают точное время с контроллера домена по умолчанию.

Подведу итог:

  • Настраиваю GPO и привязываю ее через WMI фильтр к серверу у которого есть роль PDC
  • В оснастке DHCP указываю параметр кто в домене является сервером у которого клиентским рабочим станциям запрашивать точное время.
  • Если DHCP не на базе Windows, то можно настроить GPO и сделать нацеливание на определенную ось.

На заметку:Если домен контроллер развернут на виртуальной системе, то следует проверить, что время берется не с гипервизора, а через настройку этой заметки.

На заметку:если рольPDC была переназначена на другой сервер, то я советую перезагрузить домен контроллер и все остальные также.

На этом у меня все. Задача выполнена и задокументирована, с уважением автор блога Олло Александр aka ekzorchik.

Объявление ntp-сервера в качестве надежного

  • [HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesW32TimeConfig]
  • "AnnounceFlags"=dword:0000000a
  • w32tm /config /reliable:yes

Подробности — в библиотеке TechNet.

Особенности виртуализированных контроллеров домена

Контроллеры домена, работающие в виртуализированной среде, требуют к себе особенного отношения.

  • Средства синхронизации времени виртуальной машины и хостовой ОС должны быть выключены. Во всех адекватных системах виртуализации (Microsoft, vmWare и т. д.) присутствуют компоненты интеграции гостевой ОС с хостовой, которые значительно повышают производительность и управляемость гостевой системой. Среди этих компонентов всегда есть средство синхронизации времени гостевой ОС с хостовой, которое очень полезно для рядовых машин, но противопоказано для контроллеров домена. Потому как в этом случае весьма вероятен цикл, при котором контроллер домена и хостовая ОС будут синхронизировать друг друга. Последствия печальны.
  • Для корневого PDC синхронизация с внешним источником должна быть настроена всегда. В виртуальной среде часы не настолько точны как в физической, потому как виртуальная машина работает с виртуальным процессором и прерываниями, для которых характерно как замедление, так и ускорение относительно «обычной» частоты. Если не настроить синхронизацию виртуализированного корневого PDC с внешним источником, время на всех компьютерах предприятия может убегать/отставать на пару часов в сутки. Не трудно представить неприятности, которые может принести такое поведение.
:/>  Проверка и восстановление жесткого диска программой Victoria |

Итого на всех контроллерах домена запустить:

Полезные команды

  • Применение внесенных в конфигурацию службы времени изменений
  • w32tm /config /update
  • Принудительная синхронизация от источника
  • w32tm /resync /rediscover
  • Отображение состояния синхронизации контроллеров домена в домене
  • w32tm /monitor
  • Отображение текущих источников синхронизации и их статуса
  • w32tm /query /peers

Топология синхронизации времени среди участников active directory

Среди компьютеров, участвующих в Active Directory работает следующая схема синхронизация времени.

  • Контроллер корневого домена в лесу AD, которому принадлежит FSMО-роль эмулятора PDC (назовем его корневым PDC), является источником времени для всех остальных контроллеров этого домена.
  • Контроллеры дочерних доменов синхронизируют время с вышестоящих по топологии AD контроллеров домена.
  • Рядовые члены домена (сервера и рабочие станции) синхронизируют свое время с ближайшим к ним доступным контроллером домена, соблюдая топологию AD.

Корневой PDC может синхронизировать свое время как со внешним источником, так и с самим собой, последнее задано конфигурацией по умолчанию и является абсурдом, о чем периодически намекают ошибки в системном журнале.

Синхронизация клиентов корневого PDC может осуществятся как с его внутренних часов, так и с внешнего источника. В первом случае сервер времени корневого PDC объявляет себя как «надежный» (reliable).

Далее я приведу оптимальную с моей точки зрения конфигурацию сервера времени корневого PDC, при которой сам корневой PDC периодически синхронизирует свое время от достоверного источника в интернете, а время обращающихся к нему клиентов синхронизирует со своими внутренними часами.

Установка минимальной положительной и отрицательной коррекции

Максимальная положительная и отрицательная коррекция времени (разница между внутренними часами и источником синхронизации) в секундах, при превышении которой синхронизация не происходит. Рекомендую значение 0xFFFFFFFF, при котором коррекция сможет производиться всегда.

[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesW32TimeConfig]
"MaxPosPhaseCorrection"=dword:FFFFFFFF
"MaxNegPhaseCorrection"=dword:FFFFFFFF