Механизмы применения групповых политик в решениях на базе дистрибутивов ALT (Евгений Синельников, OSSDEVCONF-2019)
Материал из 0x1.tv
- Докладчик
- Евгений Синельников
Реализация групповых политик требует оформления набора правил и настроек как в виде декларативного описания, так и в виде набора инструментов их интерпретации и применения. Современные популярные средства управления конфигурациями под Linux обладают всеми возможностями для реализации механизмов применения настроек, но ограничены в интеграции инфраструктурой, а также не включают в себя инструментарий управления пользовательскими конфигурациями. Данный доклад посвящён реализации управления пользовательскими конфигурациями с помощью групповых политик Active Directory в решениях на базе дистрибутивов ALT и Sisyphus.
Содержание
Видео
Презентация
Thesis
Современные средства управления конфигурациями ориентированы на управление состоянием компьютеров (удалённо управляемых узлов в сети), в то время как групповые политики в Active Directory ориентированы не только на динамическое управление состоянием рабочих станций и серверов, но и на применение состояния настроек пользователей, определяемых динамически в момент входа в систему. Такие конфигурации, представленные в виде декларативного набора обширного количества настроек, называются политиками.
Разделение политик и механизмов является одним из ключевых правил философии Unix[1]. В случае же с определением динамических настроек операционной системы и пользовательских настроек, под политиками подразумеваются варианты использования механизмов самой операционной системы, а не подход к их реализации, как готового решения, на основе одних и тех же механизмов ядра. В этом случае сама операционная система рассматривается уже не как итоговое решение, а как шаблон для реализации такого решения на основе заложенных в операционную систему возможностей.
В этом плане реализация групповых политик в Linux-решениях[2] требует существенной доработки механизмов, предоставляющих возможность декларативной настройки политик Active Directory. Прежде всего на уровне встроенных механизмов их применения (исполняемых модулей, применяющих те или иные настройки), а также на уровне интеграции инструментов их применения в работу операционной системы.
Для применения декларативных пользовательских настроек в дистрибутивах ALT разработаны следующие механизмы для применения групповых политик:
- утилита
gpupdate
(находится в стадии разработки), заполняющий кеш GPO в каталоге/var/cache/samba/gpo_cache
, для заданного пользователя, выгружать объединённый набор значений политик пользователя в кеш ключ/значение, запускать модульgpoa
(«GPO Applier») для применения известных политик. - модуль
oddjob_gpupdate
, позволяющий фиксировать вход в систему и выполнять утилитуgpupdate
от имени администратора во время логина (предполагается, чтоgpupdate
получает имя пользователя и номер его сессии из/proc/self/sessionid
для отправки сигналов в программу «гриитер» черезdbus
); - утилита
hreg
преобразующая pol-файлы (разборclient side extension
пока не осуществлён) в дерево файлов в формате ключ/значение, который может применить модульgpoa
; - в случае отсутствия доступа к сети ранее сформированное дерево файлов в формате ключ/значения применяется из кеша.
Кроме инструментария применения групповых политик, требуется исходный, управляемый вручную, локальный набор политик. Такой набор политик, относительно которого применяются и откатываются все остальные групповые политики. Локальный набор политик в решениях ALT также оформляется в виде дерева файлов в формате ключ/значения и подготавливается в виде отдельных пакетов под каждый вариант дистрибутива.
Использование утилиты gpupdate для применения декларативных настроек текущей машины осуществляется также, как и для пользовательских настроек, только по другим событиям — при загрузке операционный системы, а также явным запросом.
Полная интеграция механизмов применения политик на текущий момент требует:
- автоматизации встраивания модуля
pam_oddjob_gpupdate
в стек PAM-модулей, а именно в последний шаг настройки сессии вcommon-login
после модулейpam_loginuid.so
и
pam_systemd.so
;
- согласования локальных политик безопасности, настроек пакетов, по умолчанию, и ожидаемых политик в дистрибутивах;
- дополнения базовых настроек, доступных в виде применяемых политик после подключения машины к домену (например, подключение доступа по ssh через
GSSAPI
по умолчанию); - отладки механизмов применения политик (модуля
gpoa
).
Примечания и ссылки
- ↑ Eric S. Raymond, The Art of Unix Programming, 2003
- ↑ ALT Linux Team, Групповые политики в решениях ALT, 2019, https://www.altlinux.org/Групповые_политики
Plays:99 Comments:2