如何在 Linux 中更改 Sudo 密码超时

这个简短的指南解释了如何改变 sudo Linux 中的密码超时。 这 sudo system 是一种巧妙的方式,允许谁可以在 Linux 和 Unix 操作系统中运行管理任务。

介绍

您可以提升任何普通用户执行需要 root 权限的命令,只需将他/她添加到“sudo” 组。这样我们就不必将 root 用户的密码分享给所有用户。

每当您运行命令时 sudo会提示你输入 sudo 密码。 对于在 first 之后不久运行的后续命令 sudo 命令,您不必输入密码,即使他们需要 sudo 特权。

这是因为 sudo 记住您的密码 15 分钟 默认情况下。 15分钟后,您将被要求再次输入密码以进行任何 sudo 命令。

这实际上是一个安全功能。 例如,如果您在使用以下命令运行命令后让终端保持打开状态 sudo,身份验证在 15 分钟后自动过期 sudo 不活动。 因此,其他用户无法执行任何进一步的管理任务。

这种行为可以通过增加或减少 sudo 密码超时限制如下所述。

1. 在 Linux 中更改 Sudo 密码超时

1.1。 改变 sudo Linux中的密码超时限制,运行:

$ sudo visudo

该命令将打开 /etc/sudoers 文件在 纳米 编辑。

1.2. 找到以下行:

Defaults env_reset

并将其更改如下:

Defaults env_reset, timestamp_timeout=30

改变 sudo Linux中的密码超时

这里, 30 是以分钟为单位的新超时。 按 Ctrl+X 其次是 保存更改并 close 编辑。

从现在开始,您将被要求输入 sudo 30分钟后的密码 sudo 不活动。

1.1。 编辑sudoers文件的正确方法

而不是直接在“/etc/sudoers“文件,请考虑在 /etc/sudoers.d/. 这是更好的修改方法 sudo 密码超时限制。

1.1.1。 cd成”/etc/sudoers.d/“ 目录:

$ cd /etc/sudoers.d/

1.1.2。 使用命令创建每个用户的配置文件:

$ sudo visudo -f sk

在上述命令中将“sk”替换为您的用户名。

1.1.3。 在其中添加以下行:

Defaults timestamp_timeout=30

改变 sudo 密码超时

根据上面的行,我已经设置 sudo 密码超时 30 分钟。 Save 按 Ctrl+O 并按 ENTER 键。 进而, close 按 CTRL+X 文件。

如果您是唯一可以访问系统的人,则无需设置 sudo 密码限制更短。 您可以将密码超时值增加得更长。

1.2. 总是要求 sudo 密码

如果您指定 0 (零)对于“timestamp_timeout”,您将始终被询问 sudo 密码。

$ sudo visudo
Defaults timestamp_timeout=0

如果您指定负值,则超时将永不过期。

1.3. 为什么是visudo?

您可能想知道为什么我们需要运行“sudo visudo”?为什么不只是“sudo nano /etc/sudoers“并进行更改?是的,您也可以这样做。但是,使用 visudo 是正确的编辑方式 /etc/sudoers 文件. 这样你就可以锁定 /etc/sudoers 文件并避免其他用户同时编辑。

建议阅读:

  • 在 Linux 中编辑 /etc/passwd 和 /etc/group 文件的正确方法

2. 重置 Sudo 密码超时

就像我已经说过的,一旦你进入 sudo 密码,在 sudoers 文件中定义的接下来的 N 分钟内,将不会要求您输入后续命令的密码。

如果您想重置此行为并使 sudo 下次要求输入密码,运行:

$ sudo -k

这将立即重置密码超时,您必须输入 sudo 下一个命令的密码。

有关更多详细信息,请参阅手册页。

$ man sudoers

相关阅读:

  • 如何在 Linux 中添加、删除和授予用户 Sudo 权限
  • 如何在 Linux 中更改默认 Sudo 日志文件
  • 如何恢复用户的 Sudo 权限
  • 如何在你的 Linux 系统中查找所有 Sudo 用户
  • 如何在 Linux 中运行没有 Sudo 密码的特定命令

希望这可以帮助。