Меню

Сервер синхронизации системного времени



Как настроить NTP сервер и синхронизацию времени в домене Active Directory

Как настроить NTP сервер и синхронизацию времени в домене Active Directory

Добрый день уважаемые читатели и гости блога pyatilistnik.org, как много люди говорят о времени, что оно быстро или медленно бежит, и все понимают, что оно бесценно и важно. Так и в инфраструктуре Active Directory, она является одним из важнейших факторов, правильного функционирования домена. В домене все друг другу доверяют, и один раз авторизовавшись и получив все тикеты от Kerberos, пользователь ходит куда угодно, ограничиваясь лишь своими доступными правами. Так вот если у вас не будет точного времени на ваших рабочих станциях к контроллеру домена, то можете считать, что у вас начинаются серьезные проблемы, о которых мы поговорим ниже и рассмотрим как их устранить с помощью настройки NTP сервера в Windows.

Синхронизация времени в Active Directory

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

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

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

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

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

Вводим netdom query fsmo. В моем примере, роль PDC и NTP сервера, принадлежит контроллеру dc7

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

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

EventLogFlags: 2 (Локально)
AnnounceFlags: 10 (Локально)
TimeJumpAuditOffset: 28800 (Локально)
MinPollInterval: 6 (Локально)
MaxPollInterval: 10 (Локально)
MaxNegPhaseCorrection: 172800 (Локально)
MaxPosPhaseCorrection: 172800 (Локально)
MaxAllowedPhaseOffset: 300 (Локально)

FrequencyCorrectRate: 4 (Локально)
PollAdjustFactor: 5 (Локально)
LargePhaseOffset: 50000000 (Локально)
SpikeWatchPeriod: 900 (Локально)
LocalClockDispersion: 10 (Локально)
HoldPeriod: 5 (Локально)
PhaseCorrectRate: 7 (Локально)
UpdateInterval: 100 (Локально)

NtpClient (Локально)
DllName: C:\Windows\system32\w32time.dll (Локально)
Enabled: 1 (Локально)
InputProvider: 1 (Локально)
CrossSiteSyncFlags: 2 (Локально)
AllowNonstandardModeCombinations: 1 (Локально)
ResolvePeerBackoffMinutes: 15 (Локально)
ResolvePeerBackoffMaxTimes: 7 (Локально)
CompatibilityFlags: 2147483648 (Локально)
EventLogFlags: 1 (Локально)
LargeSampleSkew: 3 (Локально)
SpecialPollInterval: 3600 (Локально)
Type: NT5DS (Локально)

NtpServer (Локально)
DllName: C:\Windows\system32\w32time.dll (Локально)
Enabled: 1 (Локально)
InputProvider: 0 (Локально)
AllowNonstandardModeCombinations: 1 (Локально)

VMICTimeProvider (Локально)
DllName: C:\Windows\System32\vmictimeprovider.dll (Локально)
Enabled: 1 (Локально)
InputProvider: 1 (Локально)

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

  • [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Parameters]
    «Type»=»NTP»
  • w32tm /config /syncfromflags:manual

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

  • [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config]
    «AnnounceFlags»=dword:0000000a
  • w32tm /config /reliable:yes

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

  • [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpServer]
    «Enabled»=dword:00000001

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

  • [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Parameters]
    «NtpServer»=»time.nist.gov,0x8 ntp1.imvp.ru,0x8 ntp2.imvp.ru,0x8 time.windows.com,0x8 ru.pool.ntp.org,0x8»
  • w32tm /config /manualpeerlist:»time.nist.gov,0x8 ntp1.imvp.ru,0x8 ntp2.imvp.ru,0x8 time.windows.com,0x8 ru.pool.ntp.org,0x8″

Флаг 0×8 на конце означает, что синхронизация должна происходить в режиме клиента NTP, через предложенные этим сервером интервалы времени. Для того, чтобы задать свой интервал синхронизации, необходимо использовать флаг 0×1.

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

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

  • [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpClient]
    «SpecialPollInterval»=dword:00000384

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

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

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config]
«MaxPosPhaseCorrection»=dword:FFFFFFFF
«MaxNegPhaseCorrection»=dword:FFFFFFFF

Все необходимое одной строкой

w32tm.exe /config /manualpeerlist:»time.nist.gov,0x8 ntp1.imvp.ru,0x8 ntp2.imvp.ru,0x8 time.windows.com,0x8 pool.ntp.org,0x8″ /syncfromflags:manual /reliable:yes /update

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

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

Настройка NTP сервера и клиента групповой политикой

Раз уж у нас с вами домен Active Directory, то глупо не использовать групповые политики, для массовой настройки серверов и рабочих станций, я покажу как настроить ваш NTP сервер в windows и клиента. Открываем оснастку «Редактор групповых политик». Перед тем как настроить наш NTP сервер в Windows, нам необходимо создать WMI фильтр, который будет применять политику, только к серверу мастера PDC.

Читайте также:  Можно ли синхронизировать viber

Вводим имя запроса, пространство имен, будет иметь значение «root\CIMv2» и запрос «Select * from Win32_ComputerSystem where DomainRole = 5». Сохраняем его.

Затем вы создаете политику на контейнере Domain Controllers.

В самом низу политики применяете ваш созданный WMI фильтр.

Переходим в ветку: Конфигурация компьютера > Политики > Административные шаблоны > Система > Служба времени Windows > Поставщики времени.

Тут открываем политику «Настроить NTP-клиент Windows». Задаем параметры

  • NtpServer: 0.ru.pool.ntp.org,0x1 1.ru.pool.ntp.org,0x1 2.ru.pool.ntp.org,0x1 3.ru.pool.ntp.org,0x1
  • Type: NTP
  • CrossSiteSyncFlags: 2. Двойка означает, если этот параметр равен 2 (Все), можно использовать любого участника синхронизации. Это значение игнорируется, если не задано значение NT5DS. Значение по умолчанию: 2 (десятичное) (0x02 (шестнадцатеричное))
  • ResolvePeerBackoffMinutes: 15. Это значение, выраженное в минутах, определяет интервал ожидания службы W32time перед попыткой разрешения DNS-имени в случае неудачи. Значение по умолчанию: 15 минут
  • Resolve Peer BAckoffMaxTimes: 7. Это значение определяет число попыток разрешения DNS-имени, предпринимаемых службой W32time перед перезапуском процесса обнаружения. При каждом неудачном разрешении DNS-имени интервал ожидания перед следующей попыткой удваивается. Значение по умолчанию: семь попыток.
  • SpecilalPoolInterval: 3600. Это значение параметра NTP-клиента, выраженное в секундах, определяет частоту опроса настроенного вручную источника времени, который использует особый интервал опроса. Если для параметра NTPServer установлен флаг SpecialInterval, клиент использует значение, заданное как SpecialPollInterval, вместо значений MinPollInterval и MaxPollInterval, чтобы определить частоту опроса источника времени. Значение по умолчанию: 3600 секунд (1 час).
  • EventLogFlags: 0

Делаем отдельную групповую политику для клиентских рабочих машин, вот с такими параметрами.

  • NtpServer: Адрес вашего контроллера домена с ролью PDC.
  • Type: NT5DS
  • CrossSiteSyncFlags: 2
  • ResolvePeerBackoffMinutes: 15
  • Resolve Peer BAckoffMaxTimes: 7
  • SpecilalPoolInterval: 3600
  • EventLogFlags: 0

Далее идем на клиента и обновляем групповые политики gpupdate /force и вводим команду w32tm /query /status

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

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

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

Источник

Простой способ синхронизации времени Windows 7 с любого сервера

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

Для начала попробуем настроить время компьютера вручную, заходим в панель «Настройки времени по Интернету», по очереди выбирая в окошке серверы, начиная с time.widows.com до time-b.nist.gov их всего пять, жмем на кнопку «Обновить сейчас».

И если во всех случаях обновления одна и та же ошибка, это означает: ping – время, измеряемое в миллисекундах, установленное сервером времени, которое необходимо для преодоления пути к серверу времени и обратно, наш старый компьютер с длинной дистанцией туда и обратно не справляется. Ниже на рисунке показана схема соединения наших устройств с Интернетом.

Из этой схемы видно, какой путь сигнал запроса и ответа должен преодолеть, чтобы связаться с сервером времени Windows. Ping (время ожидания) на серверах специально уменьшают, чтобы снизить нагрузку на них и отсечь старые компьютеры. Поэтому Майкрософт постоянно советует, чтобы пользователи перешли на новые версии Windows и заодно приобрели более совершенные компьютеры.

Однако мы можем синхронизировать время с любого сервера и даже компьютера друга или соседа, а лучше всего с сервера своего провайдера. Для начала необходимо понять, что ping это не только время, но и утилита, с помощью которой, можно оценить надежность интернет соединения с любым сервером и компьютером. Проверим сервер времени Windows, для этого откроем командную строку. Путь к ней: Пуск \ Все программы \ Стандартные \ Командная строка. Второй кнопкой мыши запускаем ее от имени администратора:

Источник

NTP синхронизация времени в домене с помощью групповых политик

Служба времени Windows, несмотря на кажущуюся простоту, является одной из основ, необходимых для нормального функционирования домена Active Directory. В правильно настроенной среде AD служба времени работает следующим образом: компьютеры пользователей получают точное время от ближайшего контроллера домена, на котором они зарегистрировались. Все контроллеры домена в свою очередь получают точное время от DC с FSMO ролью « Эмулятор PDC », а контролер PDC синхронизирует свое время с неким внешним источником времени . В качестве внешнего источника времени может выступать один или несколько NTP серверов, например time.windows.com или NTP сервер вашего Интернет-провайдера. Также нужно отметить, что по умолчанию клиенты в домене синхронизируют время с помощью службы времени Windows (Windows Time), а не с помощью протокола NTP.

Читайте также:  Как синхронизировать учетную запись майкрософт с гугл

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

В первую очередь выберите подходящий NTP сервер, который вы могли бы использовать. Список общедоступных NTP серверов доступен на сайте http://ntp.org. В нашем примере мы будем использовать NTP сервера из пула ru.pool.ntp.org:

Настройка синхронизации времени в домене с помощью групповых политик состоит из двух шагов:

1) Создание GPO для контроллера домена с ролью PDC
2) Создание GPO для клиентов (опционально)

Настройка политики синхронизации NTP на контролере домена PDC

Этот шаг предполагает настройку контроллера домена с ролью эмулятора PDC на синхронизацию времени с внешним NTP сервером. Т.к. теоретически роль эмулятора PDC может перемещаться между контроллерами домена, нам нужно сделать политику, которая применялась бы только к текущему владельцу роли PDC. Для этого в консоли управления Group Policy Management Console (GPMC.msc), создадим новый WMI фильтр групповых политик . Для этого в разделе WMI Filters создадим фильтр и именем PDC Emulator и WMI запросом: Select * from Win32_ComputerSystem where DomainRole = 5

Затем создайте новую GPO и назначьте ее на контейнер Domain Controllers.

Источник

Настройка синхронизации времени в домене

Как настроить синхронизацию времени во всём домене сразу? И так, чтобы работало дальше само? А когда контроллер домена с ролью PDC изменится, что делать? А если уже синхронизация времени в домене настроена, но работает плохо, как починить?
Обо всём этом читайте в этой статье.

Немного теории

Синхронизация времени в домене может (теоретически) работать сама, безо всяких настроек. Выглядит это обычно так:

  1. Компьютеры домена и серверы синхронизируют свое время с контроллерами домена (с ближайшими к ним).
  2. Контроллеры домена синхронизируют свое время с контроллером домена, которому назначена FSMO роль PDC (в терминах windows 2000 — «первичный контроллер домена»).
  3. Контроллер домена (КД) с ролью PDC синхронизирует время с внешним источником.

А дальше — начинаются ньюансы:

  • Если контроллер домена виртуальный, в настройках виртуальной машины должна быть выключена синхронизация времени [с хостом]. Иначе (если, к примеру, хост с виртуальными машинами — в домене): виртуальный контроллер домена будет (автоматически) синхронизировать время с хостом, а хост — с ближайшим контроллером домена, т.е. со своей виртуалкой.
  • Если синхронизация времени уже настроена (вручную или через групповые политики) то задаваемые Вами новые настройки могуть не примениться (несмотря на сообщение successful во всех командах) и тогда потребуется полный сброс настроек синхронизации времени на проблемных компьютерах или контроллерах домена.

Как проверить, работает ли синхронизация времени в домене?

До того, как что-либо «ломать» (и в процессе настройки, чтобы проверять эффективность вносимых изменений) необходимо производить диагностику текущего состояния, а также анализировать текущую конфигурацию службы времени. Этому призваны помочь несколько команд, указанных ниже.

Команда
w32tm /monitor

  1. Может быть выполнена на любом компьютере (или контроллере) домена.
  2. Показывает список всех контроллеров домена (с которыми может выполняться синхронизация времени).
  3. Для каждого контроллера домена в поле «NTP:» отображает разницу во времени с PDC контроллером домена (который является источником для синхронизации времени во всём домене).
  4. Для каждого контроллера домена в поле «RefID:» отображается информация об источнике синхронизации времени для этого контроллера домена. Для всех контроллеров домена (кроме КД с ролью PDC) это должен быть либо другой контроллер домена, либо КД с ролью PDC.

Команда
w32tm /query /Source
или
w32tm /query /peers

  1. Может быть выполнена на любом компьютере или контроллере домена.
  2. Показывает источник для синхронизации времени (с каким компьютером синхронизируется время того компьютера, на котором запущена эта команда). Для любых компьютеров/серверов это должен быть один из контроллеров домена, для любого контроллера домена (кроме PDC) это должен быть другой КД (обычно — с ролью PDC), для КД с ролью PDC это должен быть внешний источник синхронизации времени (интернет).
    Если в результатах выполнения команды отобразилось сообщение «VM IC Time Synchronization Provider» — значит, эта виртуальная машина синхронизируется с хостом виртуализации. Если эта виртуальная машина — один из контроллеров домена, такую настройку следует изменить!

Команда
w32tm /query /Configuration /verbose

  1. Может быть выполнена на любом компьютере или контроллере домена.
  2. Выводит все настройки службы времени windows для текущего компьютера.
  3. Убедитесь, что в результатах выполнения команды на всех компьютерах и контроллерах домена (кроме PDC) в разделе [TimeProviders] поле Type имеет значение NT5DS. Если это не так, настройки синхронизации на таких компьютерах надо исправлять (как — см. далее).
  4. Если у Вас Windows 2003, то Вы не можете выполнить эту команду. Вместо этого Вы можете посмотреть параметры конфигурации службы времени в реестре: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Parameters, в частности параметр Type.
Читайте также:  Как синхронизировать браузер яндекс интернет

Команда
w32tm /query /status /verbose

  1. Может быть выполнена на любом компьютере или контроллере домена.
  2. Отображет состояние синхронизации (в т.ч. источник синхронизации, время и статус последней синхронизации) для компьютера, на котором выполняется. Опция «/verbose» дает более подробную информацию.

Команда
w32tm /stripchart /computer:» » /samples:3 /dataonly

Сравнивает время (и отображает разницу во времени) на текущем компьютере с компьютером, указанном в аргументе /computer. Компьютер-источник для сравнения времени может быть как в интернете, так и в локальном домене. Примеры команды:
w32tm /stripchart /computer:»ntp.org» /samples:3 /dataonly
или
w32tm /stripchart /computer:»dc1.domain.local» /samples:3 /dataonly

Как исправить настройки синхронизации времени

Настройка синхронизации времени на компьютерах и контроллерах домена
(кроме КД с ролью PDC)

  1. Найдите все групповые политики, изменяющие настройки синхронизации времени, и отключите такие политики. Через групповые политики служба времени настраивается здесь: gpedit.msc => «Computer Configuration» => «Administrative Templates» => «System» => «Windows Time Service» => «Time Providers». Проверьте, что политики синхронизации времени не применяются, для этого можно выполнить команду:
    gpresult /R
  2. Проверьте, что на всех виртуальных машинах — контроллерах домена отключена синхронизация времени с хостами виртуализации. Для этого (в Hyper-V) можно зайти в свойства виртуальной машины, раздел средств интеграции и отключить синхронизацию времени. После чего конфигурацию службы времени (на виртуальном контроллере домена) нужно обновить.
  3. Обновите конфигурацию на всех проблемных компьютерах / контроллерах домена (кроме КД с ролью PDC):
    w32tm /config /syncfromflags:DOMHIER /update
  4. Выполните принудительную синхронизацию времени, дав команду заново найти источники синхронизации времени:
    w32tm /resync /rediscover
  5. Если вышеуказанные действия не помогают, перезагрузите службу времени (на проблемных компьютерах)
    net stop w32time
    net start w32time
    и заново выполните пункты 3 и 4.
  6. Если вышеуказанные действия не помогли решить проблему с синхронизацией времени, необходима перерегистрация службы времени на проблемных компьютерах (и повторная настройка параметров).
    net stop w32time
    w32tm /unregister
    w32tm /register
    net start w32time

Настройка синхронизации времени на контроллере домена с ролью PDC

Настройки времени на КД с ролью PDC принципиально отличаются от настроек на всех остальных компьютерах в домене (включая остальные контроллеры домена). PDC является источником времени во всём домене, именно его время будет использовано (прямо или косвенно — через другие контроллеры домена) всеми остальными компьютерами.

  1. Если контроллер домена с ролью PDC — виртуальная машина, убедитесь, в настройках этой виртуальной машины отключена синхронизациия времени с хостом, на котором она находится!
  2. Убедитесь, что групповые политики синхронизации времени во всем домене (если они у Вас есть) не применяются к КД с ролью PDC! У этого компьютера источник времени — в интернете, и тип синхронизации времени (в отличие от всего остального домена) не NT5DS, а NTP!
  3. Если есть сомнения в том, что синхронизация времени на КД с ролью PDC выполняется правильно, проще всего выполнить перерегистрацию и повторную настройку службы времени.

Перерегистрация службы времени на контроллере домена с ролью PDC

Для отмены регистрации и повторной регистрации службы времени выполните следующие команды:

net stop w32time
w32tm /unregister
w32tm /register
net start w32time

Настройка синхронизации времени на контроллере домена с ролью PDC

Наш КД с ролью PDC необходимо настроить на синхронизацию с внешним источником (в интернете). Для этой цели не подходит тип синхронизации NT5DS и синхронизации в соответствии с иерархией домена (DOMHIER). Поэтому на нашем КД с ролью PDC мы используем тип синхронизации NTP и синхронизация будет настроена вручную (MANUAL). Источники синхронизации (peers) указываются в кавычках, а если таких источников несколько, то они перечисляются через запятую. Кроме того, мы даем указание считать данный источник синхронизации (КД с ролью PDC) надежным источником времени (reliable):

w32tm /config /syncfromflags:manual /manualpeerlist:»0.pool.ntp.org, 1.pool.ntp.org, 2.pool.ntp.org» /reliable:yes /update

Теперь можно ускорить применение параметров и синхронизацию времени, перезагрузив службу времени и форсировав синхронизацию:

net stop w32time
net start w32time
w32tm /resync /force или w32tm /resync /rediscover

После выполнения этих команд (сделав паузу в несколько минут на применение параметров и выполнение синхронизации) сравните время на контроллере домена с временем в интернете:

w32tm /stripchart /computer:»0.ru.pool.ntp.org» /samples:3 /dataonly

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

Всё должно заработать!

P.S.: Обратите внимание, что применение параметров команды w32tm требует времени. Поэтому после каждого обновления конфигурации рекомендуем делать паузу в 1-5 минут, а потом уже проверять, обновилась ли конфигурация службы времени, и как всё работает.

Источники информации для данной статьи:

Статья опубликована: 20.08.2017, обновлена 31.01.2020

Источник