在Ubuntu中设置Sudo会话时间限制:简单步骤与指南
在Linux系统服务器中,sudo命令允许我们执行管理任务。然而,你可能已经注意到,你如果一段时间不操作后,需要再次提供sudo密码。这是因为你的sudo会话有时间限制,默认情况下是15分钟。如果你在执行sudo命令时加上密码,你的sudo权限将保持15分钟。在这15分钟之后,您将被要求再次为后续的sudo命令提供sudo密码。在某些情况下,你可能想改变sudo会话的默认时间限制,即增加或减少它。例如,如果你是唯一一个对系统有访问权的人,你可以增加sudo会话的超时限制。同样,你也可以减少sudo会话的超时限制,或者将其设置为0,这样当你运行sudo命令时,总会被要求输入密码。
在本文中,我们将介绍如何指定sudo会话的时间限制。你所需要的只是在/etc/sudoers文件中做一个简单的配置。
请注意,本文所讨论的命令和过程已经在Ubuntu 20.04 LTS(Focal Fossa)上进行了测试。你也可以在老版本的Ubuntu上执行同样的程序。
1、为Sudo会话指定时间X
在以下过程中,我们将sudo会话的时间限制指定为5分钟。请按照以下步骤将sudo会话的时间限制指定为所需的任意时间:
首先,使用Ctrl +>
$ sudo visudo
需要提供sudo的密码。
注意:切勿使用任何文本编辑器编辑/ etc / sudoers文件。而是使用如上所述的visudo命令。原因是,与其他文本编辑器不同,visudo检查文件中的语法和错误。这样,您可以避免进行任何可能导致严重影响的错误更改。
默认情况下,/ etc / sudoers文件将在Nano编辑器中打开。在/ etc / sudoers文件中查找以下行:
Defaults env_reset
在上一行的末尾,像这样添加timestamp_timeout = x:
Defaults env_reset timestamp_timeout=x
其中x是sudo会话的超时值。例如,要将sudo会话的超时值设置为5分钟,请将x的值设置为5。
Defaults env_reset,timestamp_timeout=5
同时使用Ctrl + O和Ctrl + X保存并关闭文件。现在尝试执行任何sudo命令(例如sudo apt update)。现在等待2至3分钟,然后再次执行sudo命令,系统将不会要求您输入密码。但是,5分钟后,您运行的任何sudo命令都会提示您输入sudo密码。
如果希望系统在每次执行sudo命令时都要求输入密码,请将x的值设置为0。类似地,如果希望系统从不要求sudo密码,则将x的值设置为-1。 。
2、将sudo会话设置为持续到终端关闭
无论终端保持打开状态多长时间,您都可以通过简单的命令使sudo会话持续到关闭终端为止。运行此命令后,将不会提示您提供任何需要sudo特权的命令的密码:
$ sudo -s
3、终止sudo会话
提供sudo密码后,甚至可以在/ etc / sudoers文件中指定的时间限制之前终止sudo会话。这是这样做的命令:
$ sudo –k
但是,请记住,如果您之前在终端会话中执行了“ sudo –s”命令,则此命令将不起作用。
在本文中,您学习了如何管理sudo会话的超时限制。编辑/ etc / sudoers文件以延长或缩短超时限制,或使用本文中提到的其他命令终止sudo会话,或使其持续到终端会话持续。
页:
[1]