“sudo”和“admin”组有什么区别?

ænd*_*rük 74 permissions sudo

我注意到两个组被授予了类似的权限/etc/sudoers

# Members of the admin group may gain root privileges
%admin ALL=(ALL) ALL

# Allow members of group sudo to execute any command
%sudo   ALL=(ALL:ALL) ALL
Run Code Online (Sandbox Code Playgroud)

我的具有“管理系统”权限的用户帐户在该admin组中,并且该组中似乎没有任何用户sudo。这两个组有什么用?

小智 59

Ubuntu 12.04 LTS 及更高版本

管理员已添加到sudo组中,但admin支持该组以实现向后兼容性。从发行说明

在 Ubuntu 11.10 之前,使用 sudo 工具的管理员访问权限是通过adminUnix 组授予的。在 Ubuntu 12.04 中,将通过sudo组授予管理员访问权限。这使得 Ubuntu 与上游实现和 Debian 更加一致。出于兼容性目的,该admin组将在 12.04 中继续提供 sudo/管理员访问权限。

它不会在您进行全新安装时创建,但如果您从以前的发行版升级,它仍然存在。无论哪种方式,该admin组都会出现在/etc/sudoers文件中。

查看实现细节官方文档


enz*_*tib 22

Ubuntu 11.10 及更早版本

默认情况下,该sudo组不在Ubuntu 中使用

  • 安装期间创建的用户属于admin组,而不是sudo
  • 没有指南或手册我读过使用该sudo组的建议;
  • 没有人觉得需要使用sudo群组,因为admin群组可以满足一个人的所有需求。

相反,在Debian上启用的组/etc/sudoerssudo组,没有admin组。但是安装过程中创建的用户并没有放在那个组中,因为Debian已经root启用了该帐户。如果您愿意,您应该明确地这样做。

此外,Fedora的是类似的Debian,已经root启用了该用户的默认权限在安装过程中创建。但配置的管理组/etc/sudoers是更传统的组wheel

总之,我认为sudoUbuntu 中group没有用,只是它是Debian 的遗产。


Ale*_*huk 17

没有安全差异。

两者都可以 100% 不受限制地访问操作系统提供的任何内容。

你的 /etc/sudoers 的区别是(ALL)vs (ALL:ALL)。第一个意味着您可以以任何用户身份运行命令。第二个 - 您可以以任何用户任何组的身份运行命令。

在您的 /etc/sudoers 中显示的方式两个组都需要输入自己的密码才能以 root 身份执行命令。

两者都可以是这样的 root shell:

sudo su
Run Code Online (Sandbox Code Playgroud)

  • 没有“作为任何组”我不能做什么? (10认同)
  • 如果专门允许某个程序仅由特定组执行,则不属于该组的具有“(ALL)”的用户无法执行该命令。就像[这里](https://askubuntu.com/a/8842/621061)一样,属于“admin”组而不是“webuser”组的用户无法执行“firefox”。 (5认同)