为什么要 su 到 root 而不是以 root 身份登录?

为什么要 su 到 root 而不是以 root 身份登录?

我经常听说 su 到 root 比直接以 root 用户身份登录更好(当然也有人说使用 sudo 更好)。我从来没有真正理解为什么一个比另一个更好,有见解吗?

答案1

推论是仅当需要时才su这样做sudo

大多数日常任务不需要 root shell。因此,最好将非特权 shell 作为默认行为,然后仅在需要执行特殊任务时才提升为 root。

通过这样做,您可以减少您使用的任何应用程序出现危险错误(错误的脚本、放错通配符等)和漏洞的可能性。尤其是那些连接到互联网的应用程序 - 参见那句老话“不要以 root 身份进行 IRC 操作”

sudo经常被推荐,因为它允许您细粒度地审核此类权限的使用。

通过遵守这些做法,您还可以禁用远程 root 登录。这增加了任何潜在攻击者的进入门槛,因为他们需要先攻陷属于“wheel”组且理想情况下仅由 SSH 公钥授权的普通用户帐户,然后再攻陷 root 帐户本身。

答案2

您应该禁用远程 root 访问权限,这样攻击者就无法在不先危及用户然后升级到 root 的情况下危及 root 权限。我们仅在控制台上启用 root 访问权限。

此外,它还能创造责任。:)

答案3

主要原因是创建审计跟踪。如果您需要以普通用户身份登录系统,然后 su,则可以追踪谁对给定操作负责。

答案4

另一个很好的理由是:当通过 sudo 提升到 root 权限时,用户会使用自己的凭据进行身份验证,这意味着他们不一定必须获得 root 密码,这样当有人离开您的组织时就可以更轻松地锁定一切。

相关内容