Если вы так или иначе сталкиваетесь с AD (Active
Directory), то вам наверняка приходилось иметь дело с
политикой групп (Group Policy). Одним из основных компонентов
объектов политики групп (Group Policy Object - GPO) является
контроль над системным реестром (Registry). Контроль реестра
внутри политики групп в первую очередь осуществляется
посредством включения административных шаблонов. Эти шаблоны
весьма полезны, но у них есть и отрицательные моменты. Один из
отрицательных моментов, способных вызвать проблемы, касается
контролирования управления шаблонов, когда выходит новая
версия. Есть решение не только для этой проблемы, но и многих
других проблем, связанных с этими шаблонами. Вот одно из
решений, решение с хранилищем, которое разрешает проблему с
административными шаблонами.
Основы административных шаблонов (Administrative Template
Basics)
Административные шаблоны представляют собой текстовые
файлы, содержащие простой код, который помогает разрешенной
политике групп выполнять различные модификации системного
реестра. Эти шаблоны хранятся в файлах с расширением .ADM, от
которого и происходит название шаблонов ADM. Шаблоны очень
важны для политики групп, так как они выполняют две различные
функции.
Первая функция заключается в создании политики и установок
в редакторе объектов политики групп (Group Policy Object
Editor). Все установки, созданные шаблонными ADM, видны в узле
Administrative Templates, как показано на рисунке 1.
Рисунок 1: Узлы Administrative Templates,
сформированные шаблонами ADM, которые включены в GPO
Каждый шаблон ADM содержит информацию для секции
пользователя и компьютера в GPO. Есть ключевые слова в
шаблонах ADM, разделяющие две секции.
Вторая функция шаблонов ADM связана с установками
пользователя и компьютера, которые создаются внутри файлов.
Шаблоны ADM также указывают точный путь регистрации, значение
и данные, которые меняет каждая установка. Все установки
пользователя в шаблонах ADM будут обновлять HKEY_CurrentUser
секцию системного реестра, а компьютерные установки обновляют
HKEY_Local_Machine область реестра.
На рисунке 2 показан типичный объект в шаблоне ADM, который
обновляет объект системного реестра.
Рисунок 2: Синтаксис шаблона ADM указывает HKEY,
путь, значение и данные для каждой установки внутри
шаблона
Стандартные шаблоны ADM
Для Windows Server 2003 GPO существует всего пять
стандартных ADM шаблонов. Шаблоны ADM запускаются с целью
контроля определенных аспектов узла Administrative Templates в
GPO, которые показаны в таблице 1.
Таблица 1: Каждый ADM шаблон создан для контроля
над определенными установками в GPO
ADM Шаблон |
Функция шаблона |
Conf.adm |
NetMeeting |
Inetres.adm |
Internet Explorer |
System.adm |
Общие настройки системы (General system
settings) |
Wmplayer.adm |
Windows Media Player |
Wuau.adm |
Обновления Windows Update/Automatic
Update |
Общий размер стандартных ADM шаблонов составляет примерно 4
MB. Хотя файлов и не много, они занимают относительно много
места.
Увеличение шаблонов (ADM Template Bloat)
Чтобы понять увеличение шаблонов ADM, вам нужно понять, как
хранятся GPO. Каждый GPO разбит на две части, и каждая часть
хранится в различных местах на контроллерах доменов.
Одна часть с названием Group Policy Container (GPC),
хранится в качестве объекта в AD. Основная задача этой части
GPO заключается в том, что она связывает все соединения,
расположения и пути различных аспектов GPO. GPC не содержит
никаких настроек или шаблонов.
Вторая часть GPO с названием Group Policy Template (GPT),
хранится в виде файлов в SYSVOL на контроллерах доменов.
Точное место GPT будет
c:\Windows\SYSVOL\sysvol\<domainname>\Policies\<GUID
of GPO>. Эта секция GPO полностью отвечает за
определенные установки, настроенные в GPO. GPT не только
хранит все настройки в большом количестве файлов, она еще
содержит копию шаблонов ADM, как показано на рисунке 3.
Рисунок 3: ADM шаблоны хранятся в каждом
GPT
Проблема с расширением АDM заключается в том, что копии
шаблонов хранятся в каждом GPT, а не одном. Поэтому если у вас
большое количество шаблонов ADM, общее количество места,
занимаемого ими, может быть весьма значительным. Некоторые
компании имеют более тысячи GPO, что составляет примерно 4 GB
места, занятого лишь под ADM шаблоны.
Помимо занимаемого места эти шаблоны должны быть
скопированы на все контроллеры доменов. Служба репликации
файлов (File Replication Service), которая сейчас на некоторых
версиях Windows называется DFS Replication, несет
ответственность за этот процесс.
Проверка версии (ADM Version Checking)
Одним из способов решения проблемы увеличения шаблонов ADM
является простое удаление шаблонов из GPT. В теории это звучит
довольно разумно, но стандартное управление шаблонами ADM
показывает, что эти шаблоны должны использоваться при
редактировании GPO.
Чтобы понять процесс контролирования шаблонов системой,
давайте посмотрим, как GPO использует шаблоны ADM при
редактировании GPO.
- Когда новый GPO редактируется впервые, локальные версии
шаблонов ADM копируются в папку ADM в GPT.
- При последующем редактировании GPO, система сравнивает
пометку даты шаблона ADM, хранящегося в GPT, с шаблоном ADM,
хранящимся на машине, которая выполняет администрирование.
Если локальная версия GPO имеет более новую пометку даты,
она копируется в GPT, перезаписывая устаревшую версию.
- Если GPT или компьютер, выполняющий редактирование GPO,
не имеет копию ADM, тогда эта часть узла Administrative
Templates в редакторе GPOE будет недоступной. Сюда входят
все стандартные и пользовательские шаблоны ADM.
Подделка шаблонов (ADM Template Tampering)
Эти вопросы могут стать причиной значительных проблем с
общим управлением политики групп. Они могут вызвать проблемы
не только с репликацией и хранением, но такие версии шаблонов
ADM могут быстро обновляться, и, как правило, с вредоносным
поведением. Если нелегальные администраторы должны были
обновлять локальные версии шаблонов ADM с изменением значений
реестра и данных, которые обновляются. При стандартной
процедуре обновления шаблонов ADM все эти шаблоны, хранящиеся
в GPT, могут быть повреждены в результате обычного
редактирования GPO.
Создание хранилища ADM
Решением проблемы обновления шаблонов ADM в GPT, которое
может исключить все негативные моменты ADM шаблонов, может
стать создание централизованного хранилища для этих шаблонов.
Для того чтобы создать центральное хранилище, потребуется
выполнить всего несколько шагов. Следует отметить, что
центральное хранилище не только на одной машине, а на всех
машинах, которые имеют права администраторов GPO. Учитывая
способ работы текущих версий Windows с шаблонами ADM,
невозможно использовать путь UNC для ADM шаблонов.
Чтобы создать централизованное хранилище для шаблонов ADM,
выполните следующие шаги.
- Удалите шаблоны ADM из каждого GPT.
- Разместите копию каждой последней версии шаблона ADM
(стандартную и пользовательскую) в папку C:\Windows\Inf на
каждой машине, имеющей права администратора GPO.
- Создайте GPO, включающие компьютеры, определенные во
втором шаге. В GPO, установите настройку «всегда
использовать локальные шаблоны ADM для редактора политики
групп» (Always Use Local ADM Files for Group Policy Editor),
которая находится в Computer Configuration\Administrative
Templates\System\Group Policy. Установка должна быть
включена (Enabled).
- Создайте GPO, который будет включать учетные записи
пользователей, имеющих право редактировать GPO. В GPO
установите настройку «отключить автоматическое обновление
файлов ADM» (Turn off Automatic Updates of ADM), которая
находится в User Configuration\Administrative
Templates\System\Group Policy. Установка должна быть
включена (Enabled).
Теперь, когда GPO отредактирован, он будет использовать
только локальные копии шаблонов ADM, которые хранятся в
местной директории. Редактирование GPO теперь также будет
отвергать проверку версии шаблонов ADM в обоих местах,
полагаясь лишь на локальную версию.
В качестве опции вы также можете защитить шаблоны ADM,
используя новую настройку политики, которая доступна в
PolicyMaker. Эта настройка позволяет вам выполнять удаление
файлов, а затем копирование файлов. Целью здесь является
сначала полное удаление всех шаблонов ADM на компьютере,
управляющем GPO, когда он загружается. Затем, когда
пользователь входит, необходимые версии шаблонов ADM будут
скопированы на компьютер из надежной директории сети.
Установка, которую вам нужно будет настроить, находится в
Computer Configuration и User Configuration, после того как вы
установите PolicyMaker. Зайдите в узел Policymaker\Windows
Settings, и там вы найдете политику файлов (Files policy).
Здесь вы создаете одну политику для компьютера, который
удаляет шаблоны ADM, а другую политику в секции пользователя,
которая копирует ADM шаблоны на компьютер. В идеале вы просто
создаете правильные настройки пользователя и компьютера в GPO,
которые вы создавали выше.
Обратите внимание: PolicyMaker все еще
доступен некоторое время на сайте http://www.desktopstandard.com/.
Эта технология будет доступна на время Windows Server 2008
из-за того, что Microsoft сейчас владеет PolicyMaker и включит
его в использование Windows Server 2008.
Обратите внимание: ADM шаблоны более не
являются стандартным форматом системного реестра в GPO.
Windows Vista и Windows Server 2008 используют ADMX файлы,
основанные на формате XML. Для тех компаний, которые не
собираются переходить на Windows Vista или Windows Server
2008, хранилище ADM является отличной возможностью. ADMX файлы
идут со своим хранилищем, которое нужно устанавливать и
использовать, если вы перейдете на эти новые ОС. Для более
подробной информации о хранилище ADMX прочтите статью Как создавать
централизованное хранилище для шаблонов политики групп в
Windows Vista.
Заключение
Управление шаблонами ADM было проблематичным вопросом в
течение некоторого времени. Работа и контроль шаблонов не
очень управляем без использования настроек GPO. Однако
проблемы с увеличением, репликацией, проверкой версии,
потенциальным вредоносным поведением и централизацией шаблонов
вполне разрешимы, если немного перенастроить систему. Как
только вы сузили список учетных записей и компьютеров, вы
можете создать GPO, чтобы контролировать процесс управления
ADM-шаблонами системой, в результате чего вы знаете наверняка,
откуда использовались те или иные шаблоны.