Preciso adicionar novos usuários que devem ser usados apenas por meio de SSH. Ao adicionar um usuário, eles são adicionados ao arquivo shadow com um ponto de exclamação ( !
) em vez de um asterisco ( *
), então eles são "desabilitados" e o sshd não permite que eles sejam usados.
Existe uma maneira de adicionar um usuário sem uma senha que esteja habilitada por padrão?
Eu tentei usar o comando adduser do busybox e ele os adiciona com uma extensão !
. Da mesma forma, o comando useradd padrão do Gentoo irá adicioná-los com uma extensão !
.
Parece que posso especificar a senha criptografada para adicionar o usuário com
Não estava funcionando anteriormente porque esqueci que o shell tentou expandir o asterisco quando faltavam as aspas simples.
Parece que eu também poderia usar
em um usuário existente para definir a senha como um asterisco também.
Em distribuições baseadas em alpino e outras distribuições baseadas em busybox, onde
adduser
se comporta assim, você pode criar uma conta com uma senha aleatória que não mantém.Faça isso gerando a senha de
/dev/urandom
e transformando-a em texto combase64
, depois ecoando-a duas vezes, canalizando-a para o comando adduser (sem o-D
sinalizador) para que ele insira e confirme a senha durante a criação do usuário.Outra opção seria substituir o
!
por a*
no/etc/shadow
arquivo após a criação do usuário.