我做了研究,发现人们不确定 chroot 是否有助于安全。我还有这些问题没有得到解答。chrooting 是否值得,如果值得,是否可以在 rhel 7 上为 httpd 2.4 进行 chrooting?请分享任何资源或参考资料。如果不行,有什么同等的方法来保护 Web 服务器?
提前致谢。
答案1
之前已经讨论过这个问题:如何在 CentOS 上 chroot Apache?
是的,可以 chroot apache。在 apache 2.4 中,您需要 mod_unixd 模块 (https://httpd.apache.org/docs/2.4/mod/mod_unixd.html)此页面解释了如何执行此操作:https://www.howtoforge.com/tutorial/chrooting-apache-2.4-with-mod_unixd-on-debian-8-jessie/尽管它声称是 Debian 的指南,但它仍然适用于 RHEL,因为该指南只是提到了在 apache 2.4 中使用哪些指令。
话虽如此,我认为预期的好处并不值得付出代价。这份古老的(2004 年 5 月)文档讨论了 chrooting apache 的利弊。文章中的一个关键短语:
在 chroot jail 中安装 Apache 不会使 Apache 本身更安全。相反,它的作用是将 Apache 及其子进程的访问限制在文件系统的一小部分。chroot 进程的优势不在于防止入侵,而在于遏制潜在威胁。
而且,正如上述问题/答案所说,遏制入侵的更好方法是使用 RHEL 已提供的安全功能:SELinux。大多数管理员在安装时都会关闭此功能,这样他们就不必处理这个麻烦。但是,花点时间学习这个强大的功能将省去很多麻烦。
答案2
如果你真的想要强化你的系统,可以考虑使用 SELinux和Apache chroot jail。RHEL7 与 centos7 类似,它们都运行 apache 2.4,因此这可能会有所帮助: