用于为用户启用 sudo 的 /etc/sudoers 与 /etc/sudoers.d/ 文件

sob*_*sob 7 sudo yocto

我正在使用 Yocto 为电路板构建图像。我已禁用该root用户。我正在添加一个新用户,可以说adminuser1。在我看来,adminuser1作为管理员有两种选择。

  • 添加adminuser1到 /etc/sudoers 中的 sudoers
  • 创建一个新文件/etc/sudoers.d/0001_admin1并添加一行adminuser1 ALL=(ALL) ALL

默认/etc/sudoerssudo组评论# %sudo ALL=(ALL) ALL

我试图了解哪种方法在安全方面是更好的方法:

  • 我是否应该添加adminuser1sudo组并取消注释# %sudo ALL=(ALL) ALLin/etc/sudoers
  • /etc/sudoers.d/0001_admin1adminuser1 ALL=(ALL) ALL在文件中添加和添加。

Wou*_*lst 7

sudoers和之间的选择sudoers.d与安全无关,而与可维护性有关。

  • 通过取消注释中的sudo组行/etc/sudoers,您可以添加需要对组具有 sudo 访问权限的所有用户sudo。这可能比在 中添加新文件更容易,也可能不会sudoers.d,具体取决于您的设置。但是,更改附带的配置文件可能会使事情变得更加困难(例如,如果您的发行版更新会覆盖 sudoers 文件,您必须确保保留您的更改)。
  • 通过将文件添加到/etc/sudoers.d,您不会遇到我上面提示的更新问题,但是如果您在那里明确添加配置adminuser1而不是sudo组,则添加更多用户以拥有 sudo 权限将需要添加更多文件/etc/sudoers.d;这可能会也可能不会比将他们添加到正确的组更复杂。

没有一种方法是“最好的”;并且肯定不存在基于“我在哪个文件中配置 sudo 权限”的安全问题。只需考虑两种方法的优点和/或缺点,并使用最适合您的用例的方法。