- 下载 https://github.com/corazawaf/libcoraza libcoraza 并编译
- 使用nginx coraza connector 配置coraza WAF https://github.com/corazawaf/coraza-nginx
- 重新编译nginx并添加coraza WAF配置
./configure --user=httpd --group=httpd --with-http_ssl_module --add-dynamic-module=/path/to/coraza-nginx --with-compat
- 重新安装nginx
- 下载CRS 的policy https://github.com/coreruleset/coreruleset
- 添加nginx配置启用 WAF, 可以在http, server block配置对应的WAF规则
coraza on;
coraza_transaction_id "webserver-$request_id";
coraza_rules_file /etc/coraza/main.conf;
其中main.conf为配置的WAF规则例如
Include /etc/coraza/rules/REQUEST-913-SCANNER-DETECTION.conf
Include /etc/coraza/rules/REQUEST-922-MULTIPART-ATTACK.conf
- 重新启动nginx加载WAF,查看nginx的error.log确定WAF规则加载完成
发表回复