我正在开发一个处理敏感数据的 Web 应用程序。我们的安全措施非常严格,制定了政策来锁定对机器的访问,并记录所有内容以供技术审计之用。
我们不断回顾的问题是:谁能获得根源?
我们的服务器实例将有一个 root 用户。该 root 用户将有一个密码。谁应该有权访问它?是否有可能/希望有一台机器没有人可以获得root权限吗?
我将非常感激您关于这一问题的任何想法。
答案1
没有人。让他们使用,sudo
这样所有根级命令都会被记录下来并可归因于特定的人。
答案2
没有人除非硬件管理员获得 root 密码!root 密码只能在控制台上使用,而不能通过 SSH 或其他服务使用。
使用组来定义对不同程序集的访问权限,并使用 升级权限sudo
。例如,wheel 组通常适用于获得 root 权限的人,但所有内容都会以他们的用户身份记录。如果人们不需要完整的 root 权限,而只需要像其他用户一样使用一些命令,请创建另一个组。
答案3
如果您使用并部署 selinux,则可以删除典型的“全知全能”的神帐户,即正常的根设置,并将其转换为更安全的帐户。
答案4
我的观点是,人们不应该运行需要 root 权限的命令,当然除非他们实际上以 root 身份登录。
因此,我建议使用 su(切换到 root 用户)而不是 sudo(暂时将某个命令的权限提升到 root 级别)。如果他们需要 root 权限,请让他们切换到 root 用户。
我的问题是,您的用户在做什么以至于他们认为他们需要 root 权限?