为什么向非 root 用户授予 sudo 权限更安全?

为什么向非 root 用户授予 sudo 权限更安全?

我最近在 EC2 上安装了 Amazon Linux 来运行 NodeJS 应用程序。

建议以非 root 用户身份运行它们。这个用户仍然是我,所以不用担心其他人可以访问 vim,这不在列表中。

我添加了一个 newuser,现在 newuser 具有与 root 相同的 sudo 权限。那么现在怎么样才更安全呢?仅仅是因为 newuser 必须输入密码才能运行命令吗?

搭建NodeJS生产环境

答案1

因为您可以在 newuser 中定义一组特定的命令,该命令/etc/sudoers仅限于以提升的权限运行。理想情况下,您会找出需要的最少命令并将其限制于此。如果可以的话,不要允许该帐户以 root 身份执行所有命令。

接下来,您不允许 root 通过 ssh 登录。 (/etc/ssh/sshd_config, 放PermitRootLogin no)。您始终以自己的身份登录,而不是 root,然后根据需要使用 sudo 。

答案2

如果恶意用户访问了您的登录信息并且您拥有不受限制的sudo访问权限,那么您是对的:sudo与直接使用 shell 相比,访问不会提供任何额外的障碍root。 (无论如何,这可能是他们使用访问权限要做的第一件事sudo。)

然而,如果只是使用它,使用正常的权限,除非你实际上需要root 访问权限可以帮助防止一些令人不快的错误。

这不是一个安全点;而是一个安全点。这是预防事故的一个点。

这已在本网站的其他地方进行了广泛讨论:


注意:在企业环境中设置sudo对非常特定命令的访问限制当然是一个实际的安全优势。在我上面的陈述中,我指的是个人计算机,并回答这个问题:“为什么不受限制的sudo访问比root直接使用 shell 更好,即使在个人计算机上也是如此?” 这是更可取的,因为它可以防止事故。

相关内容