Systemd-homed to nowy komponent do zarządzania katalogami domowymi

systemd-homed

Prezentacja Lennarta Poetteringa na konferencji All Systems Go 2019 nowy komponent systemu manager systemd, „systemd-homed” który ma na celu zapewnienie możliwości przenoszenia katalogów domowych użytkowników i jego oddzielenie od konfiguracji systemu.

Główną ideą projektu jest stworzenie autonomicznych środowisk dla danych użytkownika które można przenosić między różnymi systemami bez obaw o synchronizację identyfikatorów i prywatność. Środowisko katalogu domowego dostarczane jest w postaci zamontowanego pliku obrazu, którego dane są zaszyfrowane.

Poświadczenia użytkownika są powiązane z katalogiem domowym, nie dla ustawień systemowych; zamiast /etc/passwd i /etc/shadow, używany jest profil formatu JSON, przechowywany w katalogu ~/.identity.

Profil zawiera niezbędne parametry aby użytkownik mógł pracować, w tym informacje o nazwie, skrótie hasła, kluczach szyfrujących, opłaty i zapewnione zasoby. Profil może zostać uwierzytelniony podpisem cyfrowym przechowywanym w zewnętrznym tokenie Yubikey.

 Każdy katalog, który obsługuje, obejmuje zarówno magazyn danych użytkownika, jak i rejestr użytkowników, dzięki czemu kompleksowo opisuje konto użytkownika i dlatego jest naturalnie przenośny między systemami bez dalszych zewnętrznych metadanych. 

Reklama podkreśla również, że:

Parametry mogą również zawierać dodatkowe informacje, takie jak klucze do SSH, dane do uwierzytelniania biometrycznego, obraz, e-mail, adres, strefa czasowa, język, limity ilości procesów i pamięci, dodatkowe flagi montowania (nodev, noexec, nosuid), dane dotyczące obowiązującego serwera IMAP informacje o użytkowniku/SMTP, kontrola rodzicielska włączyć informacje, opcje tworzenia kopii zapasowych itp.

Varlink API służy do wysyłania zapytań i analizowania parametrów.

Identyfikator UID/GID jest dynamicznie przypisywany i przetwarzany w każdym systemie lokalnym, do którego jest dołączony katalog domowy.

Korzystając z proponowanego systemu, użytkownik może przechowywać swój katalog domowy za pomocą él, na przykład, na dysku flash i uzyskaj środowisko pracy na dowolnym komputerze bez jawnego tworzenia na nim konta (obecność pliku z obrazem katalogu domowego prowadzi do syntezy użytkownika).

Proponuje się wykorzystanie podsystemu LUKS2 do szyfrowania danych, ale systemd-homed umożliwia również korzystanie z innych backendów, na przykład dla niezaszyfrowanych katalogów, partycji sieciowych Btrfs, Fscrypt i CIFS.

Do zarządzania przenośnymi katalogami proponowane jest narzędzie homectl, które umożliwia tworzenie i aktywowanie obrazów katalogów domowych, a także zmianę ich rozmiaru i ustawienie hasła.

Na poziomie systemu pracę zapewniają następujące komponenty:

  • systemd-homed.service: zarządza katalogiem domowym i osadza rekordy JSON bezpośrednio w obrazach w katalogu domowym.
  • pam_systemd: przetwarza parametry profilu JSON, gdy użytkownik się loguje i stosuje je w kontekście aktywowanej sesji (przeprowadza uwierzytelnianie, ustawia zmienne środowiskowe itp.).
  • systemd-logind.service: przetwarza parametry profilu JSON podczas logowania użytkownika, stosuje różne ustawienia zarządzania zasobami i ustala limity.
  • system nss: Moduł NSS dla glibc syntetyzuje klasyczne wpisy NSS w oparciu o profil JSON, zapewniając obsługę UNIX API dla przetwarzania użytkowników (/etc/password).
  • PID 1: tworzy użytkowników dynamicznie (syntetyzuje analogicznie do dyrektywy DynamicUser w jednostkach) i czyni ich widocznymi dla reszty systemu.
  • systemd-userdbd.service: tłumaczy konta UNIX/glibc NSS na rekordy JSON i zapewnia ujednolicony interfejs API Varlink do wyszukiwania i wyświetlania rekordów.

Do zalet proponowanego systemu należy zaliczyć możliwość zarządzania użytkownikami poprzez montowanie katalogu /etc w trybie tylko do odczytu, brak konieczności synchronizacji identyfikatorów (UID/GID) pomiędzy systemami, niezależność użytkownika od konkretnego komputera, blokadę użytkownika danych w trybie uśpienia, stosowanie szyfrowania oraz nowoczesne metody uwierzytelniania.

Na koniec należy o tym wspomnieć planowane jest włączenie tego nowego komponentu systemd-homed w systemowej wersji głównej 244 lub 245.

Jeśli chcesz dowiedzieć się więcej o tym komponencie, zapoznaj się z poniższym dokumentem PDF.

Link jest taki.


3 komentarzy, zostaw swoje

Zostaw swój komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

*

*

  1. Odpowiedzialny za dane: Miguel Ángel Gatón
  2. Cel danych: kontrola spamu, zarządzanie komentarzami.
  3. Legitymacja: Twoja zgoda
  4. Przekazywanie danych: Dane nie będą przekazywane stronom trzecim, z wyjątkiem obowiązku prawnego.
  5. Przechowywanie danych: baza danych hostowana przez Occentus Networks (UE)
  6. Prawa: w dowolnym momencie możesz ograniczyć, odzyskać i usunąć swoje dane.

  1.   jeden z kilku powiedział

    To mnie przeraża.

    Daj spokój, jeśli zgubisz lub ukradniesz ten dysk flash, o którym wspominasz, wraz z ilością przechowywanych danych, możesz być prawie zirytowany.

    Z kilku powodów pomysł ten wydaje mi się całkowicie absurdalny. Jaki on ma nawyk chęci zmiany rzeczy, które moim skromnym zdaniem idą dobrze i bardzo wątpię, czy poznanie historii tych ludzi poprawi bezpieczeństwo.

    Na szczęście jestem teraz w Artixie i pozbywam się całej tej kolekcji bzdur, chociaż nie wiem, jak długo wolne dystrybucje systemowe będą w stanie się oprzeć.

    1.    David naranjo powiedział

      Zgadzam się z tym, co mówisz, z mojego punktu widzenia pomysł jest dobry, ale brakuje części bezpieczeństwa (jakiegoś rodzaju szyfrowania)

  2.   Luix powiedział

    systemd jest do bani !!