12

使用ITK模块而不是运行 Apache 服务器的Suexec有什么好处?想法是一样的,就是以所有者权限运行脚本,而不是nobodywwwapache

使用ITK来支持suexec会更好吗?如果是这样,为什么?相比之下,安全性和性能如何?

4

1 回答 1

22

MPM-ITK 允许您使用每个用户的凭据而不是在 Apache 用户/组下运行 Apache。Suexec 在特定用户/组下将脚本作为 CGI 运行,但 Apache 提供的静态文件仍然需要更多的开放权限才能访问。

MPM-ITK 允许所有 Apache 模块(mod_php 等)在特定用户:组下运行,静态文件具有与脚本相同的权限。主要缺点是 Apache 的控制进程必须以 root 身份运行(具有降低的权限),因此它可以在解析请求后切换到任何用户。Suexec 没有这个安全风险,但它只是脚本执行的一种解决方案(不是网站内容隔离)。

这是一篇博客文章,其中对 MPM-ITK 与 Suexec 和其他解决方案进行了很好的总结。作者接受 MPM-ITK 的安全影响,认为它超过了竞争解决方案的缺点。我不同意作者的观点,即 Apache 漏洞利用不太可能成功只是因为 MPM-ITK 补丁正在使用中,所以我建议保持最新的安全补丁(无论如何我们应该,对吗?)如果你是愿意接受安全风险以获得每个用户的利益。

总而言之,MPM-ITK 与 Suexec 的对比确实是一个视情况而定的决定。MPM-ITK 之外的唯一解决方案是反向代理后面的每用户 Apache 实例,如果服务器资源不是问题的话。在此处阅读更多信息:http ://wiki.apache.org/httpd/ExtendingPrivilegeSeparation

于 2013-06-02T19:46:12.513 回答