В этой статье мы рассмотрим особенности обновления параметров групповых политик на компьютерах домена Active Directory: автоматическое обновление политик, команду
GPUpdate
, удаленное обновление через консоль Group Policy Management Console (
GPMC.msc
) и командлет PowerShell
Invoke-GPUpdate
.
Консоль редактора локальных групповых политик в Windows (gpedit.msc) используется для тонкой настройки параметров Windows.
Gpedit.msc
– это стандартная mmc оснастка, доступная во всех версиях Windows (Pro/Enterprise/Education), кроме домашних редакций (Home/Single Language). В этой статье мы рассмотрим особенности использования локального редактора GPO, а также способы установить и запустить gpedit.msc в домашних редакциях Windows 10 и Windows 11 Home.
The command gpupdate /force is used to force the update of group policies that are applied by your company. Changes made in the Group Policy are not applied immediately but after 90 mins by default (with a ~30 min offset to spread the load). By using the GPUpdate command we can force the update.
Group Policies are used to change security settings and for system management (like deploying printers or mapping network drives). For troubleshooting IT problems, it’s sometimes necessary to update the group policy manually.
С помощью аудита событий безопасности администратор может получать достоверную информацию обо всех событиях в системе, контролировать действия пользователей, и использовать информацию для выявления уязвимых мест в системе безопасности сервера или AD. В Windows такие события записываются в журнал Security операционной системы. В этой статье мы покажем, как настраивать политики аудита безопасности в Windows на примере настройки аудит доступа к файлам и папкам.
Для настройки политик аудита в Windows используется консоль настройки групповых политик. Если вы настраиваете политики для компьютеров/серверов домена, используйте Group Policy Management Console (gpmc.msc). При настройке политики аудита на отдельном сервере можно использовать консоль Local Group Policy Editor (gpedit.msc).
В консоли GPO есть две секции, в которых находятся политики аудита базовая и расширенная.
В большинстве случаев нужно использовать политики аудита из секции Advanced Audit Policy Configuration. Они позволяют настроить аудит более тонко и исключить ненужные события безопасности.
Прежде чем включать политики аудита в Windows рекомендуем увеличить максимальный размер журнала Security со 128 Mb (по-умолчанию в Windows Server)
Запустите консоль Event Viewer (eventvwr.msc), разверните Windows Logs и откройте свойства журнала Security. Увеличьте значение в поле Maximum log size (KB).
Укажите, какие события нужно записывать в журнал Security:
В нашем случае достаточно вести аудит только Success событий.
Теперь нужно назначить политику аудита к сетевой папке (создать системные списки управления доступом – SACL).
Далее в секции Permissions укажите, какие действия пользователей нужно записывать в журнал. Я выбрал события из категории Delete.
Сохраните изменения и обновите политики на компьютере с помощью команды:
Теперь, если любой пользователь удалит файл или папку в вашей сетевой папке, в журнале Security появится событие c EventID 4660 от источника Microsoft Windows security с Task Сategory File System: An object was deleted.
В событии указан пользователь, который удалил файл (Account Name).
Не рекомендуется включать много событий аудита сразу – это может вызвать повышенную нагрузку на компьютер. Кроме того, в большом количестве событий безопасности сложно искать.
Также вы можете управлять политиками аудита через утилиту командной строки auditpol.exe.
Чтобы вывести информацию о всех включенных политиках аудита, выполните:
Чтобы включить определенную политику аудита, используется такой синтаксис:
Для сброса политик аудита в исходное состояние, используется команда:
Редактор локальной групповой политики это отдельная MMC оснастка, которая по сути представляет собой графическую надстройку для удобного управления параметрами Windows в реестре. При изменении настроек какой-то политики, редактор сразу вносит изменения в связанный параметр реестра. Вместо того, чтобы искать необходимый ключ и вручную править параметр реестра, администратору гораздо проще найти и отредактировать нужный параметр в редакторе gpedit.msc. В редакторе GPO содержится болеетрех тысяч настроек Windows, которые расположены в стройной иерархии, имеют подробное описание и предлагают для выбора предопределенные опции настройки.
Для запуска редактора локальных групповых политик в Windows достаточно выполнить команду
gpedit.msc
в командной строке, cmd или окне “Выполнить” (
Win+R
).
Консоль редактора локальной GPO представляет собой древовидную структуру с разделами. Все настройки в консоли gpedit.msc разделены на две большие секции:
В каждой секции есть по три подраздела:
Чтобы изменить любой параметр GPO в консоли, нужно найти раздел, в котором он находится и открыть его настройки в правой панели.
По умолчанию все параметры в разделе административных шаблонов не настроены (Not configured). У большинства настроек GPO доступно есть всего три параметра: Enabled/Disabled/Not configured.
Чтобы изменить настройку параметра групповой политики достаточно выбрать новое значение и нажать Ok. В данном примере мы установили данный параметр в Enabled – значит данная настройка Windows включена. Если вы выбрали Disabled, значит вы отключили в Windows настраиваемый параметр.
У некоторых настроек GPO можно задать дополнительные параметры, которые можно настроить в секции Options. Например, чтобы задать файл обоев рабочего стола через GPO, нужно включить политику (Enabled), указать путь к файлу с рисунков в поле и выбрать стиль рисунка.
Описание каждого параметра групповой политики доступно в поле Help. А в поле Supported on указаны версий Windows, для которых данная политика применяется. Например, At least Windows 10 означает, что политика применима только к Windows 10/11 и Windows Server 2016/2019/2022. Данный параметр не будет работать на Windows 8.1 или 7.
Настройки, заданные в редакторе gpedit.msc имеют высокий приоритет и перезаписывают любые настройки, заданные пользователем или администратором в графическом интерфейсе Windows или в панели управления.
Все примененные настройки локальных политик хранятся в registry.pol файлах в каталогах (вы можете преобразовать данные pol файлы в удобный текстовый формат с помощью утилиты lgpo.exe):
Если вы удалите файлы из этих папок, вы сбросите все настройки локальных политик (это бывает полезно, когда после изменения каких-то настроек Windows в политиках компьютер перестал пускать пользователя или не загружается).
Automatically reboot or logoff after GPUpdate
With the use of the /logoff or /boot switch, we can let gpupdate figure out if a logoff or reboot is necessary. To be clear, if you run gpupdate /boot, then the computer will only reboot if a policy change requires it. Otherwise, the policy will be applied immediately without the reboot.
Wrapping Up
I hope this article helped you with the GPUpdate /force command. If you have any questions, then just drop a comment below.
Утилита Policy Plus – универсальный редактор локальной политик для всех версий Windows
Консоль Policy Plus очень похожа на редактор gpedit.msc: дерево с разделами в левом окне и политики в правом.
В Policy Plus имеется удобный встроенного поиска политик. Можно искать по тексту, описанию политики, связанным веткам реестра. Можно редактировать реестр офлайн образа Windows, загружать POL файлы политик и экспортировать настройки групповых политик в файл для переноса на другие компьютеры (Импорт / Экспорт reg и pol файлов). Довольно удобно, что с помощью встроенного инспектора (Element Inspector) можно посмотреть какие ключи реестра включает та или иная политика и возможные значения параметра.
GPUpdate vs GPUpdate Force command
The gpupdate /force command is probably the most used group policy update command. When you use the /force switch, all the policy settings are reapplied. For most use cases this is perfectly fine, but keep in mind, when you have a lot of group policies objects (GPO) or in a large environment, using the /force will put a huge load on the domain controllers.
If you have a large tenant or a lot of GPO’s, then it’s better to only run gpupdate without the /force switch to apply new policy settings. This will get only the changes or new group policies, reducing the load on the client and domain controllers.
# Reapply all policies
gpupdate /force
# Get only the changed / new group policies
gpupdate
Update only user or computer group policies
If you have a large environment or need to update the group policies on a lot of computers at the same time, then it can be useful to only update what is needed. This will reduce the load on the domain controllers and it’s of course faster.
Invoke-GPUpdate – обновление GPO из Powershell
Также вы можете вызвать удаленное обновление групповых политик на компьютерах с помощью PowerShell комнадлета Invoke-GPUpdate (входит в RSAT). Например, чтобы удаленно обновить пользовательские политики на определенном компьютере, можно использовать команду:
При запуске командлета Invoke-GPUpdate без параметров, он обновляет настройки GPO на текущем компьютере (аналог gpudate.exe).
В сочетании с командлетом Get-ADComputer вы можете обновить групповые политики на всех компьютерах в определенном OU:
или на всех компьютерах, которые попадают под определенный критерий (например, на всех Windows Server в домене):
Вы можете задать случайную задержку обновления GPO с помощью параметра RandomDelayInMinutes. Таким образом вы можете уменьшить нагрузку на сеть, если одновременно обновляете политики на множестве компьютеров. Для немедленного применения политик используется параметр RandomDelayInMinutes 0.
Для недоступных компьютеров команда вернет ошибку:
Invoke-GPUpdate: Computer “spb-srv01” is not responding. The target computer is either turned off or Remote Scheduled Tasks Management Firewall rules are disabled.
При удаленном выполнении командлета Invoke-GPUpdate или обновления GPO через консоль GPMC на мониторе пользователя может на короткое время появиться окно консоли с запущенной командой
gpupdate
.
Интервал обновления параметров групповых политик
Чтобы новые настройки, которые вы задали в локальной или доменной групповой политике (GPO) применились на клиентах, необходимо, чтобы служба Group Policy Client перечитала политики и внесла изменения в настройки клиента. Это процесс называется обновление групповых политик. Настройки групповых политик обновляются при загрузке компьютере и входе пользователя, или автоматически в фоновом режиме раз в 90 минут + случайное смещение времени (offset) в интервале от 0 до 30 минут (т.е. политики гарантировано применятся на клиентах в интервале 90 – 120 минут после обновления файлов GPO на контроллере домена).
Контроллеры домена по умолчанию обновляют настройки GPO намного чаще — раз в 5 минут.
Включите политику (Enabled) и задайте время (в минутах) в следующих настройках:
Имейте в виду, что частое обновление GPO приводит к увеличению трафика к контроллерам домена и повышенной нагрузке на сеть.
GPUpdate. exe – команда обновления параметров групповых политики
Всем администраторов знакома команда gpupdate.exe, которая позволяет обновить параметры групповых политик на компьютере. Большинство не задумываясь используют для обновления GPO команду
gpupdate /force
. Эта команда заставляет компьютер принудительно перечитать все политики с контроллера домена и заново применить все параметры. Т.е. при использовании ключа force клиент обращается к контроллеру домена и заново получает файлы ВСЕХ нацеленных на него политик. Это вызывает повышенную нагрузку на сеть и контроллер домена.
Простая команда
gpudate
применяет только новые/измененные параметры GPO.
Если все OK, должны появится следующие строки:
Можно отдельно обновить параметры GPO из пользовательской секции:
или только политики компьютера:
Если некоторые политики нельзя обновить в фоновом режиме, gpudate может выполнить logoff текущего пользователя:
Или выполнить перезагрузку компьютера (если изменения в GPO могут применится только во время загрузки Windows):
Run GPUpdate on a Remote Computer
Sometimes you may need to update quickly the group policies on multiple computers because you changed the internet proxy settings or maybe to replace a printer for example. There are couple of ways to run GPUpdate on a remote computer
Using the Group Policy Management Console
After you have confirmed the update the policies will be updated and you can see the status of each computer. In this example 5 computers where turned off, so the update failed.
Use PowerShell to run GPUpdate on a Remote Computer
The basis of the command is the Invoke-GPUpdate cmd. We also need to specify the computer and the RansomDelayInMinutes.
The RandomDelayInMinutes is used to lower the network load when you update a lot of computers at the same time. You can set it between 0 and 44640 minutes (31 days). Use 0 to run the update immediately.
Invoke-GPUpdate -Computer “labrat01” -RandomDelayInMinutes 0 -Force
With this, we can create a small script to target all computers in a specific OU and run GPupdate on them.
Or if you want to use a list of computers:
Не удается найти «gpedit.msc». Проверьте, правильно ли указано имя и повторите попытку.
Вероятно, что по логике Microsoft домашнему пользователя не нужно править локальные настройки через графический интерфейс gpedit.msc. Соответственно, пользователям домашней редакции Windows 10 приходится вносить изменения через редактор реестра, что не так наглядно и более рискованно с точки зрения возможности ошибиться и что-нибудь сломать в системе.
К счастью, в Windows 10 Home есть недокументированная возможность установки редактора gpedit.msc из хранилища пакетов и манифестов образа Windows (Windowsservicingpackages).
Для установки редактора локальных групповых политик в Windows 10 редакции Домашняя, откройте командную строку с правами администратора и последовательно выполните две однострочные команды:
FOR %F IN (“%SystemRoot%servicingPackagesMicrosoft-Windows-GroupPolicy-ClientTools-Package~*.mum”) DO (DISM /Online /NoRestart /Add-Package:”%F”)FOR %F IN (“%SystemRoot%servicingPackagesMicrosoft-Windows-GroupPolicy-ClientExtensions-Package~*.mum”) DO (DISM /Online /NoRestart /Add-Package:”%F”)
Также эти команды можно использовать для установки консоли gpedit.msc в Windows 11 Home.
Для удобства данный код можно сохранить в текстовый файл gpedit-install.bat и запустить с правами администратора. Подождите какое-то время, пока DISM производит установку пакетов из внутреннего хранилища пакетов Windows.
В моем случае в английской редакции Windows 10 Home были установлены пакеты ClientTools и ClientExtensions. Если у вас установлен другой язык, например русский, также будут установлены пакеты с ru-RU:
Теперь попробуйте запустить консоль gpedit.msc. Должен открыться интерфейс редактора локальной групповой политики (перезагрузка не требуется). Редактор GPO полностью работоспособен даже в домашней версии Windows 10 и содержит все необходимые разделы политик, которые доступны в старших редакциях Windows.
Некоторые ограничения gpedit.msc в Windows 10:
Принудительно обновление политики из консоли Group Policy Management Console (GPMC)
В консоли GPMC.msc (Group Policy Management Console), начиная с Windows Server 2012, появилась возможность удаленного обновления настроек групповых политик на компьютерах домена.
В Windows 10 для использования этой консоли придется установить компонент RSAT:
Add-WindowsCapability -Online -Name Rsat. GroupPolicy. Management. Tools~~~~0.0.1.0
Теперь после изменения настроек или создания и прилинковки новой GPO, вам достаточно щелкнуть правой клавишей по нужному Organizational Unit (OU) в консоли GPMC и выбрать в контекстном меню пункт Group Policy Update. В новом окне появится количество компьютеров, на которых будет выполнено обновление GPO. Подтвердите принудительное обновление политик, нажав Yes.
Затем GPO по очереди обновяться на каждом компьютере в OU и вы получите результат со статусом обновления политик на компьютерах (Succeeded/Failed).
Для работы этого функционала GPMC на клиенте должны быть выполнены следующие условия:
Если компьютер выключен, или доступ к нему блокируется файерволом напротив имени такого компьютера появится надпись “The remote procedure call was cancelled”.
По сути этот функционал дает тот же эффект, если бы вы вручную обновили настройки политик на каждом компьютере командой
GPUpdate /force
.