ModSecurity 支持两个部署选项:嵌入式和反向代理部署。两种选择都有优点和缺点:
嵌入式的
因为ModSecurity是一个Apache模块,所以可以将其添加到任何兼容版本的Apache中。ModSecurity已经移植到Nginx和IIS,后者引入了更广泛的平台选项。对于已经设计好了架构却不想改变原架构的情况来说,嵌入式选项是一个很好的选择。 如果需要保护数百个Web服务器,那么嵌入式部署也是最好的选择。
在这种情况下,构建一个单独的基于代理的安全层是可行的。嵌入式ModSecurity不仅没有引入新的故障点,而且随着非嵌入式Web基础设施的扩展,它可以无缝地扩展。嵌入式部署的主要挑战是Web服务器和ModSecurity之间共享服务器资源。
反向代理
反向代理是有效的 “HTTP 路由器”,置于 Web 服务器及其客户端之间。当安装专用的Apache 反向代理并向其添加 ModSecurity 时,将获得一个“适当的”网络 Web 应用程序防火墙,该防火墙可用于保护同一网络上的任意数量的Web 服务器。许多安全从业者更喜欢具有单独的安全层,通过该层可以与要保护的系统完全隔离。
在性能方面,独立的 ModSecurity 安装将拥有专用资源,这意味着能够执行更多操作(即具有更复杂的规则)。这种方法的主要缺点是新的故障点,需要使用两个或多个反向代理的高可用性设置来解决。