Управление групповыми политиками контроля доступа (PAM)
Назначение групповых политик контроля доступа (PAM) — настройка правил доступа пользователей к клиентским машинам под управлением ОС Linux.
Настройки, применяемые в рамках данных политик, хранятся в двух файлах в подкаталоге соответствующего объекта GPO в SysVol:
-
MACHINE/VGP/VTLA/VAS/HostAccessControl/Allow/manifest.xml (могут быть отредактированы в любом текстовом редакторе);
-
MACHINE/VGP/VTLA/VAS/HostAccessControl/Deny/manifest.xml (могут быть отредактированы в любом текстовом редакторе).
Серверное расширение (SSE) может администрироваться только с помощью группы подкоманд samba-tool gpo manage access.
Клиентское расширение (CSE) создает для каждого правила управления доступом новый файл в /etc/security/access.d.
Чтобы клиентское расширение работало, предварительно должен быть сконфигурирован PAM-модуль pam_access (см. man pam_access).
|
При задании групповой политики клиентское расширение автоматически дополнительно создает запись, запрещающую доступ к хосту для всех остальных пользователей. Модуль pam_access обрабатывает правила управления доступом к хосту, находящиеся в каталоге /etc/security/access.d, в порядке их номеров. Поэтому запись, запрещающая доступ всем остальным пользователям, получает такой номер (например, 9000000001), который бы гарантировал, что она будет обработана последней.
Таким образом, не имеет смысла задавать одновременно разрешающие и запрещающие правила. Применение к клиентской машине любого разрешающего правила автоматически подразумевает запрет доступа для всех остальных пользователей. Если в рамках политики задаются только запрещающие правила, то подразумевается, что всем остальным пользователям доступ разрешен (поведение по умолчанию до момента задания дополнительных правил).
Добавление групповой политики контроля доступа (PAM)
Для задания настроек управления доступом с помощью групповой политики используется следующий формат вызова:
samba-tool gpo manage access add <gpo> <allow/deny> <CN> <domain> [options]
В качестве значения gpo ожидается GUID требуемого объекта групповой политики. Для получения GUID может использоваться подкоманда samba-tool gpo listall.
Также передаются следующие аргументы:
-
allow/deny— разрешить или запретить доступ; -
общее имя (
CN) пользователя или хоста, для которого должно действовать правило; -
домен (
domain).
Параметры
Параметры вызова:
-
-H URL|--URL=URL— URL сервера LDAP; может содержать указание на протокол, имя хоста и номер порта.
Примеры
Пример настройки правила управления доступом для установки на клиентских машинах:
-
Настройте правило для пользователя Administrator:
samba-tool gpo manage access add \ {31B2F340-016D-11D2-945F-00C04FB984F9} \ allow Administrator elles.inno.tech \ -U Administrator -
Настройте правило для пользователя User1:
samba-tool gpo manage access add \ {31B2F340-016D-11D2-945F-00C04FB984F9} \ allow User1 elles.inno.tech \ -U Administrator -
Для проверки доступности политики на клиентской машине с ОС Linux — участнике домена выполните:
sudo /app/inno-samba/sbin/samba-gpupdate --rsop Resultant Set of Policy Computer Policy GPO: Default Domain Policy ================================================================= CSE: vgp_access_ext ----------------------------------------------------------- Policy Type: VGP/Unix Settings/Host Access ----------------------------------------------------------- [ +:Administrator\elles.inno.tech:ALL ] [ +:User1\elles.inno.tech:ALL ] ----------------------------------------------------------- ----------------------------------------------------------- ================================================================= -
Обновите политики на клиентской машине:
sudo /app/inno-samba/sbin/samba-gpupdate --force
-
В результате применения создаются файлы с правилами:
cat /etc/security/access.d/0000000001_gp.conf; echo ### autogenerated by samba # # This file is generated by the vgp_access_ext Group Policy # Client Side Extension. To modify the contents of this file, # modify the appropriate Group Policy objects which apply # to this machine. DO NOT MODIFY THIS FILE DIRECTLY. # +:elles.inno.tech\Administrator:ALL +:elles.inno.tech\User1:ALL
cat /etc/security/access.d/9000000001_gp_DENY_ALL.conf; echo ### autogenerated by samba # # This file is generated by the vgp_access_ext Group Policy # Client Side Extension. To modify the contents of this file, # modify the appropriate Group Policy objects which apply # to this machine. DO NOT MODIFY THIS FILE DIRECTLY. # -:ALL:ALL
Получение информации о групповой политике контроля доступа (PAM)
Для получения информации о настройках групповой политики, обеспечивающей управление доступом к клиентским машинам, в SysVol используется следующий формат вызова:
samba-tool gpo manage access list <gpo> [options]
В качестве значения gpo ожидается GUID требуемого объекта групповой политики. Для получения GUID может использоваться подкоманда samba-tool gpo listall.
Подкоманда выводит записи в стандартном для модуля pam_access формате (см. man pam_access).
Удаление групповой политики контроля доступа (PAM)
Для удаления настроек управления доступом в рамках групповой политики из SysVol используется следующий формат вызова:
samba-tool gpo manage access remove <gpo> <allow/deny> <name> <domain> [options]
В качестве значения gpo ожидается GUID требуемого объекта групповой политики. Для получения GUID может использоваться подкоманда samba-tool gpo listall. Также указывается запись с правилом sudo, которую требуется удалить.
Также передаются следующие аргументы:
-
allow/deny— разрешить или запретить доступ; -
общее имя (
CN) пользователя или хоста, для которого действует правило; -
домен (
domain).