小编mod*_*Neo的帖子

试图了解 sudoers 文件中“modernNeo ALL=(ALL:ALL) ALL”和“modernNeo ALL=(ALL) ALL”之间的区别

sudoers文件中,您可以有以下任一行

modernNeo ALL=(ALL:ALL) ALL
modernNeo ALL=(ALL) ALL
Run Code Online (Sandbox Code Playgroud)

我在这里查看了以下答案以了解这一点

问题 1

如果我从上面的答案中正确理解,则(ALL:ALL)意味着您可以以任何用户和任何组的身份运行该命令,这(ALL)意味着您可以以任何用户的身份运行该命令,但您的组保持不变[它仍然是您自己的组],无论当您使用sudowithALL第三个条目时,您将成为用户?

问题2

但是随着 (ALL:ALL)

  • 如果您可以作为任何组运行它,那么 sudo 如何决定您运行命令的组,就好像您没有在命令行上使用 指定它一样-g
  • 它是否首先尝试将它作为您自己的组运行,然后在找到允许您运行命令的组之前查看计算机上所有组的列表?
  • 它从哪里获取组列表以及该列表中组的顺序是什么?
  • 或者root当您没有指定您想要成为的用户和/或组的偏好时,它是否只是恢复为用于用户和/或组?如果是这样,为什么要(ALL:ALL)在可以做的时候做(root:root)

问题 3

此外,在这个 Ubuntu 论坛帖子中,关于以下几行

%admin ALL=(ALL) ALL

%sudo   ALL=(ALL:ALL) ALL  
Run Code Online (Sandbox Code Playgroud)

他们说

admin 组中的用户可能会成为 root。sudo 组中的用户只能使用 sudo 命令。
例如,他们不能sudo su
(ALL:ALL)(user:group)的是sudo将使用。可以使用-u-g运行时指定它sudo。如果您未指定任何内容,它将作为 运行 …

permissions sudo

9
推荐指数
1
解决办法
727
查看次数

标签 统计

permissions ×1

sudo ×1