Как исключить компьютер из групповой политики
Для чего нужен механизм фильтрации GPO
Какую бы вы сложную иерархию Active Directory не создавали у вас рано или поздно появится ситуация, что вам нужно для двух и более объектов находящихся в одном OU иметь разные настройки, а для кого-то вообще запретить применение определенной групповой политики, но перемещать объект нельзя, так как в текущей иерархии он получает все настройки по корпоративному стандарту, и усложнять структуру не представляется возможным.
Лично я стараюсь не создавать лишних организационных подразделений, так как, чем проще система, тем проще ею управлять. У вас может быть вообще одна OU и все навалено в ней, но это вам не мешает грамотно применять политики к конкретным объектам, благодаря фильтрации на разных этапах GPO.
Виды фильтрации групповых политик
- Это фильтр безопасности
- Это фильтр WMI
- Это фильтр на вкладке делегирование
- Это фильтр на вкладке сведения
Фильтр безопасности GPO
Данный метод метод ограничения применений групповой политикой самый очевидный и используемый. Тут логика простая, что если вы хотите применить групповую политику, только к определенным объектам:
- Пользователям
- Компьютерам
- Группам
то вы можете их добавить в данный фильтр, после чего нужно удалить группу "Прошедшие проверку (authentication user)", так как в нее входят все пользователи и компьютеры домена. Давайте это попробуем. Открываем оснастку "Управление групповой политикой". В прошлый раз я создавал политику "Настройка MaxTokenSize" в задачи которой входило изменение размера токена kerberos. Предположим, что я хочу применить ее только в локальной доменной группе MaxTokenSize. Для этого я нажимаю кнопку "Добавить" в области "Фильтры безопасности", находим ее и нажимаем "Ok".
Теперь нам необходимо удалить группу по умолчанию "Прошедшие проверку", напоминаю, что в нее входят все компьютеры и пользователи домена.
Вам сделают подсказку, о том что удаление группы "Пользователи, прошедшие проверку подлинности" может предотвратить обработку групповых политик.Ниже я расскажу, что это значитВ итоге мы видим в фильтрах безопасности одну нашу группу. Пробуем зайти на компьютер, где она должна отработать.
В начале 2016 года я столкнулся с тем, что моя политика не отработала, хотя все фильтры безопасности были настроены правильно. Открыв вывод команды gpresult/ r, я обнаружил статус (Unknown reason).
Начав разбираться, все пришло к тому, что новые обновления Microsoft (KB3159398, KB3163017, KB3163018) закрывал одну нехорошую вещь, которая длилась с 2000 года. Проблема заключалась в том, что злоумышленник мог применять атаку "Человек посередине (Man in the Middle)", тем самым делать подмену ответа от контроллера домена на целевом компьютере, это выливалось в то, что он подделывал политику безопасности, которая давала ему права локального администратора для скомпрометированной учетной записи.
Исходя из данной ситуации, чтобы политики успешно применялись Microsoft предложило добавлять одну из групп безопасности в ACL политики "Прошедшие проверку" или "Все компьютеры". Переходим к ACL.
Фильтрация GPO через ACL (Запрет GPO)
И так фильтрацию в фильтре мы сделали, чтобы политика применилась нам необходимо выбрать политику и перейти на вкладку "Делегирование". Тут нам необходимо добавить одну из двух групп "Прошедшие проверку (Authenticated Users)" или "Все компьютеры (Domain Computers)". Я добавляю первую. Нажимаем кнопку "Добавить" и находим нашу группу.
Уровень прав оставляем "Чтение", этого будет достаточно.
Пробуем проверить применение нашей политики. В качестве испытуемого у меня идет виртуальная машина с Windows 10. После загрузки, я открываю командную строку и смотрю применение политики, для этого пишем команду:
В итоге я вижу, что среди примененных объектов групповой политики, моя "Настройка MaxTokenSize" в списке присутствует.
Если бы пользователь не был членом группы, которая фигурирует с фильтре безопасности, то мы видели бы вот такую картину, что следующие политики GPO не были применены, так как они отфильтрованы по причине отказано (Безопасность). Как видим нет прав на чтение.
Еще вкладку "Делегирования" используют и для запрещения, простой пример вы сделали политику которая для всех пользователей домена применяет корпоративные обои на рабочий стол. Допустим, что вам для администраторов домена или для круга избранных нужно сделать так, чтобы к ним не применялась политика. Вы создаете группу и уже ей запрещаете чтение данной политики, хоть пользователи и будут по прежнему входить в группу "Прошедшие проверку", но прочитать они ее не смогут так как явный запрет для другой группы куда они входят, гораздо сильнее и приоритетнее чем права чтения.
Добавляем группу для которой хотим запретить применение политики, у меня это Forbidden MaxTokenSize.
Далее даем права "Чтение".
Далее нажимаем кнопку "Дополнительно", у вас откроется окно параметром безопасности. Тут вы выбираете нужную вам группу, для которой вы хотите запретить применение групповой политики и ставите галку "Запретить". В таком случае данная группа будет получать при попытке считать GPO "Отказано (безопасность)".
Фильтрация GPO по WMI
Еще одним действенным методом фильтровать получателей групповой политики, это использование WMI фильтров. Мы с вами их уже применяли, когда нужно было применить политику только к ноутбукам.
Простой пример вы создали политику и хотели бы ее применить скажем только на компьютеры у кого установлена операционная система Windows 7. Для нашей задачи нам необходимо создать WMI фильтр, для этого перейдем в "Фильтры WMI", где выбираем соответствующий пункт.
Задаем имя WMI фильтра, после чего нажимаем кнопку "Добавить". Откроется окно для составления запроса. Конструкция для Windows 7 будет такая:
SELECT * FROM Win32_OperatingSystem WHERE Version LIKE "6.1%" AND ProductType = "1"Номера для Win32_OperatingSystem
-
\Windows 10 1809 - 10.0.17763
- Window Server 2016\Windows 10 — 10.0
- Window Server 2012 R2\Windows 8.1 — 6.3
- Window Server 2012\Windows 8 — 6.2
- Window Server 2008 R2\Windows 7 — 6.1
Тип продукта отвечает за назначение компьютера и может иметь 3 значения:
- 1 — рабочая станция;
- 2 — контроллер домена;
- 3 — сервер.
Вот вам пример вывода в PowerShell команды показывающей версию операционной системы:
Get-WmiObject -Class Win32_OperatingSystem | fl Name, Version, ProductTypeСохраняем наш WMI запрос.
Если хотите перед внедрение проверить будет ли применена групповая политика к нужному объекту, то можете провести тестирование в WMI Filter Validation Utility. Если все настроено корректно, но политика не применяется, почитайте по ссылке возможные варианты. Далее берем вашу политику и применяем к ней WMI.
Теперь если компьютер не соответствует критериям WMI фильтра, то вы увидите в gpresult /r /scope:computer вот такую запись (Отказано фильтр WMI)
Фильтрация через состояние GPO
Еще на вкладке "Сведения" есть такая настройка, как состояние GPO. Она необходима для ускорения обработки политики, путем отключения лишних веток. Например у вас политика исключительно на пользователя и вам смысла нет, чтобы компьютер при загрузке пытался прочитать настройки для компьютера, тратя на это время. В таких случаях отключают данный функционал. Тут есть варианты:
Сегодня я расскажу каким способом я выхожу из ситуации когда нужно чтобы групповая политика (GPO) применялась на весь домен и всех пользователей (Authenticated Users), но в процессе работы возникает исключение, что вот для определенных аккаунтов домена все же лучше деактивировать ее.
На самом деле все просто, может и на первый взгляд задача выглядит сложно.
Рассмотрим на примере групповой политики GPO_Lock которую я опубликовал в заметке от 11.06.2017
Допустим нужно чтобы пользователю/группе пользователей (К примеру alektest) данная политика не применялась.
Делается это следующим образом. Авторизуемся (Login: ekzorchik) на домен контроллере (srv-dc.polygon.local) с правами Domain Admins. Далее открываю оснастку управления групповыми политиками:
Win + X → Control Panel — Administrative Tools — Group Policy Management, находим в текущем домене (в моем случае это polygon.local) → переходим на вкладку Delegation, потом в Advanced (Расширенные)… и добавляем либо пользователя, либо группу. Я добавляю пользователя alektest: Add… → alektest, нажимаю Check Names этим самым осуществляю проверки действительного наличия вводимого в домене. Когда проверка осуществлена успешно вводимое будет подчеркнуто:
После нажимаю кнопку OK. Затем выделив добавленную запись во вкладке Security окна GPO_Lock Security Settings нужно опустить свой взор на подменю: Permissions for alektest и этим увидим какие права доступа присутствую у текущего пользователя/группы. По умолчанию выставлены права Read — это значит учетная запись при авторизации на компьютере считывает данную групповую политику и все что в ней предопределено применяем на рабочей станции. Так вот чтобы данная политика не применялась нужно в данном подменю просто поставить галочку у параметра: Apply group policy — DENY
См. Скриншот ниже для наглядного пониманию что и где нужно отметить галочкой.
Теперь после нажатия Apply — Yes — Ok дополнения к GPO_Lock вступят в силу. Т.е. при совершении Logoff/Logon для пользователя alektest больше не будет применяться групповая политика GPO_Lock и ее также не будет видно в примененном вывода консольной утилиты gpresult /r.
На этом я прощаюсь и до новых встреч на моем блоге реальных заметок. С уважением Олло Александр aka ekzorchik.
Хотите узнать, как настроить групповую политику, чтобы игнорировать учетную запись компьютера? В этом учебнике мы покажем вам, как настроить разрешения GPO, чтобы не применять его конфигурации к учетной записи компьютера.
• Windows 2012 R2
• Windows 2016
• Windows 2019
• Windows 10
• Windows 7
Список оборудования
В следующем разделе представлен список оборудования, используемого для создания этого учебника.
Как Amazon Associate, я зарабатываю от квалификационных покупок.
Windows Связанные Учебник:
На этой странице мы предлагаем быстрый доступ к списку учебников, связанных с Windows.
Учебник GPO - Создать исключение для компьютера
На контроллере домена откройте инструмент управления групповой политикой.
Создание новой групповой политики.
Введите имя для новой политики группы.
В нашем примере, новый GPO был назван: MY-GPO.
На экране управления групповой политикой выберите GPO и получите доступ к вкладке «Делегация».
В нижней части экрана нажмите кнопку Advanced.
Нажмите на кнопку Добавить.
Нажмите на кнопку, названную типами объектов.
Выберите тип объекта Компьютеры.
Поиск и добавление компьютера.
Выберите учетную запись компьютера и отказано в разрешении на применение политики группы.
В окне Предупреждения нажмите кнопку «Да».
В нашем примере компьютеру TECH-DC01 было отказано в разрешении на применение GPO под названием MY-GPO.
Учебник GPO - Применение групповой политики
На экране управления политикой Группы необходимо правильно нажать на желаемую Организационную группу и выбрать возможность связать существующий GPO.
В нашем примере мы собираемся связать групповую политику под названием MY-GPO с корнем домена.
После применения GPO вам нужно подождать 10 или 20 минут.
В течение этого времени GPO будет реплицироваться на другие контроллеры доменов.
Перезагрузите удаленный компьютер и убедитесь, что конфигурация игнорируется.
В нашем примере компьютер TECH-DC01 не будет применять конфигурации от GPO под названием MY-GPO.
А можно ли отменить действие групповых политик на компьютере, не будучи при этом администратором домена? Сегодня мы попробуем это выяснить. В качестве подопытного возьмем компьютер с установленной на нем Windows 7, являющийся членом домена. Все действия будем проводить под обычной учетной записью, не имеющей в домене никаких административных полномочий.
За применение групповых политик на локальном компьютере в Windows 7 отвечает служба Group Policy Client (gpsvc). Ее состояние можно посмотреть прямо в Диспетчере задач, на вкладке Службы.
Или в оснастке Службы (Services).
Как вариант можно с помощью утилиты psexec запустить командную консоль от имени системы и затем остановить службу командой net stop gpsvc
Но решение это временное. Хотя служба и остановлена, изменить параметры ее запуска мы все равно не сможем, и при следующей перезагрузке она будет запущена. Чтобы изменить режим запуска службы нам потребуется правка реестра.
Настройки службы находятся в разделе HKLM\SYSTEM\CurrentControlSet\Services\gpsvc. По умолчанию изменение параметров этого раздела запрещено, так что прежде чем приступать к его редактированию, нам необходимо получить на это права. Кликаем правой клавишей мыши на разделе и выбираем пункт «Разрешения».
Первым делом нам надо изменить владельца раздела. Для этого идем в дополнительные параметры безопасности и выбираем владельцем свою учетную запись.
После чего даем себе полные права и, на всякий случай, удаляем всех из списка доступа.
Теперь можно вернуться к настройкам службы. За режим запуска отвечает параметр Start. По умолчанию он равен 2, что означает режим запуска Авто. Для отключения службы ставим 4.
И еще. Отключив таким образом службу клиента групповой политики, вы периодически будете получать в трее уведомления о недоступности службы Windows.
Чтобы этого избежать, можно удалить (предварительно сохранив) раздел реестра HKLM\SYSTEM\CurrentControlSet\Control\Winlogon\Notifications\Components\GPClient
Таким вот нехитрым способом можно отключить действие групповых политик. При этом совсем не обязательно обладать административными правами в домене, достаточно лишь входить в группу локальных администраторов на компьютере. Правда такой номер может пройти только на компьютерах с Windows 7 или Vista. В более ранних ОС службы gpsvc нет, а за применение групповых политик отвечает служба Winlogon.
Да, чуть не забыл. Все действия, описанные в статье, я проводил исключительно в познавательных целях 🙂 Делать подобное в сети предприятия крайне не рекомендуется, кое где за это могут и уволить. И перед любым вмешательством в реестр обязательно делайте его резервную копию, чтобы в случае чего оперативно откатить изменения.
Читайте также: