Dentro do seu sistema Linux ou macOS, existe um arquivo chamado “sudoers” que controla os níveis mais profundos do seu sistema de permissões. Ele permite ou nega que usuários obtenham acesso de superusuário e contém algumas preferências especiais para sudo.
Qual é o arquivo sudoers?
O arquivo sudoers é um arquivo de texto que reside em “/ etc / sudoers”. Ele controla como sudo
funciona na sua máquina. Você provavelmente está familiarizado com a função primária do sudo de elevar os privilégios de sua conta atual para root, o superusuário em todos os sistemas baseados em Unix. Isso permite que seus usuários executem comandos que, de outra forma, seriam proibidos.
Quando preciso editar o arquivo sudoers?
Quando você instala o Linux (ou macOS) pela primeira vez, o primeiro usuário padrão será adicionado automaticamente ao arquivo sudoers para que possa executar tarefas administrativas com o sudo
comando. No entanto, se você criar uma nova conta de usuário, ela não terá a permissão de superusuário por padrão. Se precisar conceder permissão de superusuário, você precisará editar o arquivo sudoers e adicionar esta conta de usuário a ele.
Como posso editar sudoers?
Nunca edite o arquivo sudoers em um editor de texto normal. Isso pode levar à edição simultânea e arquivos corrompidos, potencialmente negando qualquer acesso de administrador. Sudoers devem ser editados executando visudo
no Terminal, assim:
sudo visudo
Observe que você precisa usar sudo
para correr visudo
. Isso abrirá o arquivo sudoers no editor de texto padrão no Terminal (por padrão, nano).
O que a alteração do arquivo sudoers pode fazer?
A principal tarefa do arquivo sudoers é definir quais usuários podem usar o sudo para quê. Ele também contém algumas preferências simples, que podemos ajustar primeiro para ter uma ideia de como funciona o visudo.
Alterar o tempo limite do sudo
Por padrão, inserir sua senha sudo eleva suas permissões até que você feche o shell ou saia. Isso pode ser inseguro e alguns podem preferir inserir sua senha toda vez que usarem o sudo.
1. Corra sudo visudo
como acima mencionado.
2. Pressione Alt + / para navegar até o final do documento. Se você estiver usando Vi ou Vim, pressione Mudança + G em vez de.
3. Crie uma nova linha na parte inferior do documento e adicione a seguinte linha:
Defaults timestamp_timeout=0
Isso definirá o tempo limite do sudo para zero segundos, portanto, você terá permissões de sudo por zero segundos após executar o primeiro comando. Se você preferir um intervalo diferente, insira esse valor em segundos.
Você também pode definir o tempo limite para “-1”, o que lhe dá um período de carência infinito. Não faça isso. É uma maneira prática de destruir acidentalmente seu sistema um dia.
4. Pressione Ctrl + o para salvar e Ctrl + x sair.
Limite quem pode usar sudo e para quê
O principal objetivo do arquivo sudoers é controlar quais usuários podem executar o sudo. Sem o sudo, os usuários não podem elevar suas permissões. Se você tiver vários usuários acessando o mesmo sistema por meio de shells, poderá controlar o acesso definindo valores em sudo.
Cada arquivo sudoers terá a seguinte linha:
root ALL=(ALL) ALL
Isso permite o root
usuário em ALL
hosts usando ALL
usuários para executar ALL
comandos. ALL é um valor especial no arquivo sudoers que significa “sem restrições”. A sintaxe é a seguinte:
username hostlist = (userlist) commandlist
Se você deseja adicionar outro usuário como root, simplesmente copie a linha do root e altere o usuário da seguinte maneira:
alexander ALL=(ALL) ALL
Para obter mais controle, você poderia adicionar uma linha como a seguinte, que permitiria apenas ao usuário “alexander” executar apt-get update.
alexander ALL=(ALL) /usr/bin/apt-get update
Coloque um “%” na frente do usuário e ele definirá um grupo. A linha abaixo permite que todos os usuários do grupo “admin” tenham permissões de nível de root. Este seria o grupo definido por seus grupos de permissão do sistema operacional.
%admin ALL=(ALL) ALL
Alterar o editor de visudo
Dependendo de qual versão do Linux você está executando, existem duas maneiras principais de alterar o editor.
Para o Ubuntu, você deseja executar o comando Terminal abaixo:
sudo update-alternatives –config editor
Você verá algo como o seguinte:
There are 4 choices for the alternative editor (providing /usr/bin/editor). Selection Path Priority Status ------------------------------------------------------------ * 0 /bin/nano 40 auto mode 1 /bin/ed -100 manual mode 2 /bin/nano 40 manual mode 3 /usr/bin/vim.basic 30 manual mode 4 /usr/bin/vim.tiny 10 manual mode Press enter to keep the current choice[*], or type selection number: 3
Se você quiser selecionar o vim como seu editor de visudo do padrão do nano, você deve pressionar seu número de seleção 3
em seguida, pressione Enter.
Para outras versões do Linux, você desejará adicionar uma nova linha ao seu arquivo “~. / Bashrc”, conforme mostrado abaixo:
export EDITOR="vim"
Em seguida, salve o arquivo. Isso configuraria seu editor de visudo para vim.
Conclusão
O arquivo sudoers não é algo que você normalmente precisará mexer em sistemas de usuário único. Mas os administradores de sistema terão motivos mais do que suficientes para explorar seu funcionamento interno.