Windows Server с нуля 06. Групповые политики (GPO): основы и типовые настройки
Note
Материал сверен с официальной документацией (Microsoft Learn и др.; ссылки — в конце статьи). Примеры вывода — иллюстрации: на вашем сервере значения и формат могут отличаться. Перед работой на боевом сервере проверьте шаги на тестовой машине.
На одном компьютере с клиентской Windows настройки можно менять вручную или через редактор локальной групповой политики (gpedit.msc). Когда в сети десятки компьютеров, ходить по ним нереально. Групповая политика (Group Policy) решает задачу: вы один раз описываете настройку, привязываете её к подразделению (OU) домена, и все компьютеры и пользователи оттуда получают её автоматически. В этой статье вы:
- поймёте, что такое объект групповой политики (GPO) и в каком порядке политики применяются;
- освоите консоль управления GPMC и командлеты модуля
GroupPolicy; - настроите на пилотной группе сетевой диск и запрет записи на съёмные накопители;
- научитесь проверять результат командами
gpupdateиgpresultи искать причину, если настройка не применилась.
| Вопрос | Локальная политика | Доменная GPO |
|---|---|---|
| Редактор | gpedit.msc |
консоль GPMC (gpmc.msc) |
| На кого действует | на один компьютер | на сайт, домен или OU целиком |
| Где хранится | на этом компьютере | в каталоге и в папке SYSVOL контроллеров |
| Проверка | gpresult |
gpresult и отчёты GPMC |
Что нужно знать заранее
- Windows Server с нуля 03: контроллер
DC1, вход подadmin-lab. - Windows Server с нуля 04: клиент находит контроллер через DNS, и без правильного DNS политики не придут.
- Windows Server с нуля 05: OU
Staff,Workstations, пользователиivanov,petrova, группыGG-Accounting,GG-Staff. - Среда статьи: клиент
PC1(Windows 11 Pro в домене), файловый серверFS1. Команды PowerShell рассчитаны на Windows PowerShell 5.1 (см. Windows Server с нуля 02).
Что такое GPO и где он хранится
GPO (Group Policy Object, объект групповой политики) — набор настроек вместе с правами доступа к нему. Он состоит из двух частей. Контейнер (Group Policy Container) хранится в каталоге Active Directory, шаблон (Group Policy Template) — в общей папке SYSVOL на каждом контроллере домена. Каждая часть реплицируется своим механизмом: каталог — репликацией AD, SYSVOL — службой DFSR (Distributed File System Replication). Поэтому после правки политика появляется на всех контроллерах не мгновенно, и при диагностике это учитывают.
Настройки делятся на две ветки. Конфигурация компьютера применяется при запуске компьютера, конфигурация пользователя — при входе. Внутри GPO встречаются два вида настроек. Политики (policies) пользователь изменить не может. Предпочтения (preferences, раздел Preferences) разворачивают значение на клиенте, но не запрещают его менять: правка пользователя сохранится лишь до следующего обновления политики, после чего значение вернётся. Предпочтения работают только в доменных GPO.
GPO сам по себе ничего не делает, пока не привязан (linked) к сайту, домену или OU. Один объект можно привязать к нескольким контейнерам. Удаление привязки оставляет GPO на месте, а удаление GPO стирает политику и её данные из каталога и SYSVOL; не путайте эти действия.
В каком порядке применяются политики
Политики применяются в порядке LSDOU: сначала локальная (Local), затем привязанные к сайту (Site), домену (Domain) и подразделениям (OU). В цепочке вложенных OU сначала действуют политики родительского подразделения, потом дочернего. Каждая следующая политика может перекрыть предыдущую, то есть побеждает ближайшая к объекту. Если конфликтуют настройки компьютера и пользователя, побеждает настройка компьютера.
К одному контейнеру привязывают несколько GPO. Тогда решает порядок ссылок (link order): у ссылки с наименьшим номером приоритет выше.
Два флага меняют правило:
- Enforced (в русской документации — «принудительный») — свойство ссылки: политика не перекрывается нижестоящими и не отключается блокировкой наследования.
- Block Inheritance («Блокировать наследование») — свойство домена или OU: настройки политик более высоких уровней в него не попадают, кроме принудительных.
На практике оба флага применяют редко: чем больше исключений из обычного наследования, тем труднее понять, откуда пришла настройка.
Кроме положения в дереве, на применение влияют два фильтра. Фильтрация по безопасности (security filtering) задаётся правами на GPO: по умолчанию группа Authenticated Users («Прошедшие проверку пользователи») имеет права Read и Apply group policy, поэтому политика действует на всех в области. Чтобы ограничить политику группой, у Authenticated Users убирают право Apply group policy, а нужной группе выдают Read и Apply group policy (о праве Read для Authenticated Users см. ловушки в конце). WMI-фильтр — запрос WMI (Windows Management Instrumentation), который выполняется на клиенте; на одну GPO ссылается один фильтр, и политика применяется, если запрос вернул истину.
Политики обновляются не только при загрузке и входе: клиенты проверяют изменения каждые 90 минут плюс случайная задержка до 30 минут, контроллеры домена — каждые 5 минут. Некоторые расширения обрабатываются только при входе или запуске компьютера (например, перенаправление папок и установка программ). Чтобы настройки пользователя зависели от компьютера (киоск, учебный класс), включают режим обработки loopback: политика Configure user Group Policy loopback processing mode.
Инструменты: GPMC и PowerShell
Консоль управления групповыми политиками (Group Policy Management Console, GPMC, gpmc.msc) входит в Windows Server и RSAT (Remote Server Administration Tools, средства удалённого администрирования сервера). Если её нет в меню «Средства» Диспетчера серверов, добавьте компонент Group Policy Management через мастер добавления ролей и компонентов.
В дереве консоли вы увидите домен lab.example с привязанными GPO, узел «Объекты групповой политики» (Group Policy Objects) со всеми политиками, а также «Моделирование групповой политики» и «Результаты групповой политики». Настройки правят в «Редакторе управления групповыми политиками» (Group Policy Management Editor): правый щелчок по GPO → «Изменить». В домене уже есть две политики по умолчанию: Default Domain Policy (действует на весь домен) и Default Domain Controllers Policy (для контроллеров домена).
Модуль PowerShell GroupPolicy дополняет консоль:
| Командлет | Что делает |
|---|---|
New-GPO, Get-GPO |
создать политику (не привязанную) и просмотреть список |
New-GPLink, Remove-GPLink |
привязать политику к контейнеру и убрать привязку |
Get-GPInheritance |
какие политики применяются к OU |
Backup-GPO, Restore-GPO, Import-GPO |
резервная копия, восстановление, перенос настроек |
Invoke-GPUpdate |
запустить обновление политики на компьютере, в том числе удалённом |
Get-GPResultantSetOfPolicy |
отчёт о результирующем наборе политик |
Скриптами удобно создавать и привязывать GPO, а значения отдельных настроек в этой статье мы правим в редакторе.
Центральное хранилище административных шаблонов
Список доступных политик задают шаблоны — файлы .admx (язык настроек) и .adml (подписи на языке интерфейса). Без общего хранилища каждый администратор видит шаблоны своего компьютера, и результат зависит от версии Windows. Центральное хранилище (Central Store) — папка PolicyDefinitions в SYSVOL: инструменты политик проверяют её по умолчанию, берут оттуда все .admx, а контроллеры реплицируют её между собой.
Создайте хранилище один раз с PC1 (Windows 11 с обновлениями) под admin-lab:
$dom = 'lab.example'
$dest = "\\$dom\SYSVOL\$dom\Policies\PolicyDefinitions"
if (-not (Test-Path $dest)) {
New-Item -ItemType Directory -Path $dest | Out-Null
Copy-Item -Path C:\Windows\PolicyDefinitions\* -Destination $dest `
-Recurse
}
(Get-ChildItem -Path $dest -Filter *.admx).Count
Если папка уже существует, не перезаписывайте её: создайте рядом PolicyDefinitions-<версия>, скопируйте туда новый набор, затем переименуйте старую папку в архивное имя, а новую — в рабочее. Так можно откатиться при сбое. Заменять файлы в C:\Windows\PolicyDefinitions не поддерживается: пакеты шаблонов с сайта Microsoft предназначены только для Central Store. Обновлять хранилище нужно вручную, когда в сети появляются новые версии Windows.
Практика: подготовка
Команды этого раздела и дальнейших выполняйте на DC1 (каталог C:\Backup\GPO — локальный на нём); Central Store выше создавали с PC1. Перед правкой политик всегда делайте копию. Каталог для копий и порядок их хранения описаны в Windows Server с нуля 11: копию, лежащую только на контроллере, перенесите на другой сервер.
New-Item -ItemType Directory -Force -Path C:\Backup\GPO | Out-Null
Backup-GPO -All -Path C:\Backup\GPO -Comment 'before GPO practice'
Новую политику сначала проверяют на пилотной группе. Создайте подразделение Pilot внутри Staff и переместите туда petrova:
$base = (Get-ADDomain).DistinguishedName
$staff = "OU=Staff,$base"
$pilot = "OU=Pilot,$staff"
if (-not (Get-ADOrganizationalUnit -Filter "Name -eq 'Pilot'" `
-SearchBase $staff)) {
New-ADOrganizationalUnit -Name Pilot -Path $staff
}
Get-ADUser -Identity petrova | Move-ADObject -TargetPath $pilot
Переменные $staff и $pilot понадобятся ниже; если вы откроете новую сессию PowerShell, задайте их заново.
Задача 1: сетевой диск через Group Policy Preferences
Создайте GPO и сразу привяжите его к Pilot. Префикс USR- означает политику для пользователей (для компьютеров используют CMP-):
$name = 'USR-Drive-Public'
if (-not (Get-GPO -Name $name -ErrorAction SilentlyContinue)) {
New-GPO -Name $name -Comment 'Disk P: -> \\FS1\Public (pilot)' |
New-GPLink -Target $pilot
}
Пример вывода (из New-GPLink):
GpoId : 2f6c9d1e-5a41-4c3b-9e7a-0b8d3c4a1f20
DisplayName : USR-Drive-Public
Enabled : True
Enforced : False
Target : OU=Pilot,OU=Staff,DC=lab,DC=example
Order : 1
Дальше всё делается в редакторе:
- В GPMC найдите
USR-Drive-Public, правый щелчок → «Изменить». - User Configuration → Preferences → Windows Settings → Drive Maps. Правый щелчок → New → Mapped Drive. Названия разделов Preferences в русской консоли могут отличаться.
- Действие (Action) выберите Update: если диска нет, он будет создан, а если есть, его настройки обновятся. В поле Location введите
\\FS1\Public, отметьте Reconnect, укажите буквуP:. Общую папкуPublicсоздаёт Windows Server с нуля 08; пока её нет, подставьте любой существующий ресурс. - Чтобы диск получали только сотрудники, откройте вкладку Common, включите Item-level targeting и добавьте условие Security Group с группой
GG-Staff. Такая «таргетизация элемента» работает на уровне одного диска внутри GPO. Для диска с папкой\\FS1\Accountingусловием будетGG-Accounting. - Закройте редактор. В GPMC щёлкните политику правой кнопкой, выберите GPO Status → Computer configuration settings disabled: неиспользуемую половину политики лучше отключить, обработка станет чуть быстрее.
Проверка. На PC1 войдите как petrova (при первом входе Windows попросит сменить временный пароль из Windows Server с нуля 05), выполните gpupdate /force, затем выйдите и войдите снова: часть расширений обрабатывается только при входе. В «Проводнике» должен появиться диск P:. Какие политики применились, покажет:
gpresult /r /scope user
Пример вывода (фрагмент; формат приблизительный):
USER SETTINGS
-------------
CN=Maria Petrova,OU=Pilot,OU=Staff,DC=lab,DC=example
Group Policy was applied from: DC1.lab.example
Applied Group Policy Objects
-----------------------------
USR-Drive-Public
Не пытайтесь задавать в Drive Maps отдельную учётную запись и пароль: обновление MS14-025 отключило такие поля, а почему — объясняет раздел про ловушки.
Задача 2: запрет записи на USB-накопители
Создайте вторую GPO и привяжите её к Pilot:
$name = 'USR-Block-USB-Write'
if (-not (Get-GPO -Name $name -ErrorAction SilentlyContinue)) {
New-GPO -Name $name -Comment 'Deny write (pilot)' |
New-GPLink -Target $pilot
}
В редакторе: User Configuration → Policies → Administrative Templates → System → Removable Storage Access → Removable Disks: Deny write access → Enabled. Названия в русской консоли могут отличаться, ориентируйтесь на английский путь. Рядом лежат смежные политики: WPD Devices: Deny write access относится к медиаплеерам и телефонам, а All Removable Storage classes: Deny all access запрещает любой доступ ко всем классам съёмных носителей и имеет приоритет над отдельными настройками.
В описании соседней политики Set time (in seconds) to force reboot (она лежит в том же разделе) сказано: если перезагрузка не принудительная, изменение прав вступает в силу только после перезапуска операционной системы. Поэтому проверяйте так: перезагрузите PC1, войдите как petrova, вставьте флешку: чтение должно работать, запись — завершаться отказом. Для контроля войдите как ivanov (он вне Pilot): запись разрешена. Откат — отвязать политику: Remove-GPLink -Name 'USR-Block-USB-Write' -Target $pilot.
Перед боевым применением учтите: политика запретит запись и тем, кто сохраняет на флешку резервные копии; для исключений используйте фильтрацию по группе безопасности. Запрет записи на съёмные носители не защищает данные от копирования по сети или в облако.
От пилота к боевому применению
Когда всё работает, привяжите обе политики к Staff и уберите привязки с Pilot: petrova останется под действием политик по наследованию, а ivanov и sidorov получат их тоже. Это затронет всех сотрудников, поэтому делайте шаг осознанно.
$names = 'USR-Drive-Public', 'USR-Block-USB-Write'
foreach ($n in $names) {
New-GPLink -Name $n -Target $staff | Out-Null
Remove-GPLink -Name $n -Target $pilot | Out-Null
}
Get-GPInheritance -Target $pilot |
Select-Object -ExpandProperty InheritedGpoLinks |
Format-Table DisplayName, Enabled, Enforced, Order -AutoSize
Политика паролей и Default Domain Policy
Парольная политика домена применяется на уровне домена, поэтому лежит в Default Domain Policy. Как её изменить: в GPMC щёлкните Default Domain Policy правой кнопкой → «Изменить», откройте Computer Configuration → Policies → Windows Settings → Security Settings → Account Policies → Password Policy и дважды щёлкните нужный параметр. До этого сделайте копию, а после проверьте результат командой Get-ADDefaultDomainPasswordPolicy. Для отдельных групп, которым нужны другие требования, предназначены fine-grained-политики из Windows Server с нуля 05.
Microsoft рекомендует держать в Default Domain Policy только политику паролей, политику блокировки и политику Kerberos, а в Default Domain Controllers Policy — только права пользователей и аудит. Всё остальное делайте в отдельных GPO.
Warning
Изменение Default Domain Policy затрагивает весь домен сразу. Перед правкой сделайте копию, после проверьте результат на пилотном компьютере:
Backup-GPO -Name 'Default Domain Policy' -Path C:\Backup\GPO.
Откат: Restore-GPO -Name 'Default Domain Policy' -Path C:\Backup\GPO. Утилита dcgpofix пересоздаёт политики по умолчанию и возвращает их к исходным настройкам, ваши правки в них пропадут. Параметр /target выбирает политику (domain, dc или both), значение по умолчанию на странице документации не названо: смотрите dcgpofix /?. Это крайняя мера после прочтения документации.
Диагностика: почему настройка не применилась
Идите от простого к сложному.
- Обновите политику на клиенте.
gpupdate /forceприменяет заново все настройки (по умолчанию применяются только изменившиеся);/target:computerи/target:userограничивают обновление одной веткой. Удалённый компьютер обновляетInvoke-GPUpdate: командлет ставит задачу в планировщик, чтобы она запустилась сразу, укажите-RandomDelayInMinutes 0, а на клиенте должны быть разрешены правила брандмауэра Remote Scheduled Tasks Management (RPC), Remote Scheduled Tasks Management (RPC-ERMAP) и Windows Management Instrumentation (WMI-IN). - Посмотрите результат.
gpresult /rпоказывает список применённых и отфильтрованных GPO,/scope userили/scope computerвыводит одну ветку. HTML-отчёт строитgpresult /h gp.html: для него запускайте консоль от имени администратора. В GPMC то же даёт «Мастер результатов групповой политики» (Group Policy Results): он берёт данные у реального компьютера, при необходимости удалённо. «Моделирование групповой политики» (Group Policy Modeling) показывает, что было бы при другой конфигурации. - Прочитайте журналы. В Просмотре событий откройте журналы «Система» и «Приложение», а также Applications and Services Logs → Microsoft → Windows → GroupPolicy → Operational (
Microsoft-Windows-GroupPolicy/Operational). Там перечислены применённые и отклонённые GPO с причинами. Для разбора одного прохода применения отфильтруйте журнал по ActivityID события. - Проверьте область действия. Находится ли объект (пользователь или компьютер) в OU с привязкой; включена ли привязка; нет ли блокировки наследования или перекрытия ссылкой с большим приоритетом; права на GPO:
Get-GPPermission -Name 'USR-Drive-Public' -All; WMI-фильтр. - Проверьте DNS и связь с контроллером. События 1030 и 1058 указывают на разрешение имён, доступ к контроллеру и чтение
\\<контроллер>\SYSVOL\<домен>\Policies\<GUID>\gpt.ini. Событие 1129 сообщает о сбое сетевого подключения к контроллеру. - Подождите репликации. Новая политика попадает на все контроллеры через AD и DFSR, а клиент обновляется по расписанию; для теста пользуйтесь
gpupdate.
Правила хорошего тона
- Одна GPO — одна задача, понятное имя с приставкой (
USR-для пользовательских настроек,CMP-для компьютерных) и комментарий. Но не дробите настройки до десятков мелких политик: чем меньше GPO применяется к объекту, тем быстрее загрузка и проще разбор. - Привязывайте политику на нужном уровне, а не «на всякий случай» к домену.
- Новое проверяйте на пилотной OU, как мы сделали выше, и всегда имейте копию (
Backup-GPO -All, хранить не только на контроллере). - В политиках используйте имена серверов или пространства имён, а не IP-адреса: при переезде сервера старые пути придётся искать по всем GPO.
Note
Состояние на ноябрь 2026 года (проверьте актуальность). Бюллетени, о которых идёт речь: MS14-025 (KB 2962486, 2014 год) и MS16-072 (KB 3159398, 2016 год). Модуль GroupPolicy в таблице совместимости Microsoft для PowerShell 7 значится как не проверенный (Untested with Compatibility Layer), поэтому примеры рассчитаны на Windows PowerShell 5.1. Страницы про GPO, GPMC и предпочтения относятся к Windows Server 2025 и 2022; описания Drive Maps и фильтрации по безопасности архивные (Windows Server 2008 R2 и 2012, 2018 год), страница про Central Store написана для клиентов Windows, страница про политики съёмных носителей — для Windows 10 и 11.
Типичные ошибки и недоразумения
- Пароль в Group Policy Preferences. Поля пароля в предпочтениях (в том числе «Drive Maps», «Scheduled Tasks», «Services», «Local Users and Groups») хранили его в SYSVOL со слабым шифрованием (атрибут
cpassword), то есть фактически не защищали. Бюллетень MS14-025 отключил эти поля, а существующие политики сcpasswordнужно удалить; скрипт для поиска приложен к описанию бюллетеня. Вместо «диска под другой учётной записью» выдавайте права группам. - Пользовательскую политику привязали к OU с компьютерами. Пользовательская ветка зависит от OU, где лежит учётная запись пользователя, а не компьютер; настройки не придут (если не включён loopback).
- Убрали Authenticated Users из фильтрации. После обновления MS16-072 пользовательские политики читаются в контексте компьютера, и политика может не примениться, если у GPO нет права Read для Authenticated Users, а при фильтрации по группам — для Domain Computers («Компьютеры домена»). Добавьте группе Domain Computers право чтения.
- Ждут результата сразу. Между правкой и применением могут пройти репликация и интервал обновления (90 минут плюс случайная часть); в тесте используйте
gpupdate /force. - Правка Default Domain Policy «заодно». Не добавляйте туда сетевые диски, USB-ограничения и скрипты.
- Удалили GPO вместо привязки. Чтобы остановить действие политики, достаточно удалить ссылку.
- Разные версии шаблонов у администраторов. Заведите Central Store и обновляйте его централизованно.
Проверьте себя
- В каком порядке применяются политики и какая побеждает при конфликте? Local → Site → Domain → OU (от родительского OU к дочернему); побеждает применённая позже, то есть ближайшая к объекту. При нескольких ссылках в одном контейнере выше приоритет у ссылки с меньшим номером. Enforced перекрывает нижестоящие политики и блокировку наследования.
- Где хранится GPO? Контейнер — в каталоге Active Directory, шаблон — в папке SYSVOL контроллеров домена; части реплицируются разными механизмами.
- Пользователь не получил политику после того, как вы убрали Authenticated Users из фильтрации. Почему? После MS16-072 политики пользователя читаются в контексте компьютера: нужно оставить право Read у Authenticated Users или добавить группе Domain Computers право чтения.
- Какими командами проверить, какие GPO применились на клиенте, и как сделать повторное применение?
gpresult /r(или/h gp.html) и журнал GroupPolicy/Operational; обновление —gpupdate /force. - Почему нельзя хранить пароль в предпочтениях групповой политики?
Он записывается в SYSVOL со слабым шифрованием (
cpassword), и такой пароль нельзя считать защищённым; поэтому MS14-025 отключил эти поля.
Что дальше
- Файловый сервер: общие папки, права NTFS, квоты — общие ресурсы, на которые указывает диск
P:. - Сервер печати: принтеры, драйверы, развёртывание через GPO — раздача принтеров политиками.
- Обновления: Windows Update и WSUS — настройка клиентов обновлений через GPO.
- Безопасность и обслуживание — политики блокировки, аудит и регулярные проверки.
Источники
- Group Policy overview for Windows Server — состав GPO, хранение в AD и SYSVOL, роль OU
- Group Policy processing — порядок LSDOU, Enforced, Block Inheritance, фильтры, loopback, интервалы обновления
- Group Policy Management Console — создание, привязка, порядок ссылок, состояние GPO, моделирование и результаты
- Group Policy preferences — предпочтения и политики, Drive Maps, общие параметры и item-level targeting
- Configure a Mapped Drive Item (архив, WS 2008 R2 и 2012) — действия и параметры Drive Maps, предпочтения только в доменных GPO
- Central Store for Group Policy Administrative Templates — путь
PolicyDefinitionsв SYSVOL и порядок обновления - Policy CSP - ADMX_RemovableStorage — политики Removable Storage Access, их пути и поведение
- Filtering the Scope of a GPO (архив, 2018) — права Read и Apply group policy, Authenticated Users по умолчанию
- MS16-072: description of the security update for Group Policy — право Read для Authenticated Users или Domain Computers
- MS14-025: Vulnerability in Group Policy Preferences — отключение паролей в предпочтениях,
cpassword, скрипт поиска - dcgpofix — рекомендации по Default Domain Policy, восстановление политик по умолчанию
- gpresult — параметры команды
- Troubleshoot applying Group Policy — журнал Operational, ActivityID, события 1030, 1058, 1129,
gpupdate /force - Invoke-GPUpdate — удалённое обновление политики, параметр
-RandomDelayInMinutes, правила брандмауэра - PowerShell 7 module compatibility in Windows Server 2025 — статус модуля
GroupPolicy