Systemd-homed um novo componente para gerenciamento de diretórios home

systemd-homed

Lennart Poettering apresentou na conferência All Systems Go 2019, um novo componente do gerenciador de sistema systemd, "Systemd-homed" Qual destina-se a garantir a portabilidade dos diretórios pessoais dos usuários e sua separação da configuração do sistema.

A ideia principal do projeto é criar ambientes autônomos para os dados do usuário que podem ser transferidos entre diferentes sistemas sem se preocupar com a sincronização de identificadores e privacidade. O ambiente do diretório inicial é fornecido na forma de um arquivo de imagem montado, cujos dados são criptografados.

As credenciais do usuário estão vinculadas ao diretório inicial, não à configuração do sistema; em vez de / etc / passwd e / etc / shadow, um perfil de formato JSON é usado, armazenado no diretório ~ / .identity.

O perfil contém os parâmetros necessários para o usuário trabalhar, incluindo informações sobre nome, hash de senha, chaves de criptografia, cotas e recursos fornecidos. O perfil pode ser autenticado usando uma assinatura digital armazenada em um token Yubikey externo.

 Cada diretório que ele gerencia encapsula o armazenamento de dados e o registro do usuário do usuário, de modo que descreva de forma abrangente a conta do usuário e, portanto, seja naturalmente portátil entre sistemas sem outros metadados externos. 

O anúncio também destaca que:

Os parâmetros também podem incluir informações adicionais, como chaves para SSH, dados para autenticação biométrica, imagem, e-mail, endereço, fuso horário, idioma, limites no número de processos e memória, sinalizadores de montagem adicionais (nodev, noexec, nosuid), dados sobre as informações de usuário do servidor IMAP aplicáveis ​​/ SMTP, informações de habilitação de controle dos pais, opções de backup, etc.

Varlink API é fornecido para consultar e analisar parâmetros.

O UID / GID é atribuído dinamicamente e processado em cada sistema local ao qual o diretório inicial está conectado.

Usando o sistema proposto, o usuário pode manter seu diretório pessoal com ele.l, por exemplo, em uma unidade Flash e obtenho um ambiente de trabalho em qualquer computador sem criar explicitamente uma conta nele (a presença de um arquivo com uma imagem do diretório inicial leva à síntese do usuário).

É proposto o uso do subsistema LUKS2 para criptografia de dados, mas o systemd-homed também permite que você use outros back-ends, por exemplo, para diretórios não criptografados, Btrfs, Fscrypt e partições de rede CIFS.

Para gerenciar diretórios portáteis, é proposto o utilitário homectl, que permite criar e ativar imagens de diretórios principais, bem como alterar seu tamanho e definir uma senha.

No nível do sistema, o trabalho é fornecido pelos seguintes componentes:

  • systemd-homed.service: gerencia o diretório inicial e incorpora registros JSON diretamente nas imagens do diretório inicial.
  • pam_systemd: processa os parâmetros de perfil JSON quando um usuário efetua login e os aplica no contexto de uma sessão acionada (realiza autenticação, define variáveis ​​de ambiente, etc.).
  • systemd-logind.service: processa os parâmetros de um perfil JSON quando um usuário efetua login, aplica várias configurações de gerenciamento de recursos e define limites.
  • nss-systemd: O módulo NSS para glibc sintetiza as entradas NSS clássicas com base no perfil JSON, fornecendo suporte à API UNIX para processamento de usuário (/ etc / senha).
  • PID1: cria usuários dinamicamente (sintetiza por analogia com a diretiva DynamicUser em unidades) e os torna visíveis para o resto do sistema.
  • systemd-userdbd.service: traduz contas UNIX / glibc NSS em registros JSON e fornece uma API Varlink unificada para consultar e listar registros.

As vantagens do sistema proposto incluem a capacidade de gerenciar usuários montando o diretório / etc em modo somente leitura, a ausência da necessidade de sincronizar identificadores (UID / GID) entre os sistemas, a independência do usuário de um computador específico, travamento dados do usuário durante o modo de espera, usando criptografia e métodos de autenticação modernos.

Finalmente, é importante mencionar que está planejado incluir este novo componente "Systemd-homed" na versão principal do systemd 244 ou 245.

Se você quiser saber mais sobre este componente, pode consultar o seguinte documento pdf.

O link é este.


Deixe um comentário

Seu endereço de email não será publicado. Campos obrigatórios são marcados com *

*

*

  1. Responsável pelos dados: Miguel Ángel Gatón
  2. Finalidade dos dados: Controle de SPAM, gerenciamento de comentários.
  3. Legitimação: Seu consentimento
  4. Comunicação de dados: Os dados não serão comunicados a terceiros, exceto por obrigação legal.
  5. Armazenamento de dados: banco de dados hospedado pela Occentus Networks (UE)
  6. Direitos: A qualquer momento você pode limitar, recuperar e excluir suas informações.

  1.   um de alguns dito

    Eu tenho medo disso

    Vamos lá, se você perder ou roubar aquele pen drive que você mencionou com a quantidade de dados que ele armazena, você quase pode se entregar de tanto aborrecimento.

    Por várias razões, a ideia parece totalmente absurda para mim. Que hábito ele tem de querer mudar coisas que na minha humilde opinião estão indo bem e duvido que ver a história dessas pessoas melhore a segurança.

    Felizmente, estou no Artix agora e estou me livrando de toda essa coleção de bobagens, embora não saiba por quanto tempo as distros free systemd serão capazes de resistir.

    1.    David Orange dito

      Concordo com o que você fala, do meu ponto de vista a ideia é boa, mas falta a parte da segurança (algum tipo de criptografia)

  2.   luix dito

    systemd é uma merda !!