Symfony权限建议:相同的用户cli和webserver

时间:2016-02-15 12:23:49

标签: apache symfony

我在Symfony的installation guidelines中阅读了这条建议:

  

1。对CLI和Web服务器使用相同的用户

     

在开发环境中,将相同的UNIX用户用于CLI和Web服务器是一种常见做法,因为它在设置新项目时避免了任何这些权限问题。这可以通过编辑Web服务器配置(例如,通常为Apache的httpd.conf或apache2.conf)并将其用户设置为与CLI用户相同(例如,对于Apache,更新用户和组值)来完成。

这对于本地开发环境来说只是一种很好的做法,或者我应该在我的公共测试和环境测试中做到这一点。 prod服务器呢?对我而言,这似乎不是一个非常安全的配置?

问题我可以在prod服务器上安全地遵循此建议吗?有什么风险,如果有的话?

1 个答案:

答案 0 :(得分:0)

此建议提供了一种简单的替代方法,可以避免常见的权限问题。

我希望一次正确设置网络服务器权限并保留默认的网络服务器组/用户。

The documentation有很好的指导来实现这一目标。

修改

您不应该将您的CLI用户设置为您的网络服务器用户,尤其是在生产环境中,因为它会让您面临各种可能的滥用行为。

www-data用户的全部意义在于它是一个无特权的用户,默认情况下无法写入任何文件。

您的CLI用户通常是root,同时保留www-data用户,因为网络服务器所有者可以保护您免受可能涉及许多问题和潜在安全问题的不良操作。

另外,如果您的网络服务器受到攻击,那么依赖于同一用户的其他服务也会受到损害。

从外部网络(例如Web服务器)可访问的服务器守护程序通常作为非特权用户运行,以便在由于漏洞而被攻击时,攻击者可以执行的操作很少。