linux /etc/sudoer 内容详解和配置说明?

5 min read

/etc/sudoers 是 Linux 系统中的一个特殊文件,用于管理用户和组的权限,以便授予用户执行特定命令的特权。

/etc/sudoers 文件的内容格式如下:

user1 host1 = (user2) command1, command2, ...
  • user1:表示要授权的用户,也可以使用 %group 的格式授权组。
  • host1:表示用户登录的远程主机,也可以使用 ALL 表示所有主机。
  • user2:表示授权目标用户或组,可以省略。
  • command1, command2, ...:表示能够执行的命令列表。

在以上配置中,还可以添加其他关键字和选项,例如:

  • ALL:表示所有主机均可使用该权限。
  • NOPASSWD:表示无需输入密码。
  • ALL=(ALL):表示用户可使用所有命令,且无需输入密码。
  • !command1, !command2:表示用户不可执行的命令。
  • SETENV:表示用户可设置环境变量。
  • LOG_INPUTLOG_OUTPUT:表示记录用户输入和输出日志。
  • 等等。

修改 /etc/sudoers 文件时,应使用 visudo 命令,该命令可以保证文件的正确性。修改后需要保存并退出 visudo,才能生效。

需要注意的是,修改 /etc/sudoers 文件存在风险,如果配置不正确,则可能禁用所有管理员帐户的访问权限。因此,在修改前应备份当前文件,并仔细阅读手册和文档。