Como você cria um usuário sem senha?

Como você cria um usuário sem senha?

No OS X é possível ter usuários sem senhas. Se você inspecioná-los com dscla senha, eles aparecerão como *. Isso é usado para usuários do sistema, como usuários de bancos de dados como mysql, pgsqletc. O interessante disso é que esses usuários não aparecem na tela de login e você não pode fazer login como eles sem sudoetc.

Depois de excluir esse usuário e tentar algumas coisas, quis recriá-lo, mas não consegui. Consegui obter um usuário com uma senha em branco e definir a senha como *. Mas nenhum teve o mesmo efeito acima, pois o usuário apareceu na minha tela de login.

Como você cria esse usuário?

Responder1

Você pode executar passwd --delete <username>depois de criar o usuário com adduser. Depois disso, você poderá fazer o login sem inserir uma senha.

Responder2

Você pode usar usermod, o que desativará a senha usando um !em vez de um *.

usermod -L <username>

Na página de manual do usermod:

-L, --lock Lock a user's password. This puts a '!' in front of the encrypted password, effectively disabling the password.

Responder3

Um usuário em /etc/passwd com diretório inicial de /dev/null e shell de /sbin/nologin, pode ser usado para comandos sudo ing, mas não pode realmente estar logado, por exemplo;

do meu /etc/passwd

tcpdump:x:104:441:added by portage for tcpdump:/dev/null:/sbin/nologin

Quase me lembro que isso também fará com que ele desapareça da tela de login do XDM, mas não uso mais o XDM, então é um palpite :-)

Responder4

Não posso ter certeza sobre o OSX, mas no FreeBSD você pode usar:

pw add user mymuser -g mygroup -s /nonexistent -h -

o valor -passado para a -hopção informa pwpara definir o campo de senha em master.passwd como *, criando assim uma conta sem login. Definir o shell não é estritamente necessário, mas evita uma verificação do shell em /etc/pw.conf.

informação relacionada