Apache ITK 与 Suexec

标签 apache suexec

使用 ITK 模块而不是运行 Apache 服务器的 Suexec 有什么好处?思路是一样的,就是用所有者权限而不是nobody、www或者apache来运行脚本!

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

最佳答案

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

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

这里是 a blog post with a good summary regarding MPM-ITK vs Suexec and other solutions .作者接受 MPM-ITK 的安全影响,认为它超过了竞争解决方案的缺点。我不同意作者的观点,即 Apache 漏洞利用不太可能因为 MPM-ITK 补丁正在使用而成功,所以我建议您保持最新的安全补丁(无论如何我们应该,对吗?)如果你是愿意接受安全风险以获得每个用户的利益。

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

关于Apache ITK 与 Suexec,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16712878/

相关文章:

php - Vagrant 命令未运行,正在安装开发机

cgi - “违反 suexec 政策”会阻止我的网站运行吗?

apache - Redhat "httpd"无法启动了。显示 "suEXEC"和 "SELinux"通知

jquery - elasticsearch.js 客户端连接被拒绝 : Access-Control-Allow-Origin not recognized?

php - 删除扩展 mod_rewrite 太宽容

php - 如何更改/隐藏服务器目录名称?

python - 通过 CGI 在 cPanel 上部署 Python 应用程序 - SuExec 和 500 错误

linux - Apache suexec "command not in docroot"

php - Apache suExec 在 Plesk 11 中不工作 [仍在使用 www-data 默认用户]

Apache 2.2 WebDav 匿名访问