什么时候将Apache放入chroot监狱是不值得的?

我并不是想质疑在大多数情况下将Apache安装在chroot-jail上的安全防范措施,但在我的情况下,我有疑问。

我们有一个托pipe单个应用程序的虚拟服务器 – 一个web服务。 本指南说我应该禁用SELinux ,这对我来说似乎不太安全? 在我们的应用程序被攻破之后,所有这些都是为了保护Centos的运行。

显然,这有点主观,但是在资源有限的小规模部署中,我们应该关注哪些更好的方法?

Chroot提供了一点安全性来为攻击者提供速度缓冲。 如果您在apache / CGI中存在漏洞,攻击者必须转义chroot jail。 自动攻击不太可能试图做到这一点,但是如果有一个已知的内核漏洞利用,并且在chrooted环境中可以获得这个漏洞利用的需求,那么你就会陷入困境。

SELinux提供了更大的安全性,但是执行的痛苦不会被打喷嚏。 对于简单的情况,可能会有预先设定的SELinux策略给你,但是如果你在做怪异/自定义的事情,你将需要自己扩展它们。 如果您加载了selinux开发RPM,这并不是非常困难。 从非执行模式开始,完全运行您的系统,然后运行:

audit2allow -a -l -R -m foo -o foo.te 

这将有助于您制定自定义政策。

与SELinux类似的步骤是GRSecurity。 这是不太标准的,但可能是一个更安全的SELinux,可能有点容易使用,虽然互联网上随机的人less能够帮助你。

另一种方法是在虚拟机中运行Web服务器。 这给了你更多的安全性,但是已经知道攻击能够逃脱VM环境。 这些很可能是非常坚决的攻击者,但不是你的正常剧本kiddy。

我只是扔在那里,我从来没有打扰在chroot环境中设置Apache。 如果你认为chroot可能没有必要,那可能不是。