Ao trabalhar com o comando sudo para realizar tarefas administrativas no Linux, você deve ter notado que, mesmo que tenha fornecido a senha do sudo há algum tempo, será solicitado que você a forneça novamente após algum tempo. Isso acontece devido ao limite de tempo da sua sessão de sudo, que é definido como 15 minutos por padrão. Se você inserir um comando sudo após esses 15 minutos, mesmo na mesma sessão de terminal, será solicitado que você insira a senha novamente. Como um administrador Linux, você pode querer aumentar ou diminuir o limite de tempo para a sessão sudo do que o padrão de quinze minutos.
Este tutorial descreve como você pode fazer mudanças muito simples no arquivo / etc / sudoers para especificar um limite de tempo para uma sessão sudo. Os comandos mencionados neste artigo foram executados no Ubuntu 18; no entanto, eles têm o mesmo desempenho nas versões mais antigas do Ubuntu também.
Especifique o tempo X para uma sessão de Sudo
Neste exemplo, vamos alterar o limite de tempo de nossa sessão de sudo para 10 minutos. Siga estas etapas para alterar o limite de tempo de sua sessão de sudo para o tempo que desejar:
Abra seu Terminal Ubuntu pressionando Ctrl + Alt + T ou através do Ubuntu Dash.
Como você precisa editar o arquivo sudoers localizado nas pastas etc, digite o seguinte comando:
$ sudo visudo
Você será solicitado a inserir uma senha para o usuário sudo.
Você deve estar se perguntando por que não abrimos o arquivo sudoers como abrimos os outros arquivos de texto. A resposta é que, ao contrário de outros editores de texto, o visudo verifica a sintaxe do texto que você insere no arquivo. Isso evita que você faça alterações incorretas que possam causar sérias repercussões. Por exemplo, fazer edições incorretas no arquivo sudoers pode custar a você a incapacidade de fazer login como um usuário privilegiado para realizar qualquer uma das funções elevadas.
Digite sua senha e entre. O arquivo sudoers será aberto no editor Nano, pois é o editor de texto padrão do Ubuntu 18.04.
Na imagem acima, você pode ver a seguinte linha:
Padrões env_reset
Esta linha é responsável pelo limite de tempo de sua sessão de sudo. Você precisa fazer as seguintes alterações nesta linha:
Padrões env_reset, timestamp_timeout = x
Aqui, x é o tempo, em minutos, que você pode especificar para definir o limite de tempo necessário. Observe os seguintes pontos ao definir este tempo limite:
Se você especificar o tempo limite como 0, sua sessão durará apenas 0 minutos. Isso significa que você será solicitado a inserir senhas para cada um dos seus comandos sudo.
Se você definir esse tempo como menor que zero (em negativo), o comando sudo não funcionará corretamente.
Neste exemplo, estou encurtando o tempo padrão de 15 para 10 minutos por meio das seguintes alterações em meu arquivo sudoers:
Aperte Ctrl + X para sair do arquivo depois de fazer as alterações necessárias. Você será questionado se deseja salvar o arquivo modificado. Aperte Y para salvar as mudanças.
Você também será solicitado a especificar o nome do arquivo a ser salvo. Por favor, pressione Enter, pois não queremos alterar o nome do arquivo aqui.
Suas alterações serão salvas e sua sessão de sudo durará até os minutos especificados sempre que você usar o comando sudo.
Definir sessão de Sudo até o fechamento do terminal
Por meio de um comando simples, você pode deixar sua sessão de sudo durar até que você feche o terminal, não importa quanto tempo o terminal permaneça aberto. Não será solicitado que você insira sua senha para qualquer comando que requeira permissão sudo após a execução deste comando:
$ sudo -s
Encerrar a sessão sudo
Depois de fornecer a senha para sudo, você pode encerrar a sessão sudo mesmo antes do limite de tempo especificado no arquivo sudoers, por meio do seguinte comando simples:
$ sudo -k
Observe que este comando não encerrará a sessão se você tiver usado o "sudo -s" durante uma sessão de terminal.
Então, é assim que você pode encurtar ou aumentar o tempo de duração de uma sessão sudo, fazendo uma alteração de uma linha no arquivo / etc / sudoers. Você também pode usar outros comandos mencionados neste artigo para encerrar a sessão sudo ou fazer com que dure até que dure a sessão de terminal.