Управление групповыми политиками для работы с правилами sudo (sudoers)

Назначение групповых политик sudoers — настройка правил, разрешающих или запрещающих отдельным пользователям и группам пользователей выполнять определенные команды с помощью sudo на клиентских машинах под управлением ОС Linux.

Настройки, применяемые в рамках данных политик, хранятся в двух файлах в подкаталоге соответствующего объекта GPO в SysVol:

Серверное расширение (SSE) распространяется в виде административного шаблона в формате ADMX (см. подраздел «Установка административных шаблонов на контроллере домена»). При этом правила, добавленные с помощью GPME, могут редактироваться с помощью группы samba-tool gpo manage sudoers. Однако правила, созданные с помощью samba-tool gpo manage sudoers, недоступны для редактирования в GPME.

Клиентское расширение (CSE) создает для каждого правила, указанного в настройках политики в SysVol, файл /etc/sudoers.d. Перед установкой каждое правило проверяется с тем, чтобы его применение не привело к неработоспособности системы.

Добавление групповой политики для работы с правилами sudo (sudoers)

Для задания настроек sudo с помощью групповой политики используется следующий формат вызова:

samba-tool gpo manage sudoers add <gpo> <command> <user> <users> [groups] [options]

В качестве значения gpo ожидается GUID требуемого объекта групповой политики. Для получения GUID может использоваться подкоманда samba-tool gpo listall.

Остальные аргументы соответствуют различным элементам синтаксиса sudoers:

  • последнее поле в правиле sudo (command);

  • пользователь, указываемый в правиле sudo в скобках (user);

  • списки пользователей и групп пользователей (через запятую) для формирования первого поля в правиле sudo (users, groups).

Если для выполнения команды требуется аутентификация пользователя, может быть передан параметр --passwd. По умолчанию данный параметр имеет значение False, что соответствует использованию поля NOPASSWD в правиле sudo.

Параметры

Параметры вызова:

  • -H URL|--URL=URL — URL сервера LDAP; может содержать указание на протокол, имя хоста и номер порта;

  • --passwd — признак необходимости аутентификации пользователя для выполнения команды (значение по умолчанию — False, что соответствует использованию поля NOPASSWD в правиле).

Примеры

Пример настройки правила sudo для установки на клиентских машинах:

  1. Настройте правило sudo:

    samba-tool gpo manage sudoers add \
     {31B2F340-016D-11D2-945F-00C04FB984F9} ALL ALL fakeu fakeg -U Administrator
  2. Для проверки доступности политики на клиентской машине с ОС Linux — участнике домена выполните:

    sudo /app/inno-samba/sbin/samba-gpupdate --rsop
    Resultant Set of Policy
    Computer Policy
    
    GPO: Default Domain Policy
    =================================================================
      CSE: vgp_sudoers_ext
      -----------------------------------------------------------
        Policy Type: VGP/Unix Settings/Sudo Rights
        -----------------------------------------------------------
        [ fakeu,fakeg% ALL=(ALL) NOPASSWD: ALL ]
        -----------------------------------------------------------
      -----------------------------------------------------------
    =================================================================
  3. Обновите политики на клиентской машине:

    sudo /app/inno-samba/sbin/samba-gpupdate --force
  4. В результате применения создется файл с правилами:

sudo cat /etc/sudoers.d/gp_qy2eo07y

### autogenerated by samba
#
# This file is generated by the gp_sudoers_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.
#

fakeu,fakeg% ALL=(ALL) NOPASSWD: ALL

Получение информации о групповой политике для работы с правилами sudo (sudoers)

Для получения информации о настройках групповой политики, обеспечивающей установку правила sudo (sudoers) на клиентских машинах, в SysVol используется следующий формат вызова:

samba-tool gpo manage sudoers list <gpo> [options]

В качестве значения gpo ожидается GUID требуемого объекта групповой политики. Для получения GUID может использоваться подкоманда samba-tool gpo listall.

Подкоманда выводит запись о правиле из файла /etc/sudoers.d.

Параметры

Параметры вызова:

  • -H URL|--URL=URL — URL сервера LDAP; может содержать указание на протокол, имя хоста и номер порта.

Примеры

Пример получения настроек, применяемых в рамках групповой политики для установки правила sudo:

samba-tool gpo manage sudoers list \
 {31B2F340-016D-11D2-945F-00C04FB984F9} -U Administrator
fakeu,fakeg% ALL=(ALL) NOPASSWD: ALL

Удаление групповой политики для работы с правилами sudo (sudoers)

Для удаления настроек установки правила sudo (sudoers) в рамках групповой политики из SysVol используется следующий формат вызова:

samba-tool gpo manage symlink remove <gpo> <entry> [options]

В качестве значения gpo ожидается GUID требуемого объекта групповой политики. Для получения GUID может использоваться подкоманда samba-tool gpo listall. Также указывается запись с правилом sudo, которую требуется удалить.

Параметры

Параметры вызова:

  • -H URL|--URL=URL — URL сервера LDAP; может содержать указание на протокол, имя хоста и номер порта.

Примеры

Пример удаления настроек групповой политики для установки правила sudo:

samba-tool gpo manage sudoers remove {31B2F340-016D-11D2-945F-00C04FB984F9} 'fakeu,fakeg% ALL=(ALL) NOPASSWD: ALL'