8 maneiras de ajustar e configurar o Sudo no Ubuntu
Como a maioria das coisas no Linux, o comando sudo é muito configurável. Você pode fazer o sudo executar comandos específicos sem pedir uma senha, restringir usuários específicos a apenas comandos aprovados, comandos de log executados com o sudo e mais.
O comportamento do comando sudo é controlado pelo arquivo / etc / sudoers em seu sistema. Esse comando deve ser editado com o comando visudo, que executa a verificação de sintaxe para garantir que você não quebre acidentalmente o arquivo.
Especifique usuários com permissões do Sudo
A conta de usuário que você cria ao instalar o Ubuntu é marcada como uma conta de administrador, o que significa que pode usar o sudo. Qualquer conta de usuário adicional que você criar após a instalação pode ser Administrador ou Contas de usuário padrão - Contas de usuário padrão não têm permissões sudo.
Você pode controlar graficamente os tipos de contas de usuários da ferramenta Contas do usuário do Ubuntu. Para abri-lo, clique no seu nome de usuário no painel e selecione Contas de usuário ou pesquise Contas de usuário no painel..
Faça o Sudo Esquecer sua Senha
Por padrão, o sudo lembra sua senha por 15 minutos após você digitá-la. É por isso que você só precisa digitar sua senha uma vez ao executar vários comandos com sudo em rápida sucessão. Se você está prestes a deixar alguém usar o seu computador e você quer que o sudo peça a senha quando for executado em seguida, execute o seguinte comando e o sudo esquecerá sua senha:
sudo -k
Sempre peça uma senha
Se você preferir ser avisado toda vez que usar o sudo - por exemplo, se outras pessoas acessarem seu computador regularmente - você poderá desabilitar o comportamento de lembrar senhas completamente.
Essa configuração, como outras configurações do sudo, está contida no arquivo / etc / sudoers. Execute o comando visudo em um terminal para abrir o arquivo para edição:
sudo visudo
Apesar de seu nome, este comando é padronizado para o novo editor nano amigável ao usuário, em vez do tradicional editor vi no Ubuntu..
Adicione a seguinte linha abaixo das outras linhas de Padrões no arquivo:
Padrões timestamp_timeout = 0
Pressione Ctrl + O para salvar o arquivo e pressione Ctrl + X para fechar o Nano. Sudo agora sempre solicitará uma senha.
Alterar o tempo limite da senha
Para definir um tempo limite de senha diferente - um mais longo como 30 minutos ou um mais curto como 5 minutos - siga as etapas acima, mas use um valor diferente para timestamp_timeout. O número corresponde ao número de minutos que o sudo lembrará sua senha. Para que o sudo lembre sua senha por 5 minutos, adicione a seguinte linha:
Padrões timestamp_timeout = 5
Nunca peça uma senha
Você também pode fazer com que o sudo nunca peça uma senha - contanto que você esteja logado, todos os comandos prefixados com o sudo serão executados com permissões de root. Para fazer isso, adicione a seguinte linha ao seu arquivo sudoers, onde username é seu nome de usuário:
nome de usuário ALL = (todos) NOPASSWD: ALL
Você também pode alterar a linha% sudo - ou seja, a linha que permite que todos os usuários do grupo sudo (também conhecidos como usuários Administradores) usem o sudo - para que todos os usuários Administradores não precisem de senhas:
% sudo ALL = (TODOS: TODOS) NOPASSWD: TODOS
Executar comandos específicos sem uma senha
Você também pode especificar comandos específicos que nunca precisarão de uma senha quando executados com o sudo. Em vez de usar "ALL" após NOPASSWD acima, especifique o local dos comandos. Por exemplo, a linha a seguir permitirá que sua conta de usuário execute os comandos apt-get e shutdown sem uma senha.
nome de usuário ALL = (ALL) NOPASSWD: / usr / bin / apt-get, / sbin / desligamento
Isso pode ser particularmente útil ao executar comandos específicos com o sudo em um script.
Permitir que um usuário execute somente comandos específicos
Embora você possa colocar comandos específicos na lista negra e impedir que os usuários os executem com o sudo, isso não é muito eficaz. Por exemplo, você pode especificar que uma conta de usuário não consiga executar o comando shutdown com o sudo. Mas essa conta de usuário poderia executar o comando cp com o sudo, criar uma cópia do comando de desligamento e encerrar o sistema usando a cópia.
Uma maneira mais eficaz é colocar na lista de permissões comandos específicos. Por exemplo, você poderia conceder uma permissão de conta de usuário padrão para usar os comandos apt-get e shutdown, mas não mais. Para fazer isso, adicione a seguinte linha, em que standarduser é o nome de usuário do usuário:
standarduser ALL = / usr / bin / apt-get, / sbin / desligamento
O comando a seguir nos dirá quais comandos o usuário pode executar com o sudo:
sudo -U standarduser -l
Logging Sudo Access
Você pode registrar todo o acesso sudo adicionando a seguinte linha. / var / log / sudo é apenas um exemplo; você pode usar qualquer localização de arquivo de log que você goste.
Arquivo de log padrão = / var / log / sudo
Veja o conteúdo do arquivo de log com um comando como este:
sudo cat / var / log / sudo
Lembre-se de que, se um usuário tiver acesso irrestrito ao sudo, esse usuário poderá excluir ou modificar o conteúdo desse arquivo. Um usuário também pode acessar um prompt de root com sudo e executar comandos que não seriam registrados. O recurso de registro é mais útil quando associado a contas de usuários que restringiram o acesso a um subconjunto de comandos do sistema.