No Linux, certas tarefas administrativas exigem privilégios elevados. Esses privilégios pertencem a uma conta especial conhecida como usuário root no Linux. Embora você possa fazer login diretamente como root, é frequentemente mais seguro e gerenciável obter acesso de superusuário temporariamente.
O Comando su
Além do comando sudo, você pode usar su (substituir usuário) para obter privilégios de superusuário. Quando executado sem um nome de usuário, su tenta abrir uma nova sessão de shell para o usuário root do linux, solicitando a senha de root.
su
Você também pode usar este comando para mudar para qualquer outro usuário no sistema, desde que saiba a senha dele.
Riscos de um Shell Root Persistente
Usar su para abrir um shell root tem desvantagens significativas. Operar continuamente como usuário root aumenta o risco de cometer um erro crítico que altera o sistema. Além disso, as ações realizadas em um shell root não são registradas sob sua conta de usuário pessoal, dificultando a auditoria das alterações do sistema. Por essas razões, a melhor prática é usar sudo para comandos individuais que exigem acesso de superusuário.
O Arquivo sudoers
Então, como o sistema determina quem tem permissão para usar sudo? O acesso é controlado por um arquivo de configuração localizado em /etc/sudoers. Este arquivo lista os usuários e grupos que têm permissão para executar comandos como superusuário.
Para editar este arquivo com segurança, você deve sempre usar o comando visudo. Este utilitário abre o arquivo sudoers em um editor de texto e realiza uma verificação de sintaxe antes de salvar, o que ajuda a prevenir erros de configuração que poderiam bloquear seu acesso administrativo.