Механизмы применения групповых политик в решениях на базе дистрибутивов ALT (Евгений Синельников, OSSDEVCONF-2019)

Материал из 0x1.tv

Докладчик
Евгений Синельников.jpg
Евгений Синельников

Реализация групповых политик требует оформления набора правил и настроек как в виде декларативного описания, так и в виде набора инструментов их интерпретации и применения. Современные популярные средства управления конфигурациями под Linux обладают всеми возможностями для реализации механизмов применения настроек, но ограничены в интеграции инфраструктурой, а также не включают в себя инструментарий управления пользовательскими конфигурациями. Данный доклад посвящён реализации управления пользовательскими конфигурациями с помощью групповых политик Active Directory в решениях на базе дистрибутивов ALT и Sisyphus.

Видео

Презентация

Механизмы применения групповых политик в решениях на базе дистрибутивов ALT (Евгений Синельников, OSSDEVCONF-2019).pdf Механизмы применения групповых политик в решениях на базе дистрибутивов ALT (Евгений Синельников, OSSDEVCONF-2019).pdf Механизмы применения групповых политик в решениях на базе дистрибутивов ALT (Евгений Синельников, OSSDEVCONF-2019).pdf Механизмы применения групповых политик в решениях на базе дистрибутивов ALT (Евгений Синельников, OSSDEVCONF-2019).pdf Механизмы применения групповых политик в решениях на базе дистрибутивов ALT (Евгений Синельников, OSSDEVCONF-2019).pdf Механизмы применения групповых политик в решениях на базе дистрибутивов ALT (Евгений Синельников, OSSDEVCONF-2019).pdf Механизмы применения групповых политик в решениях на базе дистрибутивов ALT (Евгений Синельников, OSSDEVCONF-2019).pdf Механизмы применения групповых политик в решениях на базе дистрибутивов ALT (Евгений Синельников, OSSDEVCONF-2019).pdf Механизмы применения групповых политик в решениях на базе дистрибутивов ALT (Евгений Синельников, OSSDEVCONF-2019).pdf Механизмы применения групповых политик в решениях на базе дистрибутивов ALT (Евгений Синельников, OSSDEVCONF-2019).pdf Механизмы применения групповых политик в решениях на базе дистрибутивов ALT (Евгений Синельников, OSSDEVCONF-2019).pdf Механизмы применения групповых политик в решениях на базе дистрибутивов ALT (Евгений Синельников, OSSDEVCONF-2019).pdf Механизмы применения групповых политик в решениях на базе дистрибутивов ALT (Евгений Синельников, OSSDEVCONF-2019).pdf

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).


Механизмы применения групповых политик в решениях на базе дистрибутивов ALT (Евгений Синельников, OSSDEVCONF-2019)!.jpg

Примечания и ссылки

  1. Eric S. Raymond, The Art of Unix Programming, 2003
  2. ALT Linux Team, Групповые политики в решениях ALT, 2019, https://www.altlinux.org/Групповые_политики