Nginx集成ModSecurity Web应用防火墙



介绍

ModSecurity 是一个开源的 Web 应用防火墙 (WAF),可以帮助保护 Web 应用程序免受各种安全威胁。它能够检测并防御常见的 Web 攻击,例如 SQL 注入、跨站脚本攻击 (XSS) 等。通过集成到 Nginx 中,ModSecurity 可以实时监控、分析和阻止恶意请求,提升 Web 服务器的安全性。


前言

这是我一直想做的就是让nginx与开源防火墙整合,提升网站防御,如今又实现了。我是自己构建的docker镜像,都是最新的nginx以及最新的modsecurity模块,包括防御规则集。

我们通过waf日志可以看到fweb防火墙正常工作,我们现在采用的默认规则。以后有机会再研究更深层次的规则。


我使用docker构建,已经将构建代码放到GitHub上了。是alpine镜像更加轻量级。

https://github.com/kejilion/docker/blob/main/nginx/Dockerfile-waf

而大家其实不用了解那么多只需要改下自己的配置,更新一下nginx就可以启用web防火墙了。非常简单,


LDNMP环境开启WAF方法

先修改专用kjlion仓库的nginx镜像,之前我们都用的nginx官方的。但官方不会集成我们想要的压缩和waf功能。所以我就自己编译了。改/home/web/docker-compose.yml文件,nginx镜像拉取位置改成kjlion/nginx。如下图。


在接下来复制代码到/home/web/nginx.conf中添加代码。

调用waf模块,开启waf,


复制代码到对应位置

load_module /etc/nginx/modules/ngx_http_modsecurity_module.so;

    modsecurity on;
    modsecurity_rules_file /etc/nginx/modsec/modsecurity.conf;


最后一步更新nginx即可。脚本进入选择10,选择37,更新NGINX即可。


然后你就开启waf了,你可以在错误日志中查看modsecurity 的拦截信息,尝试攻击网站看waf反应的日志。


结尾

如果还是不会等我出视频,再一步一步操作,回头还会细讲,怎么编译nginx集成waf,waf使用的规则集设置,什么是OWSAP ORS核心规则集。报错如何查看重要指标。什么是请求头,请求体,响应头,响应体等等。一起学习吧!

版权声明:
作者:KEJILION
链接:https://blog.kejilion.pro/modsecurity-waf/
来源:科技lion官方博客【国内版】
文章版权归作者所有,未经允许请勿转载。

THE END
分享
二维码
< <上一篇
下一篇>>