Nginx | WAF

防止第7层攻击,如SQLi,XSS,CSRF,LFI,RFI等。NGINX网络应用程序防火墙(WAF)建立在ModSecurity 3.0上。
ModSecurity WAF保护Web应用免受各种第7层攻击; 提供DDoS缓解,实时黑名单和审计日志记录; 并支持符合PCI-DSS 6.6标准。
https://docs.nginx.com/nginx/admin-guide/dynamic-modules/nginx-waf/
https://docs.nginx.com/nginx-waf/admin-guide/nginx-plus-modsecurity-waf-installation-logging/

Nginx动态添加modsecurity模块
1.下载编译modsecurity

git clone https://github.com/SpiderLabs/ModSecurity.git mod_security
cd mod_security
./autogen.sh  
./configure --enable-standalone-module
make
cp modsecurity.conf-recommended /etc/nginx/modsecurity.conf
cp -r mod_security/{modsecurity.conf-recommended,unicode.mapping} /etc/nginx/
sed -i 's/^SecRuleEngine DetectionOnly/SecRuleEngine on/' /etc/nginx/modsecurity.conf

2.检查nginx是否编译modsecurity模块 | 安装则跳过

#查看模块
nginx -V
configure arguments: ... --add-module=/usr/local/nginx/mod_security/nginx/modsecurity
#编译modsecurity模块
./configure [这里是原来的编译参数,通过nginx -V查看configure arguments的值] --add-module=/usr/local/nginx/mod_security/nginx/modsecurity
#编译新增的模块
make
#查看新生成的二进制文件,是否有新模块输出信息 | 有
./objs/nginx -V
#将新生成的nginx二进制文件拷贝到/usr/sbin/下 | 覆盖
cp objs/nginx /usr/sbin/nginx --backup
#执行nginx -V查看新增的模块 | 显示新增模块
nginx -V
#使用nginx -t检测是否正常 | ok
nginx -t
#没问题,执行reload重新加载 | reload
nginx -s relaod

3.下载启用OWASP规则

git clone https://github.com/SpiderLabs/owasp-modsecurity-crs.git owasp-modsecurity-crs
cp -r owasp-modsecurity-crs /etc/nginx/
cd /etc/nginx/owasp-modsecurity-crs/ 
cp crs-setup.conf.example  crs-setup.conf

编辑/etc/nginx/modsecurity.conf文件,新增
Include owasp-modsecurity-crs/crs-setup.conf
Include owasp-modsecurity-crs/rules/REQUEST....conf
Include owasp-modsecurity-crs/rules/RESPONSE....conf

4.编辑nginx.conf location / { }添加,,然后nginx -t检查语法是否有错||不能在http,server写成include modsecurity.conf

ModSecurityEnabled on;
ModSecurityConfig modsecurity.conf;

参考文章:
modSecurity规则学习(一)——配置文件 - 897807300 - 博客园
https://github.com/SpiderLabs/ModSecurity/wiki/Reference-Manual-%28v2.x%29#Installation_for_NGINX
https://github.com/SpiderLabs/ModSecurity/wiki/Compilation-recipes-for-v3.x#centos-6x
https://www.modsecurity.org/CRS/Documentation/


你可能感兴趣的:(Nginx | WAF)