sudo
é um dos comandos mais comumente usados em sistemas Linux. Ele permite que um usuário execute um programa específico como outro usuário, que, por padrão, é o superusuário.
É usado principalmente para fins administrativos; fornecendo acesso de administrador limitado a usuários não administrativos em um PC Linux.
Por exemplo, por padrão, um usuário não tem permissão para instalar pacotes em um sistema Ubuntu. No entanto, o usuário pode fazer isso com o sudo
comando.
O usuário não root sem sudo não pode instalar um programa . Veja um exemplo de tentativa falhada abaixo:
apt-get install aptitude
E: Could not open lock file /var/lib/dpkg/lock-frontend - open (13: Permission denied)
E: Unable to acquire the dpkg frontend lock (/var/lib/dpkg/lock-frontend), are you root?
Um usuário não root com sudo pode instalar programas no sistema sem problemas.
sudo apt-get install aptitude
Reading package lists... Done
Building dependency tree
....
Adicionar usuário existente como usuário Sudo
Se um usuário não fizer parte do sudo
grupo de usuários, não poderá usar o sudo
comando. Ele vai lançar abaixo da saída:
testuser is not in the sudoers file. This incident will be reported.
Para adicionar um usuário à lista de sudoers, use o usermod
comando para adicionar um usuário existente ao sudo
grupo no sistema. Abaixo está um exemplo de comando.
sudo usermod -aG sudo testuser
Aqui, a -a
opção significa 'anexar'. Isso garante que a associação de grupos existentes do usuário não seja afetada. -G
serve para especificar a qual grupo adicionar o usuário.
Depois que um usuário é adicionado ao grupo sudo, a seguinte mensagem é exibida no terminal na próxima vez que esse usuário fizer login no sistema.
To run a command as administrator (user "root"), use "sudo".
See "man sudo_root" for details.
Crie um novo usuário com privilégios Sudo
adduser
é o comando do Linux usado para criar um novo usuário. Ele pode ser usado com o
sinalizador --ingroup
para adicionar o usuário ao grupo sudo durante a criação.
sudo adduser testuser --ingroup=sudo
Restringir quais comandos devem ser permitidos com sudo
O arquivo /etc/sudoers
contém opções de configuração para o sudo
comando. Este arquivo é protegido contra gravação diretamente, mesmo para root. A única maneira de editar este arquivo é usando o visudo
comando.
sudo visudo
O comando acima irá abrir o arquivo usando o editor de linha de comando nano. Role e encontre as linhas abaixo no arquivo.
# Allow members of group sudo to execute any command
%sudo ALL=(ALL:ALL) ALL
O último ALL
na linha pode ser substituído pelo único comando ou conjunto de comandos que devem ser permitidos com sudo.
# Allow members of group sudo to execute any command
%sudo ALL=(ALL:ALL) /bin/mv, /usr/sbin/visudo
Observação importante: as alterações sugeridas no arquivo sudoers acima restringirão os usuários do sudo para que apenas executem comandos mv
e visudo
. Isso é apenas para fins explicativos, você não precisa forçar essas restrições para usuários sudo em seu sistema.
Se você fez qualquer alteração no arquivo sudoers usando as instruções compartilhadas acima, certifique-se de salvar o arquivo usando Ctrl + O
para que as alterações sejam aplicadas. Você pode então sair do nano usando Ctrl + X
.
Para que as mudanças ocorram, você deve fazer o login / logout, reiniciar o sistema ou abrir uma nova janela de terminal.
🍻 Cheers!