Autenticação, Usuários e Grupos

Usuários e credenciais padrão

Não existem usuários interativos padrão além de root na imagem base.

Na imagem base full padrão, o OpenSSH está em execução; porém, não há credenciais codificadas (senhas ou chaves SSH).

Criando um Novo Usuário

Existem vários mecanismos para usuários, grupos e chaves SSH, dependendo do caminho de instalação escolhido.

Usuários interativos locais da máquina no momento da instalação

Os dois métodos para gerar imagens de disco suportam usuários, grupos e chaves SSH:

Usuários locais da máquina por meio de agentes na nuvem

Ferramentas como cloud-init (que pode ser adicionado como parte de uma compilação derivada), (ou em geral qualquer coisa que invoque useradd em tempo de execução no sistema de destino), esses usuários se tornam um "estado mutável local", com entradas em /etc/passwd e /var/home/$user.

Anaconda

Este fragmento de Kickstart irá injetar uma chave SSH para o usuário root:

rootpw --iscrypted locked
sshkey --username root "<sua chave aqui>"
A necessidade do rootpw é um bug/erro de projeto do Anaconda que será corrigido no futuro. A senha padrão do usuário root já está bloqueada por padrão.

bootc-image-builder

Semelhante à autenticação do Kickstart, o projeto bootc-image-builder para geração de imagens de disco suporta um arquivo config.json. Para mais informações, consulte a documentação do bootc-image-builder.

Exemplo inline:

{
  "blueprint": {
    "customizations": {
      "user": [
        {
          "name": "alice",
          "key": "ssh-rsa AAA ... usuário@email.com",
          "groups": [
            "wheel"
          ]
        }
      ]
    }
  }
}

Usuários do sistema local

O processo systemd-sysusers também é executado a cada inicialização, adicionando usuários mutáveis locais a partir das definições na imagem.

Usuários do sistema embarcado

As imagens base usam nss-altfiles, com alguns usuários alocados estaticamente em /usr/lib/passwd e /usr/lib/group que fazem parte da base imutável. É possível estender isso em compilações derivadas; no entanto, o uso de DynamicUser=yes do systemd ou registros JSON de usuários para usuários é preferível.

Recomendações de usuário/grupo upstream bootc

O projeto osbuild-cfg

O projeto osbuild-cfg tem como objetivo criar uma interface totalmente declarativa para um subconjunto de tarefas de configuração do sistema operacional e inclui suporte para chaves SSH para o usuário root.