Ubuntu 的无根 sudo 设置的缺点/缺点

Ubuntu 的无根 sudo 设置的缺点/缺点

默认情况下,Ubuntu 不会创建用户可以登录的 root 帐户。相反,用户使用sudo当他们需要执行需要管理访问权限的操作时。

显然,Ubuntu 的人们觉得这是一个好主意,我在 Ubuntu 网站上读到的所有内容都给出了他们认为这是一个好主意的充足理由。好的想法(参见RootSudo @ Ubuntu Wiki, 例如)。

然而,许多其他主流发行版,例如 Debian、Gentoo 等,默认情况下不会这样设置,我正在尝试找出原因。如果 Ubuntu 的默认 sudo-root 设置是一个好主意,为什么其他主流发行版不也这么做呢?这让我相信,不以这种方式设置可能有充分的理由;但我很难找到任何提供这方面细节的内容。我找到的只是谈论它有多么伟大的文章/帖子......

所以我的问题是:Ubuntu 的 sudo 设置是否存在任何阻止其他发行版使用此设置的重大问题(不安全、功能限制等),如果有,它们是什么?当然,这可能只是一个好主意,但其他发行版却迟迟没有接受或抵制,因为它与过去 30 年的运作方式不同。如果是这样的话,我想知道这一点。

答案1

我知道的唯一非主观缺点是,当 root 用户没有设置密码时,它允许在没有密码的情况下访问单用户模式。

一台真正安全的机器将处于锁定状态,禁用从可移动媒体启动,设置 BIOS 密码以防止更改,设置引导加载程序密码以防止内核启动命令行被更改(因此无需添加init=/bin/sh),并且密码将是需要访问单用户模式。

答案2

当您使用 vi 而不是 visudo 在远程系统上编辑 /etc/sudoers 并弄乱语法时,您将无法再使用 sudo,也无法使用 su,因为没有设置 root 密码。

我已经做到了。我从中吸取了教训。它燃烧了。 :-)

答案3

基本上,sudo 为您提供管理权限。如果您没有 root 帐户,并且您的用户有ALL=(ALL) ALLin /etc/sudoers,那么您的用户就是超级用户。不建议这样做,因为您可以使用sudo您的用户密码以管理权限执行命令。

管理员必须配置sudo为允许用户执行某些命令,但某些管理任务将是root唯一的,root真正的管理任务也是如此超级用户

真正的问题是特权就是特权。最安全的系统将只有 1 个超级用户,它是root.

答案4

我怀疑这很大程度上是惯性问题。曾几何时,该sudo命令并不存在,因此必须为 root 帐户配置密码。根据《须藤简史》,引用自这篇维基百科文章sudo于 1980 年左右首次实施,但可能直到 90 年代才广泛普及。

可能仍然存在将其sudo视为附加便利的倾向,而不是应将其视为系统管理方式的核心。

相关内容