Nginx集成ModSecurity Web应用防火墙

介绍

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

前言

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

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

图片[1]-Nginx集成ModSecurity Web应用防火墙-极客小站

我使用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。如下图。

图片[2]-Nginx集成ModSecurity Web应用防火墙-极客小站
图片[3]-Nginx集成ModSecurity Web应用防火墙-极客小站

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

图片[4]-Nginx集成ModSecurity Web应用防火墙-极客小站

调用waf模块,开启waf,

图片[5]-Nginx集成ModSecurity Web应用防火墙-极客小站

复制代码到对应位置

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

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

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

图片[6]-Nginx集成ModSecurity Web应用防火墙-极客小站

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

图片[7]-Nginx集成ModSecurity Web应用防火墙-极客小站
图片[8]-Nginx集成ModSecurity Web应用防火墙-极客小站

结尾

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

转载kejilion

© 版权声明
THE END
喜欢就支持一下吧
点赞8 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容