Поиск сведений, связанных с настройкой службы времени Windows
В этом руководстве не затрагивается настройка службы времени Windows. В Microsoft TechNet и в базе знаний Майкрософт есть несколько разделов, которые описывают процедуры настройки службы времени Windows. Если вам требуется информация о конфигурации, вы сможете найти ее в следующих статьях.
-
Сведения о том, как настроить службу времени Windows для эмулятора основного контроллера домена в корне леса, см. в этих статьях:
-
Configure the Windows Time service on the PDC emulator in the Forest Root Domain (Настройка службы времени Windows для эмулятора основного контроллера домена в корневом домене леса);
-
Configuring a time source for the forest (Настойка источника времени для леса);
-
Статья 816042 базы знаний Майкрософт Как настроить полномочный сервер времени в операционной системе Windows Server, в которой описаны параметры конфигурации для компьютеров под управлением Windows Server 2008 R2, Windows Server 2008, Windows Server 2003 и Windows Server 2003 R2.
-
-
Предупреждение
Некоторые приложения могут требовать наличия высокоточных служб времени на компьютерах, где они работают. В этом случае вы можете настроить источник времени, задаваемый вручную, но имейте в виду, что служба времени Windows не предназначена для работы в качестве источника с высокой точностью времени. Убедитесь, что вы знаете об ограничениях поддержки для сред высокой точности, описанных в статье 939322 базы знаний Майкрософт: Support boundary for high-accuracy time (Граница области поддержки для высокоточного времени).
-
Чтобы настроить службу времени Windows на всех клиентских и серверных компьютерах под управлением Windows, которые настроены как члены рабочей группы, а не члены домена, см. статью Configure a Manual Time Source for a Selected Client Computer (Настройка источника времени вручную для выбранного клиентского компьютера).
-
Сведения о настройке службы времени Windows на главном компьютере, на котором выполняется виртуальная среда, см. в статье 816042 базы знаний Майкрософт Как настроить полномочный сервер времени в операционной системе Windows Server. Если вы работаете с продуктом виртуализации не от Майкрософт, обязательно ознакомьтесь с документацией поставщика для этого продукта.
-
Чтобы настроить службу времени Windows на контроллере домена, работающем в виртуальной машине, мы рекомендуем частично отключить синхронизацию времени между хост-системой и гостевой операционной системой, выполняющей роль контроллера домена. Это позволяет гостевому контроллеру домена синхронизировать время для иерархии домена, но предохраняет его от отклонения во времени при восстановлении из сохраненного состояния. Дополнительные сведения см. в статье 976924 базы знаний Майкрософт You receive Windows Time Service event IDs 24, 29, and 38 on a virtualized domain controller that is running on a Windows Server 2008-based host server with Hyper-V (Вы получаете события с кодами 24, 29 или 38 от службы времени Windows на виртуализированном контроллере домена, который выполняется на сервере узла под управлением Windows Server 2008 с Hyper-V) и статье Deployment Considerations for Virtualized Domain Controllers (Рекомендации по развертыванию виртуализованных контроллеров домена).
-
Чтобы настроить службу времени Windows на контроллере домена, работающем в качестве эмулятора основного котроллера в корне леса, который также работает на виртуальном компьютере, следуйте тем же инструкциям, что и для физического компьютера, как описано в статье Configure the Windows Time service on the PDC emulator in the Forest Root Domain (Настройка службы времени Windows для эмулятора основного контроллера домена в корневом домене леса).
-
Чтобы настроить службу времени Windows на рядовом сервере, работающем как виртуальный компьютер, используйте иерархию времени домена, как описано в статье Configure a Client Computer for Automatic Domain Time Synchronization (Настройка клиентского компьютера для автоматической синхронизации времени домена).
Важно!
До Windows Server 2016 служба W32Time не предназначалась для поддержки зависящих от времени потребностей приложений. Не теперь обновления Windows Server 2016 позволяют реализовать в домене решение с точностью 1 мс. дополнительные сведения о см. в разделе Windows 2016. точность и поддержка для настройки службы времени Windows для получения дополнительных сведений о среде с высокой точностью.
Настройка других контроллеров домена
Если вы выполните описанные выше шаги для обеспечения синхронизации времени в домене, то почти гарантированно настроите получение корректного времени всеми компьютерами в сети. Поэтому другие контроллеры домена (если у вас их несколько) можно не трогать.
Однако если вы хотите быть уверенными, что они используют правильное время, вы можете отредактировать локальную групповую политику. Перейдите в меню Пуск > Выполнить и введите gpedit.msc. Нажмите ОК.
Затем используйте те же настройки, что приведены в предыдущем разделе. Если контроллер домена, на котором вы хотите работать, управляется Windows Server Core, вы можете сделать это удаленно, при условии, что такая возможность разрешена сетевым экраном.
Просто запустите mmc.exe на компьютере с графическим интерфейсом, откройте пункт меню File > Add/Remove Snap-In, дважды щелкните Group Policy Object Editor и перейдите на компьютер, на котором вы хотите отредактировать групповую политику.
Особенности виртуализированных контроллеров домена
Контроллеры домена, работающие в виртуализированной среде, требуют к себе особенного отношения.
- Средства синхронизации времени виртуальной машины и хостовой ОС должны быть выключены. Во всех адекватных системах виртуализации (Microsoft, vmWare и т. д.) присутствуют компоненты интеграции гостевой ОС с хостовой, которые значительно повышают производительность и управляемость гостевой системой. Среди этих компонентов всегда есть средство синхронизации времени гостевой ОС с хостовой, которое очень полезно для рядовых машин, но противопоказано для контроллеров домена. Потому как в этом случае весьма вероятен цикл, при котором контроллер домена и хостовая ОС будут синхронизировать друг друга. Последствия печальны.
- Для корневого PDC синхронизация с внешним источником должна быть настроена всегда. В виртуальной среде часы не настолько точны как в физической, потому как виртуальная машина работает с виртуальным процессором и прерываниями, для которых характерно как замедление, так и ускорение относительно «обычной» частоты. Если не настроить синхронизацию виртуализированного корневого PDC с внешним источником, время на всех компьютерах предприятия может убегать/отставать на пару часов в сутки. Не трудно представить неприятности, которые может принести такое поведение.
Настройка гостевых виртуальных машин
Все современные гипервизоры имеют возможность синхронизации системного времени для гостевых машин с помощью встроенных инструментов. Если синхронизация времени в домене включена, гостевые машины будут получать время с физического хоста, на котором они запущены.
В большинстве случаев нужно отключить эту функцию для гостевых машин Windows Server, которые служат в качестве виртуализированных контроллеров домена. Для всех остальных гостей она должна быть включена.
Для настройки синхронизации времени с контроллером домена в гипервизоре Hyper-V откройте диалоговое окно Settings и перейдите на вкладку Integration Services. Снимите или установите флажок Time Synchronization. Для других гипервизоров обратитесь к документации производителя.
Особенности виртуализированных контроллеров домена
Контроллеры домена, работающие в виртуализированной среде, требуют к себе особенного отношения.
- Средства синхронизации времени виртуальной машины и хостовой ОС должны быть выключены. Во всех адекватных системах виртуализации (Microsoft, vmWare и т. д.) присутствуют компоненты интеграции гостевой ОС с хостовой, которые значительно повышают производительность и управляемость гостевой системой. Среди этих компонентов всегда есть средство синхронизации времени гостевой ОС с хостовой, которое очень полезно для рядовых машин, но противопоказано для контроллеров домена. Потому как в этом случае весьма вероятен цикл, при котором контроллер домена и хостовая ОС будут синхронизировать друг друга. Последствия печальны.
- Для корневого PDC синхронизация с внешним источником должна быть настроена всегда. В виртуальной среде часы не настолько точны как в физической, потому как виртуальная машина работает с виртуальным процессором и прерываниями, для которых характерно как замедление, так и ускорение относительно «обычной» частоты. Если не настроить синхронизацию виртуализированного корневого PDC с внешним источником, время на всех компьютерах предприятия может убегать/отставать на пару часов в сутки. Не трудно представить неприятности, которые может принести такое поведение.
Служба времени Windows, несмотря на кажущуюся простоту, является одной из основ, необходимых для нормального функционирования домена Active Directory. В правильно настроенной среде AD служба времени работает следующим образом: компьютеры пользователей получают точное время от ближайшего контроллера домена, на котором они зарегистрировались. Все контроллеры домена в свою очередь получают точное время от DC с «Эмулятор PDC», а контролер PDC синхронизирует свое время с неким . В качестве внешнего источника времени может выступать один или несколько NTP серверов, например time.windows.com или NTP сервер вашего Интернет-провайдера. Также нужно отметить, что по умолчанию клиенты в домене синхронизируют время с помощью службы времени Windows (Windows Time), а не с помощью протокола NTP.
Если вы столкнулись с ситуацией, когда время на клиентах и контроллерах домена различается, возможно, в вашем домене есть проблемы с синхронизацией времени и эта статья будет вам полезна.
В первую очередь выберите подходящий NTP сервер, который вы могли бы использовать. Список общедоступных NTP серверов доступен на сайте http://ntp.org
. В нашем примере мы будем использовать NTP сервера из пула ru.pool.ntp.org:
- 0.ru.pool.ntp.org
- 1.ru.pool.ntp.org
- 2.ru.pool.ntp.org
- 3.ru.pool.ntp.org
Настройка синхронизации времени в домене с помощью групповых политик состоит из двух шагов:
1) Создание GPO для контроллера домена с ролью PDC
2) Создание GPO для клиентов (опционально)
Настройка dhcp
Для того чтобы обеспечить синхронизацию времени с контроллером домена на устройствах, отвечающих за DHCP, в настройках DHCP-сервера установите параметры 004 и 042.
Для записей DHCP вы можете использовать только IP-адреса. Вы можете ввести имя сервера и нажать Resolve, чтобы получить IP-адрес сервера.
Если вы используете DHCP с помощью устройства Cisco, в настройках DHCP введите следующие команды:
option 4 ip
option 42 ip
IP-адрес следует заменить на фактический IP сервера, служащего источником времени.
Теперь все DHCP-устройства получат настройки времени от сервера при следующем обновлении.
Конфигурация NTP-сервера на корневом PDC
Конфигурирование сервера времени в Windows (NTP-сервера) может осуществляться как с помощью утилиты командной строки w32tm, так и через реестр. Где возможно, я приведу оба варианта. Но в начале посмотрите полностью ваши настройки на компьютере, делается это командой:
FrequencyCorrectRate: 4 (Локально) PollAdjustFactor: 5 (Локально) LargePhaseOffset: 50000000 (Локально) SpikeWatchPeriod: 900 (Локально) LocalClockDispersion: 10 (Локально) HoldPeriod: 5 (Локально) PhaseCorrectRate: 7 (Локально) UpdateInterval: 100 (Локально)
NtpClient (Локально) DllName: C:Windowssystem32w32time.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:Windowssystem32w32time.dll (Локально) Enabled: 1 (Локально) InputProvider: 0 (Локально) AllowNonstandardModeCombinations: 1 (Локально)
VMICTimeProvider (Локально) DllName: C:WindowsSystem32vmictimeprovider.dll (Локально) Enabled: 1 (Локально) InputProvider: 1 (Локально)
Включение синхронизации внутренних часов с внешним источником
- «Type»=»NTP»
- w32tm /config /syncfromflags:manual
Объявление NTP-сервера в качестве надежного
- «AnnounceFlags»=dword:0000000a
- w32tm /config /reliable:yes
NTP-сервер по умолчанию включен на всех контроллерах домена, однако его можно включить и на рядовых серверах.
«Enabled»=dword:00000001
Задание списка внешних источников для синхронизации
- «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.
«SpecialPollInterval»=dword:00000384
Установка минимальной положительной и отрицательной коррекции
Максимальная положительная и отрицательная коррекция времени (разница между внутренними часами и источником синхронизации) в секундах, при превышении которой синхронизация не происходит. Рекомендую значение 0xFFFFFFFF, при котором коррекция сможет производиться всегда.
«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
Настройка DNS
Для построения доверия необходимо, чтобы контроллеры домена видели друг друга. Все запросы на поиск узлов в AD выполняются через службы доменных имен. Таким образом, в нашем примере, мы должны сконфигурировать условную пересылку на DNS обоих доменов
Также важно, чтобы между контроллерами была сетевая доступность — по сети они должны видеть друг друга
На DNS домена primary.local
Открываем Диспетчер серверов — кликаем по Средства — DNS:
В открывшемся окне выбираем нужный сервер, если их несколько — раскрываем его — кликаем правой кнопкой мыши по Серверы условной пересылки — Создать сервер условной пересылки:
В «DNS-домен» пишем второй домен (в нашем случае, secondary.local), затем задаем его IP-адрес, ставим галочку Сохранять условный сервер пересылки в Active Directory и реплицировать ее следующим образом — выбираем Все DNS-серверы в этом домене:
Открываем командную строку и вводим команду:
nslookup secondary.local
Мы должны получить ответ на подобие:
Server: localhost
Address: 127.0.0.1
Non-authoritative answer:
Name: secondary.local
Address: 192.168.0.16
На DNS домена secondary.local
Действия, которые делаем на втором сервере DNS, во многом, аналогичны.
Открываем Диспетчер серверов — Средства — DNS:
Раскрываем сервер — Серверы условной пересылки — Создать сервер условной пересылки:
На данном шаге небольшие изменения. В «DNS-домен» пишем первый домен (primary.local), затем задаем его IP-адрес (192.168.0.15), ставим галочку Сохранять условный сервер пересылки в Active Directory и реплицивовать ее следующим образом — выбираем Все DNS-серверы в этом домене:
В командной строке второго сервера проверяем настройку:
nslookup primary.local
Мы должны получить ответ на подобие:
Server: localhost
Address: 127.0.0.1
Non-authoritative answer:
Name: primary.local
Address: 192.168.0.15
Указание часового пояса через групповые политики
- Открываем политику для контейнера где находиться компьютер
- Переходим к Конфигурация компьютера — Настройка — Конфигурация Windows — Реестр
- Левый клик по правой белой области в области «Реестр» и выбираем пункт меню «Создать» — «Мастер реестра»
- Выбираем компьютер на котором установлен нужный часовой пояс (у меня это локальный)
- В Браузере реестра переходим к «HKLM \ System \ CurrentControlSet \ Control \ TimeZoneInformation»
- Отмечаем все ключи в этой папке и жмем «готово»
- Все теперь на локальных компьютерах автоматически будет устанавливаться необходимый часовой пояс и после перезагрузки устанавливаться правильной время
Подготовка к включению Active Directory
Среди служб Active Directory имеется служба DNS. Каждый компьютер уже пользуется услугами того или иного DNS сервера, но для работы Active Directory необходимо настроить DNS роль сервера, по сути, DNS сервер, который будет обеспечивать преобразование (разрешение) имён компьютеров в IP адреса, сторонний DNS сервер не подойдёт. Включение DNS будет выполнено вместе с установкой Active Directory. Для того, чтобы DNS сервер работал правильно, необходимо, чтобы у всех компьютеров в Active Directory были статичные IP адреса. Поэтому вам нужно настроить ваши компьютеры и ваш Windows Server на работу со статичными IP. Всю необходимую теорию и инструкции по настройке вы найдёте в статье «Как веб-сервер на своём компьютере сделать доступным для других» (статичные IP нужны для многих сетевых служб). В предыдущей части было показано, как настроить статичные IP на сетевых интерфейсах Windows. Под спойлером пример присвоения статичных IP на роутере.
Второе, на что следует обратить внимание, это на имена компьютеров. У всех компьютеров Windows есть имена, которые генерируются автоматически и являются неинформативными, например, WIN-M30RTOJQTFM
Поэтому рекомендуется воспользоваться рассмотренными в предыдущей части инструментами или инструкцией «Имя компьютера Windows: как изменить и использовать» и присвоить вашим компьютерам имена, описывающие их функции или другим образом помогающие вам понять, о каком компьютере идёт речь.
Компоненты
- Группа ресурсов для размещения всех элементов.
- Виртуальная сеть Azure, подсеть, группа безопасности сети и правило, разрешающие доступ к виртуальным машинам по протоколу RDP.
- виртуальных машин Azure для размещения двух контроллеров домена домен Active Directory служб (AD DS) в.
- Для запуска AD DS и DNS на двух виртуальных машинах Azure.
Неохваченные элементы
- Создание VPN-подключения типа «сеть — сеть » из локального расположения
- Защита сетевого трафика в Azure
- Проектирование топологии сайта
- Размещение роли хозяина операций планирования
- развертывание Azure AD Connect для синхронизации удостоверений в Azure AD
Ошибка: 0x80073701
Я упоминал, что вначале инструкция задумывалась на русифицированном сервере, но на этапе установки Active Directory Domain Services я столкнулся с ошибкой:
Сбой запроса на добавление или удаление компонентов на указанном сервере. Сбой установки одной или нескольких ролей, служб ролей или компонентов. Не найдена сборка, на которую имеется ссылка. Ошибка: 0x80073701
Как результат, невозможно было установить Active Directory Domain Services.
Гугление позволило найти возможную причину: сервер пытается скачать несуществующий пакет для другого языка (не для того, который является системным). Как варианты решения предлагается сложный процесс анализа логов и правки реестра, либо переустановка без потери данных (восстановление). Я выбрал другой вариант — установить сервер на английском языке, здесь эта ошибка не должна встречаться.
Закладываем правильный фундамент
Один из ключевых принципов проектирования Active Directory — предоставление надежного источника времени для контроллеров домена. Контроллер домена полагается на точное время для аутентификации Kerberos и процесса репликации. Для Kerberos не требуется высокая точность (в дефолте, максимальное время отклонения составляет 5 минут), а вот использование времени в качестве механизма арбитража для репликации уже требует. Время между контроллерами домена должно быть как можно меньше. Так же, необходимо учитывать особенности платформы VMware vSphere, так как настроить время только в рамках контролеров домена будет недостаточно.
Чтобы заложить правильный фундамент, нужно выполнить 3 шага:
- Конфигурирвоание времени на хостах ESXi;
- Модификация параметров виртуальной машины с контроллером домена;
- Настройка служб точного времени Windows на самом контроллере домена.
Первый шаг – настроить все хосты ESXi на синхронизацию с надёжным источником точного времени. В качестве NTP сервера может быть источник времени Stratum 1 (GPS или аппаратные часы) или источник времени Stratum 2 или Stratum 3 (например, pool.ntp.org). Для Украины, в частности для Киева, рекомендую использовать сервера точного времени time.in.ua:
- ntp.time.in.ua — основной сервер точного времени (stratum 1);
- ntptime.in.ua — резервный сервер точного времени (stratum 1);
- ntptime.in.ua — резервный сервер точного времени (stratum 2).
Важно использовать несколько источников одного уровня. Active Directory в среде виртуализации VMware vSphere
Active Directory в среде виртуализации VMware vSphere
Второй шаг – необходимо добиться условия, при котором время контроллером домена синхронизируется только на моменте старта.
Как уже писалось ранее, есть нюанс в работе VMware Tools. Даже если синхронизация времени отключена, существуют частные случаи, когда это происходит. Например, когда виртуальная машина восстанавливается со снепшота, гибернации или выполняет миграция чрез vMotion.
Для рядовых серверов домена, такое поведение не является критичным ввиду того, что контроллер домена выступает для них источником точного времени. Причем время от него является приоритетнее, чем от ESXi гипервизора. С контроллером домена, держателем FSMO роли PDC эмулятора, оставить дефолтную конфигурацию будет не корректно. Он сам выступает источником точного времени и не должен зависеть от среды виртуализации. В конфигурацию виртуальной машины необходимо добавить следующие строки:
Name | Value |
tools.syncTime | |
time.synchronize.continue | |
time.synchronize.restore | |
time.synchronize.resume.disk | |
time.synchronize.shrink | |
time.synchronize.tools.startup | |
time.synchronize.tools.enable | |
time.synchronize.resume.host |
Более подробную информацию можно найти в соответствующей KB
Третий шаг – это настройка службы времени Windows (w32tm). На контроллере домена выполняем 3 команды в cmd:
w32tm /config /syncfromflags:manual /manualpeerlist:ntp.time.in.ua (NTP сервера могут быть любыми)
w32tm /config /update
w32tm /resync
Как сделать, чтобы время синхронизировалось чаще
По умолчанию автоматический процесс синхронизации времени в Windows происходит раз в неделю. Если вам необходимо обновлять чаще, то нужно внести правку в системном реестре.
- Нажмите на кнопку меню «Пуск».
- Откройте окно «Выполнить».
- В командной строке наберите regedit и нажмите «OK».
- Перейдите в эту ветку реестра:
Параметр SpecialPollInterval содержит значение 604800. Это количество секунд в одной неделе.
Если вы хотите сверять часы ежедневно, то меняете на соответствующее значение. Рассчитывается оно следующим образом: 24×60×60 = 86400 секунд.
Вот и все. Теперь на вашем компьютере всегда будет точное время.
Влияние отката USN
При откате USN изменения объектов и атрибутов не реплицируются на целевые контроллеры домена, которые ранее уже получали USN.
Так как эти целевые контроллеры домена считают себя обновленными, средства мониторинга и диагностики не фиксируют ошибки репликации в журналах событий службы каталогов.
Откат USN может повлиять на репликацию любого объекта или атрибута в любой секции. Самым распространенным побочным эффектом является отсутствие в одном или нескольких партнерах репликации тех учетных записей пользователей и компьютеров, которые создаются в восстановленном контроллере домена. Может случиться и так, что обновления паролей, созданные на восстановленном контроллере домена, не передаются в партнеры репликации.
Откат USN может помешать репликации объектов Active Directory любого типа в любой секции. Вот некоторые примеры таких типов объектов:
- топология и расписание репликации Active Directory;
- наличие контроллеров домена в лесу и ролей на этих контроллерах домена;
- наличие секций домена и приложений в лесу;
- наличие групп безопасности и участников в этих группах;
- регистрация записей DNS в зонах DNS, которые интегрированы с Active Directory.
Брешь в USN может означать сотни, тысячи или даже десятки тысяч изменений в данных о пользователях, компьютерах, отношениях доверия, паролях и группах безопасности. Размер бреши в USN определяется разницей между самым высоким значением USN, которое существовало на момент создания резервной копии состояния системы, и количеством исходящих изменений, примененных в контроллере домена до его отключения, из-за которого был выполнен откат.