我应该与哪个用户一起运行Web服务器,redis和mongodb?


8

在此VPS上,有三个用户:root,another_one,none。所有网络服务器文件,配置和&c。由拥有root。但是,我对运行事物有什么怀疑。如果我将root用户用于Web服务器,则可能会使系统暴露在安全漏洞中,而如果我尝试登录到nobody该服务器,则会询问我从未设置且不知道的密码。我应该再创建一个用户吗?

现在,我仅对nginx感到确定:我以root身份运行它,并且以没有人的身份生成进程。但是,Web服务器和其他服务(如db和redis)又如何呢?

注意:我应该提到another_user可以sudo,所以它与root没什么不同。

Answers:


9

我总是与专门的用户一起运行服务。因此,我将创建以下用户:

  • Nginx的
  • 蒙哥
  • 阿帕奇
  • MySQL的
  • Redis

您永远不要以root用户身份运行实际的服务!

通常,在使用分发程序包管理器安装这些应用程序时,作为安装的一部分,将自动为每个服务创建一个用户。

我通常使用CentOS / RHEL,当我安装Apache之类的东西时,此时会自动创建用户“ apache”。MySQL和Nginx也是如此。


非常感谢!是的,例如,在安装redis时,我发现redis还创建了一个用户。我会听从这个建议,谢谢。
rubik

我现在正在配置东西,并且有多个用户来设置特定的权限更加容易!
rubik

我喜欢这种方法。出于好奇,您对团体的策略是什么?您有服务小组吗?还是为每个服务用户保留一个单独的组?
Patrick M

@PatrickM-独立的小组。服务应尽可能彼此隔离。
slm

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.