Como posso adicionar um usuário comum ao arquivo sudoers?

35

Como posso adicionar mais usuários ao arquivo "sudoers"?

D'Arvit
fonte

Respostas:

35

Apenas edite o arquivo /etc/sudoers.

Mas você deve usar /usr/sbin/visudocomo seu editor, pois isso fará algumas verificações de sanidade antes de sair.

Então isso seria:

sudo /usr/sbin/visudo

Aqui estão alguns links que podem ser úteis:

Johan
fonte
Então, como faço para salvar o arquivo
D'Arvit
1
Não importa, percebi que aconteceu na saída.
D'Arvit
+1. Em alguns sistemas, o / etc / sudoers é somente leitura e a edição é forçada através do comando visudo.
Laurent Etiemble
1
Se você tiver um /etc/sudoers.ddiretório, não modifique o /etc/sudoersarquivo. Em vez disso, coloque a entrada em seu próprio arquivo nesse diretório.
David Schwartz
18

Meu método preferido é adicioná-los ao sudogrupo ( adminantes do Ubuntu 10.04).

No Ubuntu Linux, o sudogrupo pode executar sudoe é fácil adicionar alguém a esse grupo:

usermod -a -G sudo username

Sua milhagem pode variar com outras distros; no entanto, alguém achou que o método de grupo fazia mais sentido do que o arquivo sudoers sendo atualizado. Menos espaço para errar e impedir que todos sejam superusuário parece ser o motivo.

ʍǝɥʇɐɯ
fonte
1
grupo de administração não existe desde pelo menos o Ubuntu 10.04
Artem Pakk 29/11
13

Apenas edite seu arquivo sudoers

sudo visudo -f /etc/sudoers

e adicione o nome de usuário como 'uk' sem aspas

username ALL = (ALL)ALL

Salvar e sair daria o acesso.

ukanth
fonte
6
Como Johan diz, o visudo deve ser usado para editar o arquivo sudoers. Um arquivo sudo com borked pode levar a um mundo de dor evitável. pt.wikipedia.org/wiki/Visudo
nagul 11/09/09
3
Por que você adicionou aspas ao seu exemplo, então?
grawity
2

visudo abre o arquivo sudoers e possui exemplos para situações simples.

Pode ser necessário adicionar a opção 'NOPASSWD' se os scripts do usuário usassem comandos / binários que podem ser executados apenas com "sudo", por exemplo

ALL=(ALL) NOPASSWD: ALL

Também é possível especificar o grupo em vez do nome do usuário. Portanto, você não precisa listar todos e cada usuário, por exemplo

%users  localhost=/sbin/shutdown -h now
secureBadshah
fonte
1
Cuidado que o NOPASSWD pode ser um risco à segurança.
Johan
0

Adicione ao grupo sudo (etapa específica do Debian / Ubuntu):

    $ sudo gpasswd -a <username> sudo

    Adding user <username> to group sudo
Shashi
fonte
0

No Amazon Linux, existe /etc/sudoers.de dentro dele está o cloud-initque contém:

ec2-user ALL = NOPASSWD: ALL

# User rules for ec2-user
ec2-user ALL=(ALL) NOPASSWD:ALL

Então, tudo o que fiz foi cp cloud-init vladeditar vlade substituir todas as instâncias de ec2-userpor vlad. Funciona bem, e obviamente é como deveria ser feito, em vez de editar arquivos existentes.

Vladimir Kornea
fonte
0

apenas executando este comando por um usuário que tenha uma permissão sudoer:

sudo adduser <username> sudo
Hadi Rahjoo
fonte