Данная статья применима к:
- Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.7)
- Astra Linux Special Edition РУСБ.10152-02 (очередное обновление 4.7)
- Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.6)
- Astra Linux Special Edition РУСБ.10015-16 исп. 1 и исп. 2
- Astra Linux Special Edition РУСБ.10265-01 (очередное обновление 8.1)
- Astra Linux Common Edition 2.12
Введение
FreeIPA позволяет настраивать правила разрешения и запрета на использование sudo
для пользователей и групп пользователей. При использовании инициализации сервера или вводе клиента в домен система автоматически конфигурируется так, чтобы sudo
использовал службы sssd
как провайдера данных. Эта конфигурация задается в файле /etc/nsswitch.conf
:
sudoers: files sss
files
— использовать данные из локального файла /etc/sudoers
;sss
— использовать данные, предоставленные службой sssd
.
Служба sssd
, в свою очередь, сконфигурирована таким образом, чтобы получать данные по правилам sudo
от доменной службы каталогов (LDAP). Подробная информация по работе sudo
приведена в справочной системе man sudo
, man sudoers
.
Правила sudo
не могут применяться к встроенной доменной группе хостов ipaserver
, т.к. эта группа не имеет свойства mepmanagedentry
, следовательно, не имеет в objectclass
запись mepOriginEntry
, что необходимо для идентификации группы. Это является особенностью схемы в FreeIPA.
Служба sssd
выполняет кэширование данных с периодом обновления по умолчанию 5400 секунд. Для немедленного применения правил sudo
необходимо очистить кэш, выполнив на клиентской машине следующие команды:
sudo rm /var/lib/sss/db/*
sudo systemctl start sssd
sssctl
, входящей в набор утилит sssd-tools
:
Команды
Добавление команды
Для добавления новой команды:
- Войти в web-интерфейс FreeIPA;
- Перейти на вкладку "Политика" ("Policy");
- Выбрать в выпадающем меню "Sudo" — "Команды Sudo" ("Sudo Commands") и нажать Add;
- В появившемся окне указать полный путь расположения команды, которая должна выполняться от имени sudo (например, текстовый редактор vim.tiny: /usr/bin/vim.tiny) и, при необходимости, описание команды:
Объединение команд в группу
Команды можно объединять в группы. Для этого:
- Перейти в "Политика" ("Policy") — "Sudo" — "Группы команд Sudo" ("Sudo Command Group")
- Нажать "+Добавить" ("Add");
- Ввести имя группы;
- Нажать "Добавить и изменить" ("Add and Edit");
- Добавить объединяемые в группу команды.
Правила
Создание правила
Для создания нового правила:
- Перейти в "Политика" ("Policy") — "Sudo" — "Правила Sudo" ("Sudo Rules"):
Здесь представлен список всех имеющихся правил и отображено состояние этих правил — включено или выключено; - Для добавления нового правила нажать "Добавить" ("Add") и ввести имя правила;
- Нажать "Добавить и изменить" ("Add and Edit").
Настройка правила
При настройке правиля задаются следующие параметры:
- "Основные" ("General Options"):
- "Порядок sudo" - необязательный приоритет правила. Целое число, определяющее очередность выполнения правила. Правила с большим значением выполняются раньше;
- "Описание" - необязательный комментарий к правилу";
"Параметры" ("Options") — параметры для
sudo
. Например, не запрашивать пароль у пользователя при использовании командыsudo
(опция "!authenticate"). Полный список поддерживаемых параметров см. в справочной системе:man sudoers"Кто" ("Who") — пользователи и группы пользователей, которым разрешено применять sudo в соответствии с правилом. Можно разрешить применять всем пользователям (группам);
"Получить доступ к узлу" ("Access this host") — выбор узлов в домене FreeIPA, на которых применяется правило.
- "Выполнить команды" ("Run Commands") — команды, к которым применяется данное правило. Возможно "Разрешить" ("Allow") или "Запретить" ("Deny") выполнение команды или группы команд;
- "В качестве" ("As Whom") — от имени какого пользователя или группы пользователей (не root-пользователя) может быть выполнена команда. При добавлении группы пользователей в "Группы пользователей запуска от имени" ("Groups of RunAs Users") для выполнения команды могут использоваться UID членов этой группы. При добавлении в "Группы запуска от имени" ("RunAs Groups") для выполнения команды могут использоваться GID этой группы.
Удаление или отключение правила
Для удаления или отключения правила:
- Выбрать из списка правило, которое необходимо отключить или удалит;
- Для отключения правила нажать кнопку "Отключить" ("Disable"), для удаления — "Удалить" ("Delete"):