Меню Рубрики

Установка по gpo принудительно

Погружение в шаблоны и приручение GPO Windows

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

Освежаем память

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

В системах Windows помимо доменных существуют и локальные групповые политики ― управлять ими можно при помощи оснастки gpedit.msc на системах редакции Professional и выше. Часто считается, что без домена можно настраивать локальные групповые политики только для всех пользователей на компьютере. Это не совсем верно ― с выходом Windows Vista появилась возможность использовать множественную локальную групповую политику или MLGPO. Этот механизм позволяет настраивать отдельные политики для разных пользователей.

Добраться до него можно через вызов консоли mmc: при добавлении оснастки «Управление объектами групповой политики» нажать кнопку «Обзор». Далее на вкладке «Пользователи» уже можно выбрать конкретного пользователя или группу «Администраторы» и «Не администраторы». К сожалению, управление для группы пользователей не реализовано.


Управление групповой политикой для отдельных пользователей.

Бывало и так, что на отдельностоящем терминальном сервере разворачивали Active Directory только для того, чтобы отдельному пользователю настроить поведение драйвера для EasyPrint. Не надо так.

При добавлении доменных групповых политик стоит помнить про порядок их применения ― политика, примененная последней, будет обладать наивысшим приоритетом (да и на собеседованиях часто спрашивают).

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

  1. Локальная групповая политика.
  2. Групповая политика сайта.
  3. Групповая политика домена.
  4. Групповая политика верхнего подразделения.
  5. Групповая политика дочернего подразделения.

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


Блокировка наследования.

Любую групповую политику можно условно разделить на две конфигурации ― пользователя и компьютера. Обычно политики с настройками компьютеров назначаются на подразделение, в котором находятся компьютеры. А политики с настройками пользователей ― на пользователей.

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

Работа замыкания настраивается непосредственно в политике ― «Настройка компьютера ― Административные шаблоны ― Система ― Режим обработки замыкания пользовательской групповой политики». Подробнее про механизм уже писали в статье про использование Merge\Replace в GPO. Я лишь добавлю, что режим замыкания групповой политики ― тоже частый вопрос на собеседовании.


Настройка замыкания групповой политики.

Физически доменные групповые политики находятся в папке SYSVOL на контроллерах домена. Папка реплицируется между контроллерами. Каждая групповая политика выглядит как папка с именем в виде GUID.


Групповые политики домена.

Правила фильтрации, настраиваемые через редактор групповой политики, соответствуют настройкам прав NTFS на соответствующую подпапку.

Говоря о правилах фильтрации, нельзя не упомянуть обновление MS16-072, которое «сломало» групповые политики. Теперь для того чтобы работали правила фильтрации, надо добавлять к каждому фильтру правило «на чтение», но не «на применение» группе Domain Computers.

В каждой папке с групповой политикой существуют подпапки Machine и User, соответствующие настройкам пользователя и компьютера. Если углубиться в подпапки, можно легко понять структуру групповой политики:

  • В корне папки находится файл GPT.ini с настройками групповой политики, такими как ее название.
  • В подпапках Machine и User сидят файлы registry.pol с настройками соответствующих веток реестра.
  • По пути Microsoft\Windows NT\SecEdit можно найти шаблон настроек безопасности ― GptTmpl.inf.
  • В подпапке Preferences находятся предпочтения групповых политик, представляющие из себя подпапки с файлами xml.
  • В подпапке Applications сидят дистрибутивы для развертывания через групповые политики.
  • В папке Scripts находятся скрипты на logon\logoff для пользователя и startup\shutdown для компьютера.
  • В папке Documents and Settings есть настройки перенаправления пользовательских папок.
  • Наконец, в папке Adm находятся устаревшие шаблоны групповой политики.

Подробнее про структуру можно почитать в материале Group Policy Basics, поэтому перейдем сразу к шаблонам.

Административные шаблоны

По сути своей административные шаблоны ― это специальные файлы с инструкциями по изменению клиентского реестра (ветки HKCU или HKLM) и настройками отображения изменяемых параметров через «Управление групповой политикой». В принципе, реестр можно менять и через «Предпочтения групповых политик». Но разница здесь не только в красивом интерфейсе.

Читайте также:  Установка застежек на куртку

Способ изменения реестра Как ведет себя при удалении политики со стандартными настройками Можно ли изменить параметр вручную Можно ли изменить параметр через приложение
Шаблоны Параметр реестра восстанавливается на значение «по умолчанию», если настройки по умолчанию есть в шаблоне
Предпочтения политик Параметр реестра не изменяется + +

Сравнение предпочтения групповых политик и административных шаблонов.

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

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

До появления Windows Vista\2008 в качестве шаблона групповых политик брали исключительно стандарт .adm. Будучи с простой структурой, которую было легко редактировать вручную, этот стандарт обладал и рядом недостатков:

  • Для каждого языка приходилось создавать отдельный файл шаблона.
  • Файл шаблона физически находился в папке с групповой политикой. При использовании одного и того же шаблона он сохранялся в каждую папку, что увеличивало занимаемое место и время репликации.
  • Не поддерживались мультистроковые параметры и параметры QWORD.

На замену устаревшему стандарту появился новый. Новые шаблоны представляют собой два файла: сам шаблон, не зависимый от языка ― .admx и языковой «пакет» к нему ― файл .adml. Теперь шаблоны можно «положить» в центральное хранилище, и обращаться к нему, не плодя одинаковые файлы в папке SYSVOL.

Не обошлось без ложки дегтя ― теперь содержимое файла представляет собой популярный в индустрии формат XML. И создавать новые шаблоны в блокноте стало уже не так удобно.

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

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

Создаем свой шаблон

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

Сразу скажу, что это можно провернуть через «Предпочтения групповых политик» ― в параметрах панели управления ― опции папки. Но мы легких путей не ищем и заодно не хотим, чтобы параметры отображения можно было менять вручную.

За необходимые нам параметры отвечают три ключа в реестре:

  • Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced\Hidden.
  • Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced\HideFileExt.
  • Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced\ShowSuperHidden.

Разберем подробнее синтаксис файла.

  • CLASS. Может принимать значение USER или MACHINE ― в зависимости от класса будет изменятся ветка реестра HKCU или HKLM соответственно.
  • CATEGORY. Строка, в которой задается имя «папки» политики.
  • POLICY. В строке задается название конкретной политики ― у нас таких будет три.
  • KEYNAME. Путь в реестре к изменяемым параметрам.
  • EXPLAIN. Отсылка к «переменной» с объяснением настройки.
  • VALUENAME. Название изменяемого параметра в реестре.
  • VALUEON**VALUEOFF**. Значение, которое будет принимать параметр при включении и выключении его в политике.
  • [strings]. Секция со значениями переменных, которые я использовал для текстовых строк. Можно их не использовать, но тогда могут быть проблемы из-за русского языка.

Помимо задействованных опций есть и другие, например:

  • EDITTEXT. Текстовое поле для ввода.
  • NUMERIC. Поле для ввода цифр.
  • CHECKBOX. Список, где можно отмечать параметры «галочками».
  • COMBOBOX. Список с «переключателем»
  • DROPDOWNLIST. Выпадающий список.
  • LISTBOX. Список для ввода нескольких элементов.

Подробнее со всеми параметрами можно ознакомится в разделе MSDN ADM Format.

Установить новый шаблон не просто, а очень просто ― достаточно щелкнуть правой кнопкой мыши по пункту «Административные шаблоны», выбрать «Добавление и удаление шаблонов» и добавить наш свежесозданный шаблон.


Добавленный шаблон.

После установки шаблона он отобразится в ветке «Классические административные шаблоны».

Теперь можно сконвертировать наш шаблон в .admx с помощью утилиты faAdmxConv из ADMX Migrator.


Конвертируем шаблон.

После конвертации получившийся шаблон .admx и папку Ru-ru с файлом локализации .adml нужно скопировать в папку %Systemroot%\PolicyDefinitions для локальной политики или в папку Sysvol\PolicyDefinitions на контроллере домена.


Установленный шаблон .admx.

Действительно, xml в новом формате читается чуть хуже, чем старый .adm. Для облегчения работы с новым форматом в поставке ADMX Migrator есть утилита faAdmxEditor.msc. Помимо этой утилиты есть и скрипты для конвертации reg-файлов в шаблоны, и сторонние платные утилиты.

Конечно же, можно обойтись без вот-этого-всего и разобраться самостоятельно ― оставлю это в качестве домашнего задания. Благо на портале MSDN есть подробное описание XML-схемы, и есть неплохие материалы с примерами в сети. Например, «Административные шаблоны групповой политики».

Читайте также:  Установка люков дымоудаления на кровле

Теперь перейдем к автоматизации.

Автоматическое управление

Работать с групповыми политиками из командной строки довольно тоскливо. Основных инструментов можно выделить три.

PowerShell. Есть набор командлетов для резервного копирования, восстановления и управления групповыми политиками. Создание новых политик ограничено ― можно лишь изменять реестр. Впрочем, в большинстве случаев и этого достаточно. В качестве примера создадим групповую политику, которая отключит автоматическое обновление Adobe Reader DC.

За отключение автоматического обновления отвечает ключ реестра bUpdater в ветке [HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Adobe\Acrobat Reader\DC\FeatureLockDown]. Установив параметр в 0, мы отключим опцию.

Создание групповой политики на PowerShell будет выглядеть так:

Свежесозданная групповая политика.

Полный список и описание командлетов доступны в материале Technet Group Policy Cmdlets in Windows PowerShell.

Интерфейс COM к GPMC (консоли управления групповой политикой). Способ позволяет сделать с политиками многое, на любом языке программирования, поддерживающим COM-интерфейсы. К сожалению, популярность он не приобрел и примеров в сети довольно мало, несмотря на богатое описание методов интерфейса на портале MSDN. Немногочисленные примеры использования доступны для загрузки в галерее Technet.

LGPO.exe. Не так давно Microsoft заменил набор утилит для работы с локальными групповыми политиками на единую утилиту. Скачать ее можно на официальном сайте. Утилита удобна для копирования и развертывания локальных групповых политик. Заявлена и поддержка MLGPO. Создавать свои политики тоже можно. Также программа удобна для создания и изменения файлов реестра registry.pol. Для примера изменим локальную групповую политику, добавив в нее отключение обновления несчастного Acrobat Reader DC.

Сделаем бэкап локальной групповой политики командой

В папке C:\Temp появится подпапка с GUID по структуре схожая с доменными групповыми политиками:

Теперь развернем registry.pol в текстовый файл:

Синтаксис текстового файла очевиден. Добавим в него значения реестра для отключения автоматического обновления «Акробата»:


Добавленный в файл параметр реестра.

Теперь останется завернуть наш reg.txt обратно в registry.pol и импортировать изменившийся файл обратно в локальную групповую политику:

Все эти махинации, конечно же, можно завернуть в один скрипт и использовать для массового изменения локальной групповой политики привычным инструментом для запуска команд на удаленных компьютерах. Подробнее про методы запуска команд можно почитать в нашей статье «1000++ способ запуска команд на удаленном компьютере».

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

источник

Установка при помощи групповых политик (Group Policy Object)

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

Важно, чтобы все действия выполнялись под учетной записью пользователя с полномочиями администратора сервера. В противном случае могут возникнуть проблемы с установкой агентов на компьютеры домена.

Получите файл .msi, нажав в веб-интерфейсе системы CrocoTime раздел «Настройки» > «Сотрудники» и нажмите кнопку «Скачать агент» > “Пакет GPO”. Вам понадобится ввести адрес и порт сервера CrocoTime в формате http://server:port. После ввода адреса для загрузки будут доступны две ссылки. Первая — msi-пакет, вторая — модификатор. Модификатор требуется для задания настроек сервера агенту. При загрузке модификатора браузерами, например, Internet Explorer или Google Chrome может выдаваться сообщение “Не удалось проверить издателя программы”. Сохраните файл в любом случае.

Полученные файлы переместите в папку, откуда будет происходить установка. Внимание, модификатор следует получать только через web-интерфейс системы CrocoTime! Если вы найдете mst файл где-то сами, то вероятно, работать он не будет.

Откройте оснастку «Управление групповой политикой», как показано на рисунке.

В открывшемся окне в дереве консоли разверните узел «Лес: %имя леса%», узел «Домены», затем узел с названием вашего домена, после чего перейдите к узлу «Объекты групповой политики». В узле «Объекты групповой политики» создайте объект GPO»CrocoTime Agent».

Введите имя нового объекта GPO.

После этого в оснастке «Управление групповой политикой» выберите созданный вами ранее объект GPO, нажмите на нем правой кнопкой мыши и выберите команду«Изменить» из контекстного меню для открытия оснастки «Редактор управления групповыми политиками»:

В оснастке «Редактор управления групповыми политиками» разверните узел Конфигурация пользователя\Политики\Конфигурация программ, перейдите к узлу«Установка программ», нажмите на этом узле правой кнопкой мыши и из контекстного меню выберите команды «Создать» и «Пакет», как показано на следующей иллюстрации:

Читайте также:  Установки для очистки цистерн

В отобразившемся диалоговом окне «Открыть» перейдите к подготовленной ранее точке распространения программного обеспечения и выберите файл установщика Windows, используя который, будет установлено программное обеспечение. На этом этапе обратите внимание на две особенности. Во-первых, для развертывания агентов системы учета рабочего времени СrocoTime, вам нужно выбрать файл agent_installer.msi, который расположен в выбранной вами папке (Общий доступ к этой папке должен быть открыт). Второй, более важный момент: при выборе папки вам нужно указывать не букву локального диска на своем контроллере домена (в том случае, если инсталляционный пакет расположен именно на контроллере домена), а именно сетевой путь, так как это расположение публикуется для клиентских компьютеров;

Сразу после выбора *.msi-файла вам будет предложен способ развертывания программного обеспечения. В отобразившемся диалоговом окне «Развертывание программ» вы можете выбрать один из следующих методов: «публичный», «назначенный»или «особый». Выберите метод «особый», как показано на следующей иллюстрации:

В диалоговом окне свойств установочного пакета, которое всплывет через несколько секунд после указания метода развертывания, необходимо указать дополнительные параметры, используемые при установке агента системы CrocoTime.

Во вкладке «Развертывание» нажмите кнопку «Дополнительно» и активируйте чекбокс«Сделать это 32-разрядное х86 приложение доступным для компьютеров с архитектурой Win64».

Во вкладке «Модификации» нажмите кнопку «Добавить» и укажите путь до файла модификатора server_settings.mst.

Во вкладке «Обновления» в окне “Приложения, обновляемые данным пакетом” удалите все параметры, окно должно быть пустым. Приложение будет заменяться на новую версию

После того как вы внесли все необходимые изменения, нажмите кнопку «ОК». Окно редактирования политики должно иметь такой вид:

Последнее, что нужно сделать, это связать объект групповой политики с доменом, а также в фильтре безопасности указать группы пользователей, для компьютеров которых будут развертываться агенты системы учета рабочего времени CrocoTime. Закройте оснастку«Редактор управления групповыми политиками» и свяжите с доменом (или группой компьютеров в домене) созданный объект групповой политики.

Для этого, в дереве консоли оснастки «Управление групповой политикой» выберите ваш домен (или группу компьютеров внутри домена), нажмите на нем правой кнопкой мыши и из контекстного меню выберите команду «Связать существующий объект групповой политики».

В отобразившемся диалоговом окне «Выбор объекта групповой политики» выберите данный объект групповой политики и нажмите на кнопку «ОК».

Теперь выберите связанный объект групповой политики (СrocoTime Agent) в узле«Объекты групповой политики», перейдите на вкладку «Область» и в группе «Фильтры безопасности» добавьте те группы пользователей, на компьютеры которых должен установиться агент системы учета рабочего времени CrocoTime.

Закройте окно Управление групповой политикой и откройте командную строку Windows. В командной строке введите команду «gpupdate /force». Сервер сообщит, что он не сможет применить политику установки без перезагрузки и предложит перезагрузиться. Введите в командную строку «y» (в английской раскладке) и нажмите клавишу «Enter». Система будет перезагружена через 1 минуту после ввода команды. Либо просто перезагрузите сервер через меню «Пуск».

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

Как удалить модуль сбора статистики?

Чтобы удалить агенты системы учета рабочего времени CrocoTime при помощи GPO, нужно в оснастке «Редактор управления групповыми политиками» развернуть узел Конфигурация пользователя\Политики\Конфигурация программ, перейти к узлу«Установка программ» и нажать на этом узле левой кнопкой мыши. В окне отобразится ваш установленный агент. Нажмите на нем правой кнопкой мыши и из всплывающего меню выберите «Все задачи» => «Удалить».

После этого всплывет окно «Удаление приложений». Выберите в этом окне параметр«Немедленное удаление этого приложения с компьютеров всех пользователей».

Закройте окно Редактора управления групповой политикой и откройте командную строку Windows. В командной строке введите команду «gpupdate /force». Сервер сообщит, что он не сможет применить политику установки без перезагрузки и предложит перезагрузиться. Введите в командную строку «y» (в английской раскладке) и нажмите клавишу «Enter». Система будет перезагружена через 1 минуту, после ввода команды. Либо просто перезагрузите сервер через меню «Пуск».

После перезагрузки групповая политика будет применена. Удаление агентов системы учета рабочего времени CrocoTime c компьютеров пользователей начнется после того, как пользователи выйдут из системы и заново войдут в нее, либо когда их компьютеры будут перезагружены.

Откройте оснастку «Управление групповой политикой». В открывшемся окне перейдите к узлу «Объекты групповой политики». В узле «Объекты групповой политики» удалите объект GPO «CrocoTime Agent».

Удаление агентов системы учета рабочего времени CrocoTime завершено.

источник