Групповые политики/Управление logon-скриптами: различия между версиями
(+GPUI) |
|||
Строка 14: | Строка 14: | ||
== Настройка политики == | == Настройка политики == | ||
=== На машине Альт === | |||
{{Note|Управление logon-скриптами реализовано в {{pkg|gpui}} начиная с версии 0.2.24.}} | |||
==== Сценарии для входа/выхода пользователя ==== | |||
Для того чтобы назначить сценарий для входа или выхода пользователя (User Logon/Logoff script), необходимо выполнить следующие действия: | |||
'''Шаг 1.''' Для удобства можно скопировать нужные сценарии в папку {{path|User\Scripts\Logon}} (например, {{path|\\test.alt\sysvol\test.alt\Policies\{20DDB816-421B-4861-8AC5-007E56CB67D0}\User\Scripts\Logon}}) или {{path|User\Scripts\Logoff}} соответствующей политики. | |||
'''Шаг 2.''' На машине с установленными [[ADMC]] и [[Групповые_политики/GPUI|GPUI]] получить ключ Kerberos для администратора домена. | |||
'''Шаг 3.''' В [[ADMC]] создать новый объект групповой политики (GPO) и связать его с OU. | |||
'''Шаг 4.''' Запустить [[Групповые_политики/GPUI|GPUI]]: | |||
*из [[ADMC|модуля удаленного управления базой данных конфигурации (ADMC)]], выбрав в контекстном меню объекта групповой политики пункт «Изменить…»: | |||
*:[[File:Admc-gp-edit-logon.png|Запуск GPUI из ADMC]] | |||
*или с указанием каталога групповой политики: | |||
*:<source lang="text" highlight="1">$ gpui-main -p "smb://dc.test.alt/SysVol/test.alt/Policies/{20DDB816-421B-4861-8AC5-007E56CB67D01}"</source> | |||
*:где dc.test.alt – имя контроллера домена, а "{XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXXXX}" – GUID шаблона групповой политики для редактирования. | |||
Откроется окно редактирования групповых политик. | |||
'''Шаг 5.''' Перейти в «Пользователь» -> «Настройки системы» -> «Скрипты». Щёлкнуть левой кнопкой мыши на политике «Вход в систему» или «Выход из системы» : | |||
[[Файл:GPUI-scripts-05.png|GPUI. Сценарий (вход/выход из системы)]] | |||
'''Шаг 6.''' В диалоговом окне свойств политики нажать кнопку «Добавить»: | |||
[[Файл:GPUI-scripts-06.png|GPUI. Диалоговое окно свойств политики «Вход в систему»]] | |||
'''Шаг 7.''' В диалоговом окне «Добавить скрипт» в поле «Имя сценария» ввести путь к сценарию, а в поле «Параметры сценария» ввести необходимые параметры аналогично вводу этих параметров в командной строке. | |||
Пример добавления сценария для ОС ALT: | |||
[[Файл:GPUI-scripts-08.png.png|GPUI. Диалоговое окно добавления сценария для ОС ALT]] | |||
{{Note|Применение локальных скриптов реализовано в механизме {{pkg|gpupdate}} версии 0.9.11, в версиях ниже скрипты для ОС ALT должны находиться в GPT настраиваемого объекта групповой политики.}} | |||
Пример добавления сценария для ОС Windows (можно указать локальный скрипт на компьютере клиента): | |||
[[Файл:GPUI-scripts-04.png.png|GPUI. Диалоговое окно добавления сценария для ОС Windows]] | |||
При назначении нескольких сценариев они будут применяться в заданном порядке. Чтобы переместить сценарий в списке вверх/вниз, следует выбрать его в списке и нажать кнопку «Вверх»/«Вниз». Для того чтобы изменить сценарий, необходимо нажать кнопку «Изменить». Кнопка «Удалить» предназначена для удаления сценария из списка. | |||
[[Файл:GPUI-scripts-07.png|GPUI. Список сценариев]] | |||
На вкладке «Скрипты PowerShell» можно добавить сценарии с расширением *.ps1. | |||
==== Сценарии для автозагрузки или завершения работы компьютера ==== | |||
Для того чтобы назначить сценарий для автозагрузки или завершения работы, необходимо выполнить следующие действия: | |||
'''Шаг 1.''' Для удобства можно скопировать нужные сценарии в папку {{path|Machine\Scripts\Startup}} (например, {{path|\\test.alt\sysvol\test.alt\Policies\{20DDB816-421B-4861-8AC5-007E56CB67D0}\Machine\Scripts\Startup}}) или {{path|Machine\Scripts\Shutdown}} соответствующей политики. | |||
'''Шаг 2.''' На машине с установленными [[ADMC]] и [[Групповые_политики/GPUI|GPUI]] получить ключ Kerberos для администратора домена. | |||
'''Шаг 3.''' В [[ADMC]] создать новый объект групповой политики (GPO) и связать его с OU. | |||
'''Шаг 4.''' Запустить [[Групповые_политики/GPUI|GPUI]]: | |||
*из [[ADMC|модуля удаленного управления базой данных конфигурации (ADMC)]], выбрав в контекстном меню объекта групповой политики пункт «Изменить…»: | |||
*:[[File:Admc-gp-edit-logon.png|Запуск GPUI из ADMC]] | |||
*или с указанием каталога групповой политики: | |||
*:<source lang="text" highlight="1">$ gpui-main -p "smb://dc.test.alt/SysVol/test.alt/Policies/{20DDB816-421B-4861-8AC5-007E56CB67D01}"</source> | |||
*:где dc.test.alt – имя контроллера домена, а "{XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXXXX}" – GUID шаблона групповой политики для редактирования. | |||
Откроется окно редактирования групповых политик. | |||
'''Шаг 5.''' Перейти в «Компьютер» -> «Настройки системы» -> «Скрипты». Щёлкнуть левой кнопкой мыши на политике «Запуск» или «Завершение работы» : | |||
[[Файл:GPUI-scripts-02.png|GPUI. Сценарий (запуск/завершение)]] | |||
'''Шаг 6.''' В диалоговом окне свойств политики нажать кнопку «Добавить»: | |||
[[Файл:GPUI-scripts-06.png|GPUI. Диалоговое окно свойств политики «Сценарий завершения работы»]] | |||
'''Шаг 7.''' В диалоговом окне «Добавить скрипт» в поле «Имя сценария» ввести путь к сценарию, а в поле «Параметры сценария» ввести необходимые параметры аналогично вводу этих параметров в командной строке. | |||
Пример добавления сценария для ОС ALT: | |||
[[Файл:GPUI-scripts-08.png.png|GPUI. Диалоговое окно добавления сценария для ОС ALT]] | |||
{{Note|Применение локальных скриптов реализовано в механизме {{pkg|gpupdate}} версии 0.9.11, в версиях ниже скрипты для ОС ALT должны находиться в GPT настраиваемого объекта групповой политики.}} | |||
Пример добавления сценария для ОС Windows (можно указать локальных скрипт на компьютере клиента): | |||
[[Файл:GPUI-scripts-04.png.png|GPUI. Диалоговое окно добавления сценария для ОС Windows]] | |||
При назначении нескольких сценариев они будут применяться в заданном порядке. Чтобы переместить сценарий в списке вверх/вниз, следует выбрать его в списке и нажать кнопку «Вверх»/«Вниз». Для того чтобы изменить сценарий, необходимо нажать кнопку «Изменить». Кнопка «Удалить» предназначена для удаления сценария из списка. | |||
На вкладке «Скрипты PowerShell» можно добавить сценарии с расширением *.ps1. | |||
==== Включение «Экспериментальных групповых политик»==== | |||
Так как политики управления logon-скриптами относятся к экспериментальным, на машинах Альт где они применяются должны быть включены «Экспериментальные групповые политики». | |||
Включить «Экспериментальные групповые политики» можно, выбрав в разделе «Компьютер» -> «Административные шаблоны» -> «Система ALT» -> «Групповые политики» пункт «Экспериментальные групповые политики» и установив в открывшемся окне отметку в поле «Включено»: | |||
[[Файл:Gpui-global_experimental.png|GPUI. Включение политики «Экспериментальные групповые политики»]] | |||
{{Note|Включить/отключить механизм групповых политик управления logon-скриптами можно, включив/отключив политики «Модуль выполнения сценариев для компьютеров» или «Модуль выполнения сценариев для пользователей» («Компьютер» -> «Административные шаблоны» -> «Система ALT» -> «Групповые политики» -> «Механизмы GPUpdate»): | |||
[[Файл:Gpui-global_GPUpdate-logon.png|600px|GPUI. Механизмы GPUpdate]]}} | |||
=== На машине Windows === | === На машине Windows === | ||
==== Сценарии для входа/выхода пользователя ==== | ==== Сценарии для входа/выхода пользователя ==== | ||
Строка 94: | Строка 199: | ||
На вкладке «Сценарии PowerShell» можно добавить сценарии с расширением *.ps1. | На вкладке «Сценарии PowerShell» можно добавить сценарии с расширением *.ps1. | ||
=== Включение «Экспериментальных групповых политик»=== | ==== Включение «Экспериментальных групповых политик»==== | ||
Так как политики управления logon-скриптами относятся к экспериментальным, на машинах Альт где они применяются, должны быть включены «Экспериментальные групповые политики». | Так как политики управления logon-скриптами относятся к экспериментальным, на машинах Альт где они применяются, должны быть включены «Экспериментальные групповые политики». | ||
Строка 105: | Строка 210: | ||
[[Файл:GPUpdate_global_experimental.png|RSAT. Диалоговое окно «Экспериментальные групповые политики»]] | [[Файл:GPUpdate_global_experimental.png|RSAT. Диалоговое окно «Экспериментальные групповые политики»]] | ||
{{Note|Включить/отключить механизм групповых политик управления logon-скриптами можно, включив/отключив политики «Модуль выполнения сценариев для компьютеров» или «Модуль выполнения сценариев для пользователей» («Конфигурация компьютера» -> «Политики» -> «Административные шаблоны» -> «Система ALT» -> «Групповые политики» -> «Механизмы GPUpdate»): | |||
[[Файл:RSAT-global_GPUpdate-logon.png|600px|RSAT. Механизмы GPUpdate]]}} | |||
== Файлы настроек политики == | == Файлы настроек политики == |
Версия от 10:50, 10 мая 2023
Описание
Групповые политики позволяют запускать сценарии запуска и завершения работы компьютера, входа и выхода из системы пользователя. Возможно связать один или несколько файлов сценариев (scripts) с четырьмя инициируемыми событиями:
- Для машины:
- Запуск компьютера (Startup)
- Выключение компьютера/Завершение работы (Shutdown)
- Для пользователя:
- Вход пользователя (Logon)
- Выход пользователя (Logoff)
В случае, если указано более одного сценария, они будут выполняться согласно перечню в списке. Система выполняет сценарии на языках, которые поддерживает клиентский компьютер. В среде Windows эту задачу выполняет Windows Script Host (WSH), который поддерживает языки сценариев, включая bat, cmd, VBScript и Jscript.
Настройка политики
На машине Альт
Сценарии для входа/выхода пользователя
Для того чтобы назначить сценарий для входа или выхода пользователя (User Logon/Logoff script), необходимо выполнить следующие действия:
Шаг 1. Для удобства можно скопировать нужные сценарии в папку User\Scripts\Logon (например, \\test.alt\sysvol\test.alt\Policies\{20DDB816-421B-4861-8AC5-007E56CB67D0}\User\Scripts\Logon) или User\Scripts\Logoff соответствующей политики.
Шаг 2. На машине с установленными ADMC и GPUI получить ключ Kerberos для администратора домена.
Шаг 3. В ADMC создать новый объект групповой политики (GPO) и связать его с OU.
Шаг 4. Запустить GPUI:
- из модуля удаленного управления базой данных конфигурации (ADMC), выбрав в контекстном меню объекта групповой политики пункт «Изменить…»:
- или с указанием каталога групповой политики:
$ gpui-main -p "smb://dc.test.alt/SysVol/test.alt/Policies/{20DDB816-421B-4861-8AC5-007E56CB67D01}"
- где dc.test.alt – имя контроллера домена, а "{XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXXXX}" – GUID шаблона групповой политики для редактирования.
Откроется окно редактирования групповых политик.
Шаг 5. Перейти в «Пользователь» -> «Настройки системы» -> «Скрипты». Щёлкнуть левой кнопкой мыши на политике «Вход в систему» или «Выход из системы» :
Шаг 6. В диалоговом окне свойств политики нажать кнопку «Добавить»:
Шаг 7. В диалоговом окне «Добавить скрипт» в поле «Имя сценария» ввести путь к сценарию, а в поле «Параметры сценария» ввести необходимые параметры аналогично вводу этих параметров в командной строке.
Пример добавления сценария для ОС ALT:
Пример добавления сценария для ОС Windows (можно указать локальный скрипт на компьютере клиента):
При назначении нескольких сценариев они будут применяться в заданном порядке. Чтобы переместить сценарий в списке вверх/вниз, следует выбрать его в списке и нажать кнопку «Вверх»/«Вниз». Для того чтобы изменить сценарий, необходимо нажать кнопку «Изменить». Кнопка «Удалить» предназначена для удаления сценария из списка.
На вкладке «Скрипты PowerShell» можно добавить сценарии с расширением *.ps1.
Сценарии для автозагрузки или завершения работы компьютера
Для того чтобы назначить сценарий для автозагрузки или завершения работы, необходимо выполнить следующие действия:
Шаг 1. Для удобства можно скопировать нужные сценарии в папку Machine\Scripts\Startup (например, \\test.alt\sysvol\test.alt\Policies\{20DDB816-421B-4861-8AC5-007E56CB67D0}\Machine\Scripts\Startup) или Machine\Scripts\Shutdown соответствующей политики.
Шаг 2. На машине с установленными ADMC и GPUI получить ключ Kerberos для администратора домена.
Шаг 3. В ADMC создать новый объект групповой политики (GPO) и связать его с OU.
Шаг 4. Запустить GPUI:
- из модуля удаленного управления базой данных конфигурации (ADMC), выбрав в контекстном меню объекта групповой политики пункт «Изменить…»:
- или с указанием каталога групповой политики:
$ gpui-main -p "smb://dc.test.alt/SysVol/test.alt/Policies/{20DDB816-421B-4861-8AC5-007E56CB67D01}"
- где dc.test.alt – имя контроллера домена, а "{XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXXXX}" – GUID шаблона групповой политики для редактирования.
Откроется окно редактирования групповых политик.
Шаг 5. Перейти в «Компьютер» -> «Настройки системы» -> «Скрипты». Щёлкнуть левой кнопкой мыши на политике «Запуск» или «Завершение работы» :
Шаг 6. В диалоговом окне свойств политики нажать кнопку «Добавить»:
Шаг 7. В диалоговом окне «Добавить скрипт» в поле «Имя сценария» ввести путь к сценарию, а в поле «Параметры сценария» ввести необходимые параметры аналогично вводу этих параметров в командной строке.
Пример добавления сценария для ОС ALT:
Пример добавления сценария для ОС Windows (можно указать локальных скрипт на компьютере клиента):
При назначении нескольких сценариев они будут применяться в заданном порядке. Чтобы переместить сценарий в списке вверх/вниз, следует выбрать его в списке и нажать кнопку «Вверх»/«Вниз». Для того чтобы изменить сценарий, необходимо нажать кнопку «Изменить». Кнопка «Удалить» предназначена для удаления сценария из списка.
На вкладке «Скрипты PowerShell» можно добавить сценарии с расширением *.ps1.
Включение «Экспериментальных групповых политик»
Так как политики управления logon-скриптами относятся к экспериментальным, на машинах Альт где они применяются должны быть включены «Экспериментальные групповые политики».
Включить «Экспериментальные групповые политики» можно, выбрав в разделе «Компьютер» -> «Административные шаблоны» -> «Система ALT» -> «Групповые политики» пункт «Экспериментальные групповые политики» и установив в открывшемся окне отметку в поле «Включено»:
На машине Windows
Сценарии для входа/выхода пользователя
Для того чтобы назначить сценарий для входа или выхода пользователя (User Logon/Logoff script), необходимо выполнить следующие действия:
Шаг 1. Для удобства можно скопировать нужные сценарии в папку User\Scripts\Logon (например, \\test.alt\sysvol\test.alt\Policies\{20DDB816-421B-4861-8AC5-007E56CB67D0}\User\Scripts\Logon) или User\Scripts\Logoff соответствующей политики.
Шаг 2. На машине с установленным RSAT открыть консоль «Управление групповыми политиками» (gpmc.msc).
Шаг 3. Создать новый объект групповой политики (GPO) и связать его с OU, в который входят учетные записи пользователей.
Шаг 4. В контекстном меню GPO выбрать пункт «Изменить»:
Шаг 5. Откроется редактор GPO. Перейти в «Конфигурация пользователя» -> «Политики» -> «Конфигурация Windows» -> «Сценарий (вход/выход из системы)». Дважды щелкнуть левой кнопкой мыши на политике «Вход в систему» («Logon») или «Выход из системы» («Logoff»):
Шаг 6. В диалоговом окне свойств политики нажать кнопку «Добавить»:
Шаг 7. В диалоговом окне «Добавление сценария» в поле «Имя сценария» ввести путь к сценарию (можно нажать кнопку «Обзор», чтобы найти файл сценария в общей папке на контроллере домена), а в поле «Параметры сценария» ввести необходимые параметры аналогично вводу этих параметров в командной строке.
Пример добавления сценария для ОС ALT:
Пример добавления сценария для ОС Windows (можно указать локальный скрипт на компьютере клиента):
При назначении нескольких сценариев они будут применяться в заданном порядке. Чтобы переместить сценарий в списке вверх/вниз, следует выбрать его в списке и нажать кнопку «Вверх»/«Вниз». Для того чтобы изменить сценарий, необходимо нажать кнопку «Изменить». Кнопка «Удалить» предназначена для удаления сценария из списка.
На вкладке «Сценарии PowerShell» можно добавить сценарии с расширением *.ps1.
Сценарии для автозагрузки или завершения работы компьютера
Для того чтобы назначить сценарий для автозагрузки или завершения работы, необходимо выполнить следующие действия:
Шаг 1. Для удобства можно скопировать нужные сценарии в папку Machine\Scripts\Startup (например, \\test.alt\sysvol\test.alt\Policies\{20DDB816-421B-4861-8AC5-007E56CB67D0}\Machine\Scripts\Startup) или Machine\Scripts\Shutdown соответствующей политики.
Шаг 2. На машине с установленным RSAT открыть консоль «Управление групповыми политиками» (gpmc.msc).
Шаг 3. Создать новый объект групповой политики (GPO) и связать его с OU, в который входят машины.
Шаг 4. В контекстном меню GPO выбрать пункт «Изменить»:
Шаг 5. Откроется редактор GPO. Перейти в «Конфигурация компьютера» -> «Политики» -> «Конфигурация Windows» -> «Сценарий (запуск/завершение)». Дважды щелкнуть левой кнопкой мыши на политике «Автозагрузка» («Startup») или «Завершение работы» («Shutdown»):
Шаг 6. В диалоговом окне свойств политики нажать кнопку «Добавить»:
Шаг 7. В диалоговом окне «Добавление сценария» в поле «Имя сценария» ввести путь к сценарию (можно нажать кнопку «Обзор» для поиска файла сценария в общей папке контроллера домена), а в поле «Параметры сценария» ввести необходимые параметры аналогично вводу этих параметров в командной строке.
Пример добавления сценария для ОС ALT:
Пример добавления сценария для ОС Windows (можно указать локальных скрипт на компьютере клиента):
При назначении нескольких сценариев они будут применяться в заданном порядке. Чтобы переместить сценарий в списке вверх/вниз, следует выбрать его в списке и нажать кнопку «Вверх»/«Вниз». Для того чтобы изменить сценарий, необходимо нажать кнопку «Изменить». Кнопка «Удалить» предназначена для удаления сценария из списка.
На вкладке «Сценарии PowerShell» можно добавить сценарии с расширением *.ps1.
Включение «Экспериментальных групповых политик»
Так как политики управления logon-скриптами относятся к экспериментальным, на машинах Альт где они применяются, должны быть включены «Экспериментальные групповые политики».
Включить «Экспериментальные групповые политики» можно, выбрав в разделе «Конфигурация компьютера» -> «Политики» -> «Административные шаблоны» -> «Система ALT» -> «Групповые политики» пункт «Экспериментальные групповые политики»:
Дважды щелкнуть на политике «Экспериментальные групповые политики», в открывшемся окне установить отметку в поле «Включить»:
Файлы настроек политики
Настройки политики для сценариев входа и выхода пользователя хранятся в каталоге {GUID GPT}\User\Scripts\scripts.ini. Файлы сценариев (за исключением локальных) хранятся в каталогах: {GUID GPT}\User\Scripts\Logon и {GUID GPT}\User\Scripts\Logoff. В файле scripts.ini перечисляются все программы, выполняемые в сценариях входа и выхода пользователя из системы. Сценарии входа начинаются с преамбулы [Logon], сценарии выхода начинаются с преамбулы [Logoff].
Пример файла scripts.ini:
[Logon]
0CmdLine=date.sh
0Parameters=test
1CmdLine=test.sh
1Parameters=new
[Logoff]
0CmdLine=touch.sh
0Parameters=
1CmdLine=Logoff.bat
1Parameters=1.txt
2CmdLine=C:\share\Logon.bat
2Parameters=
Настройки политики для сценариев запуска и завершения работы компьютера хранятся в каталоге {GUID GPT}\Machine\Scripts\scripts.ini. Файлы сценариев (за исключением локальных) хранятся в каталогах: {GUID GPT}\Machine\Scripts\Shutdown и {GUID GPT}\Machine\Scripts\Startup. В файле scripts.ini перечисляются все скрипты, выполняемые в сценариях запуска и завершения работы компьютера. Сценарии запуска компьютера начинаются с преамбулы [Startup], сценарии завершения работы начинаются с преамбулы [Shutdown].
Пример файла scripts.ini:
[Startup]
0CmdLine=hello.bat
0Parameters=
1CmdLine=notescript.vbs
1Parameters=
2CmdLine=notescript2.vbs
2Parameters=
3CmdLine=touch.bat
3Parameters=
[Shutdown]
0CmdLine=touch.bat
0Parameters=
Файл scripts.ini закодирован в формате UTF-16LE (little-endian).
Права и разрешения
- По умолчанию разрешение на изменение параметров для редактирования GPO имеют члены групп безопасности «Администраторы домена», «Администраторы предприятия», «Владельцы-создатели групповой политики»;
- Сценарии запуска (Startup) и завершения работы выполняются под учетной записью локальной системы, и они имеют полные права, связанные с возможностью запуска под учетной записью локальной системы;
- Сценарии входа (Logon scripts) и выхода (Logoff scripts) запускаются от имени пользователя, а не администратора, и их права соответственно ограничены;
- В Windows Vista сценарии запуска по умолчанию выполняются асинхронно. Это поведение отличается от более ранних операционных систем;
- Настройка синхронного запуска сценариев запуска может привести к замедлению процесса загрузки;
- В Windows Vista сценарии запуска, выполняемые асинхронно, не будут видны. Включение параметра групповой политики Run Startup Scripts Visible не повлияет на асинхронный запуск сценариев запуска.
Диагностика проблем при работе с политикой скриптов
На контроллере домена
- Проверить работоспособность загружаемого скрипта в дистрибутиве ALT;
- Убедиться, что кодировка файла со скриптом — UTF8;
- Убедиться, что скрипт расположен в каталоге (GPT) применяемого объекта групповой политики (GPO);
- Включить групповую политику «Экспериментальные групповые политики» или групповую политику «Управление logon-скриптами»;
- Убедиться, что целевой компьютер входит в подразделение (OU), к которому привязан объект групповой политики GPO.
На компьютере пользователя
- Проверить версию gpupdate. Политики скриптов выполняются с релиза 0.9.11-alt1.
- Убедиться, что механизм применения политик (gpupdate) запущен:
# gpupdate-setup status
- Убедиться, что служба скриптов запущена:
# systemctl status gpupdate-scripts-run.service
- Проверить содержимое каталога и права для загруженных скриптов:
# ls -Rl /var/cache/gpupdate_scripts_cache/
- Проверить состояние службы запуска скриптов пользователя через вывод команды (от пользователя):
$ systemctl --user status gpupdate-scripts-run-user.service
- Вывести журнал применения политик:
# gpoa --loglevel 0