PHP 脚本归 www-data 所有

PHP 脚本归 www-data 所有

我曾经在用户“webroot”的专用服务器上拥有 php 脚本。

如果脚本由 apache2 用户(我的系统上的“www-data”)拥有,那么编码和管理会更容易。而且感觉更简单、更干净。

此盒子上没有 ftp,也没有其他用户或站点。

为什么不让 php 脚本归 www-data 所有?如果有什么不妥,最糟糕的情况是什么?

答案1

出于安全原因,我强烈建议不要使用 apache 用户作为文件所有者。如果您的某个 apache php 脚本被破解,它将能够在 apache 拥有的任何文件上进行写入。

对于需要通过 php 更改的文件,您应该严格将所有权授予 apache 用户。

答案2

听起来你使用 Ubuntu(类似于他们使用 www-data 用户)

我建议始终让 apache 用户和组(在 httpd.conf 或 apache.conf 中设置)成为您的网站文件的所有者。

我更喜欢使用 apache:apache

答案3

危险在于脚本或 Web 服务器可能受到攻击,从而允许攻击者将 PHP 文件写入您的服务器。这种威胁有多现实取决于您的脚本是否允许上传文件(以及它们如何检查文件类型)以及正在运行什么软件。安全性不是一个非此即彼的命题——人们通常会在许多不同的地方寻找机会使服务器更安全。不幸的是,安全性几乎总是与便利性相冲突。

答案4

反对让同一个用户拥有文件并运行 httpd 进程的论点是,如果您的 apache 实例受到损害,攻击者可以修改您的 docroot 中的文件。

与往常一样,安全性和易用性是相互矛盾的,因此您必须根据您的环境进行选择。

这篇关于 apache 和文件所有权/权限的文章有点旧了,但同样的原则仍然适用

http://onlamp.com/pub/a/apache/2004/05/28/apacheckbk.html

相关内容