Systemd разместил новый компонент для управления домашними каталогами

Размещение в системе

Леннарт Поеттеринг представил на конференции All Systems Go 2019 новый компонент системного менеджера systemd, "Размещение в системе" который предназначен для обеспечения переносимости домашних каталогов пользователей и его отделение от конфигурации системы.

Основная идея проекта - создание автономных сред для пользовательских данных. которые можно передавать между разными системами, не беспокоясь о синхронизации идентификаторов и конфиденциальности. Среда домашнего каталога поставляется в виде смонтированного файла образа, данные которого зашифрованы.

Учетные данные пользователя связаны с домашним каталогом, нет конфигурации системы; вместо / etc / passwd и / etc / shadow, используется профиль формата JSON, хранится в каталоге ~ / .identity.

Профиль содержит необходимые параметры чтобы пользователь работал, включая информацию об имени, хэше пароля, ключах шифрования, квоты и предоставленные ресурсы. Профиль может быть аутентифицирован с помощью цифровой подписи, хранящейся во внешнем токене Yubikey.

 Каждый каталог, которым он управляет, инкапсулирует как хранилище данных, так и пользовательскую запись пользователя, так что он всесторонне описывает учетную запись пользователя и поэтому естественно переносится между системами без дополнительных внешних метаданных. 

В объявлении также подчеркивается, что:

Параметры также могут включать дополнительную информацию, например ключи для SSH., данные для биометрической аутентификации, изображение, электронная почта, адрес, часовой пояс, язык, ограничения на количество процессов и памяти, дополнительные флаги монтирования (nodev, noexec, nosuid), данные о соответствующем IMAP-сервере, информация о пользователе / SMTP, информация о включении родительского контроля, параметры резервного копирования и т. Д.

API Varlink предоставляется для запроса и анализа параметров.

UID / GID динамически назначается и обрабатывается в каждой локальной системе, к которой подключен домашний каталог.

Используя предложенную систему, пользователь может сохранить в ней свой домашний каталог.l, например, на флешке и получить рабочее окружение на любом компьютере без явного создания на нем учетной записи (наличие файла с изображением домашнего каталога приводит к синтезу пользователя).

Предлагается использовать подсистему LUKS2 для шифрования данных., но systemd-homed также позволяет использовать другие серверные части, например, для незашифрованных каталогов, сетевых разделов Btrfs, Fscrypt и CIFS.

Для управления переносными каталогами предлагается утилита homectl, позволяющая создавать и активировать образы основных каталогов, а также изменять их размер и устанавливать пароль.

На системном уровне работу обеспечивают следующие компоненты:

  • systemd-homed.service: управляет домашним каталогом и встраивает записи JSON непосредственно в изображения домашнего каталога.
  • pam_systemd: обрабатывает параметры профиля JSON, когда пользователь входит в систему, и применяет их в контексте инициированного сеанса (выполняет аутентификацию, устанавливает переменные среды и т. д.).
  • systemd-logind.service: обрабатывает параметры профиля JSON при входе пользователя в систему, применяет различные настройки управления ресурсами и устанавливает ограничения.
  • nss-systemd: Модуль NSS для glibc синтезирует классические записи NSS на основе профиля JSON, обеспечивая поддержку UNIX API для обработки пользователя (/ etc / password).
  • PID 1: динамически создает пользователей (синтезирует по аналогии с директивой DynamicUser в единицах измерения) и делает их видимыми для остальной системы.
  • systemd-userdbd.service: переводит учетные записи UNIX / glibc NSS в записи JSON и предоставляет унифицированный API Varlink для запросов и перечисления записей.

К достоинствам предлагаемой системы можно отнести возможность управления пользователями путем монтирования каталога / etc в режиме только для чтения, отсутствие необходимости синхронизировать идентификаторы (UID / GID) между системами, независимость пользователя от конкретного компьютера, блокировку данных пользователя в спящем режиме с использованием шифрования и современных методов аутентификации.

Наконец, важно отметить, что планируется включить этот новый компонент "Размещение в системе" в основной версии systemd 244 или 245.

Если вы хотите узнать больше об этом компоненте, вы можете обратиться к следующему PDF-документу.

Ссылка такая.


Содержание статьи соответствует нашим принципам редакционная этика. Чтобы сообщить об ошибке, нажмите здесь.

3 комментариев, оставьте свой

Оставьте свой комментарий

Ваш электронный адрес не будет опубликован. Обязательные для заполнения поля помечены *

*

*

  1. Ответственный за данные: Мигель Анхель Гатон
  2. Назначение данных: контроль спама, управление комментариями.
  3. Легитимация: ваше согласие
  4. Передача данных: данные не будут переданы третьим лицам, кроме как по закону.
  5. Хранение данных: база данных, размещенная в Occentus Networks (ЕС)
  6. Права: в любое время вы можете ограничить, восстановить и удалить свою информацию.

  1.   один из некоторых сказал

    Я этого боюсь.

    Да ладно, если вы потеряете или украдете упомянутую флешку с объемом хранимых на ней данных, вы можете почти сдаться.

    По разным причинам эта идея мне кажется совершенно абсурдной. Какая у него привычка хотеть изменить вещи, которые, по моему скромному мнению, идут хорошо, и я очень сомневаюсь, что изучение истории этих людей улучшит безопасность.

    К счастью, сейчас я использую Artix и избавляюсь от всей этой чепухи, хотя я не знаю, как долго бесплатные дистрибутивы systemd смогут устоять.

    1.    Дэвид наранхо сказал

      Я согласен с тем, что вы говорите, с моей точки зрения, идея хороша, но отсутствует часть безопасности (какой-то тип шифрования)

  2.   Люкс сказал

    systemd отстой !!