“管理员”用户自动拥有 sudo 权限

trp*_*him 17 adduser privileges user-management

我使用adduser.

/etc/sudoers在添加需要 sudo 权限的新用户时,我习惯于必须将用户添加到文件中,但这次我没有。根据 shell 中的输出,在我创建它之前似乎不存在“admin”用户。为什么这样做?

Flo*_*sch 30

默认情况下,adduser将每个新用户添加到与该用户同名的组中(如果该组不存在,则会创建该组)。因此,如果您创建一个名为的用户admin,它将被添加到组中admin

/etc/sudoers 包含该行

%admin ALL=(ALL) ALL
Run Code Online (Sandbox Code Playgroud)

这意味着该组的所有成员admin都可以使用sudo- 这对您的admin用户也是如此。

  • 在我看来,这属于“错误”或“安全问题”的定义。如果你用它作为你的用户名,为什么会有一个神奇的字母序列给你超能力? (8认同)
  • @FedericoPoloni Bug,一点也不。系统将用户添加到他们自己的同名组中。`Joe` 进入一个名为 `Joe` 的组。`admin` 碰巧进入了一个名为 `admin` 的组。但是,`admin` 是一个系统组。默认情况下,该组允许使用 sudo。此外,您可以指定组,因此 `admin` 用户不会进入 `admin` 组。最后,有一个名为“admin”的用户是一个安全问题。我使用用户名“admin”对我进行了 SSH 暴力攻击。 (7认同)
  • 我认为,考虑到一个用户 - 一个组的策略,预期的行为(至少对我来说)是在组名存在时出现错误(就像用户名存在时一样)。我投票支持错误,或者至少是意外行为。 (5认同)
  • @Whaaaaaat,出于某种原因,在您帖子末尾看到该用户名让我怀疑您所说的一切:) (3认同)