下载naxsi
wget https://github.com/nbs-system/naxsi/archive/untagged-afabfc163946baa8036f.tar.gz
tar zxvf untagged-afabfc163946baa8036f.tar.gz
mv naxsi-untagged-afabfc163946baa8036f/ naxsi
编译openresty加上--add-module
./configure --prefix=/usr/local/openresty --with-http_stub_status_module --with-http_gzip_static_module --with-luajit --add-module=/usr/local/naxsi/naxsi_src
将核心规则复制到openresty的conf中
cp /usr/local/naxsi/naxsi_config/naxsi_core.rules /usr/local/openresty/nginx/conf/
自定义一个规则文件
vi /usr/local/openresty/nginx/conf/mySite.rules
内容为
#开启 naxsi
SecRulesEnabled;
#定义阻止请求的位置
DeniedUrl "/50x.html";
#CheckRules, 确定 naxsi 何时采取行动
CheckRule "$SQL >= 8" BLOCK;
CheckRule "$RFI >= 8" BLOCK;
CheckRule "$TRAVERSAL >= 4" BLOCK;
CheckRule "$EVADE >= 4" BLOCK;
CheckRule "$XSS >= 8" BLOCK;
编辑opernresty的主配置文件
vi /usr/local/openresty/nginx/conf/nginx.conf
在http中引用核心规则
在接口中引用自定义规则