如何将mod_security作为独立使用?

时间:2014-01-19 16:17:41

标签: security proxy load-balancing mod-security

我在Mod_Security包中看到了名为standalone的模块;但我不确定如何在制作和安装后使用它! 启动有没有好的资源?

2 个答案:

答案 0 :(得分:1)

似乎不可能;基于ModSecurity网站所说的操作模式:

  

反向代理是有效的HTTP路由器,设计   站在Web服务器和它们的客户端之间。当您安装时   专用的Apache反向代理并向其添加ModSecurity,你得到一个   “适当的”网络Web应用程序防火墙,您可以使用它   保护同一网络上的任意数量的Web服务器。很多安全   从业者更喜欢拥有单独的安全层。有了它,你得到   完全隔离您正在保护的系统。在   性能方面,独立的ModSecurity将拥有资源   致力于它,这意味着你将能够做更多(即,   有更复杂的规则)。这种方法的主要缺点是   新的失败点,需要用a来解决   两个或多个反向代理的高可用性设置。

他们正在考虑将其分开,创建了一个专用主​​机,用于代理内部主机。

有效;但从技术上讲,它不是standalone

我还提交了一个错误,Felipe Zimmerle证实了这一点:

  

Standalone是Apache内部的包装器,允许执行ModSecurity。那个包装器仍然要求Apache件。确实,您可以使用独立版本扩展您的应用程序,但是,您将需要一些Apache部件

答案 1 :(得分:0)

正如您所知,ModSecurity是对现有Web服务器的补充 - 最初是作为Apache模块(因此名称),但现在也可用于Nginx和IIS。

您可以在嵌入模式下运行它(即作为主Web服务器的一部分)或以反向代理模式运行它(基本相同,但您设置了一个单独的Web服务器并在其上运行,然后直接所有流量通过)。

说实话,我从来没有在反向代理方法中找到太多意义。我想这确实意味着你可以在不受支持的Web服务器上使用它(例如,如果你不使用Apache,Nginx或IIS),它会减少主Web服务器上的负载,但除此之外它似乎是一个额外的步骤和基础设施没有真正的收益。有些人可能也更喜欢在几个Web服务器前面进行ModSecurity检查,但是如果你有多个Web服务器我会争辩,那么可能出于性能和弹性的原因,为什么不将ModSecurity传播到这个级别而不是创建一个单点故障可能是它面前的瓶颈。只有其他原因才能应用会话级规则(例如,如果人们正在更改会话ID),这可能最终会在不同的Web服务器之间传播,但我从未确信这些规则是那么好。

当我构建ModSecurity时,我得到了一个mod_security2.so库,但没有单独的独立文件,所以我认为你只是通过源代码看到这个(我确实看到了一个独立的)?我只是因为源中有一个“独立”文件夹并不能保证它可以作为一个完全独立的独立文件运行。

我会问你为什么要将它作为一个独立的应用程序运行,即使你可以? Web服务器在其中具有许多功能,并且取决于为Web安全而编写的ModSecurity,而不是Web安全性 Web服务器所做的所有其他事情(例如,快速,了解HTTP协议, gzip和ungzip等等,不必要地延伸了ModSecurity需要处理的内容。那么为什么不使用Web服务器来处理这个问题,让ModSecurity做它擅长的事情呢?

如果你正在使用ModSecurity,那么我猜你有网络应用程序(可能是网络服务器),那么为什么不通过它来使用呢?

最后通过Apache(或Nginx或IIS)安装它有什么问题吗?它是免费软件,支持且易于设置。

我猜最终我不明白你问题的原因。你试图解决一个特殊的问题,还是这只是好奇心?