我想使用 suexec 来保护在 apache 下运行的一些网站。目前,php 是使用正在执行文件的用户/组来执行的。在我看来,这不够安全。它可以阻止虚拟主机相互干扰,但不能阻止在使用的虚拟主机的任何地方写入恶意代码。
我认为一种可能性是将脚本作为 nobody/vhost 组运行,这样 vhost 用户仍然可以完全访问 vhost 目录,但执行 php 只能使用 g+w 写入文件,使用 g+x 执行文件。我认为这应该可以阻止受感染的 php 在 web 目录中进行任意写入。
只是想知道这是否疯狂、荒谬、愚蠢?
当然,这将在现有的安全措施的基础上完成。
答案1
这并不荒谬或愚蠢 - 也许有点疯狂,但无论如何......你可能想看看MPM_peruser或者MPM_itk它对性能的影响似乎很小,并且与 mod_php 100% 兼容。
SUEXEC 要求您使用 PHP 作为 CGI,这会对您的网站的性能产生影响(当然,这完全取决于您的网站有多繁忙......)
此外,由于这只是现有安全措施之上的另一项措施,我假设您已经拥有 suhosin、mod_security 设置和配置。
欲了解详细信息请参阅参考资料:http://catn.com/security/securing-mod-php/