Como criar um usuário sem privilégios no CentOS?

10

Eu quero criar um usuário sem privilégios para executar o servidor RhodeCode e o daemon do Celery em uma instância do CentOS. Eu acho que a definição aceita deste não é um diretório home, login desativado e nenhum acesso shell? Olhando por cima da página man do adduser eu simplesmente não vejo um método intuitivo para fazer isso. Qualquer sugestão é apreciada. Obrigado.

    
por Lester Peabody 07.10.2011 / 20:01

3 respostas

9

De aqui (centos.org)

useradd (que é o binário real que é executado quando você chama adduser, ele apenas se comporta de maneira diferente. Consulte aqui sobre isso.) tem um sinalizador -r que é documentado da seguinte forma:

-r   Create a system account with a UID less than 500 and without a home directory

Que soa como o que você quer fazer.

    
por 07.10.2011 / 20:19
14

Acho que devo vincular aqui duas respostas de serverfault :

Basicamente -r significa "definir conta como um sistema" - "sem expiração", etc - e a magia completa pode parecer

useradd -s /bin/false -r <username>

ou

useradd -s /usr/sbin/nologin -r -M -d /dev/null <username>

ou similar)

NB. Para coisas como o samba, pode-se também querer fornecer uma senha ao usuário e também adicionar /usr/sbin/nologin a /etc/shells :

# 'which nologin' >> /etc/shells

NB (2): de acordo com o comentário da OrangeDog: -r na verdade implica -M , então -M não é estritamente necessário.

PS. E sim, procurando a mesma coisa em serverfault , askubuntu - e aqui - parece um pouco estranho para mim; Existe uma maneira de executar uma meta-pesquisa em, digamos, todos os sites de stackoverflow?

    
por 24.09.2012 / 10:22
0

Você está procurando a opção -r .

    
por 07.10.2011 / 20:11