Nginx+Lua的安全waf防火牆
看一下別人寫好的:https://github.com/loveshell/ngx_lua_waf
先安裝git:yum -y install git
在/opt/download下執行:git clone https://github.com/loveshell/ngx_lua_waf.git
這里如果不能克隆的話,手動下載再上傳至服務器
把克隆下來的ngx_lua_waf下的所有文件,移到/etc/nginx/waf下
修改配置文件中的兩個路徑
wafconf下的文件就是對個位置的攔截規則,可以根據實際情況增加修改
集成這個lua腳本:在nginx.conf里面加上以下四行配置
lua_package_path "/etc/nginx/waf/?.lua";
lua_shared_dict limit 10m;
init_by_lua_file /etc/nginx/waf/init.lua;
access_by_lua_file /etc/nginx/waf/waf.lua;
檢查語法,並重載
nginx -tc /etc/nginx/nginx.conf
nginx -s reload -c /etc/nginx/nginx.conf
訪問之前SQL注入的頁面,再次注入SQL,還是成功,這是因為防火牆規則里面沒有配此規則
新加一條規則:\sor\s+
重啟一下nginx
再次注入SQL,被攔截
正常用戶可以登錄
waf防火牆之CCDeny:用於控制單個IP訪問頻率
重啟nginx
先試一下訪問一個配好的url,看能不能訪問,不能訪問就看看哪里配錯了
跑個並發,再訪問url,就會返回503,即已經被CCDeny控制住了