重新打包了tengine,整合了開箱即用的基於lua的web應用防火牆,特別感謝agentzh和loveshell 。
由於lua屬於解釋性的指令碼語言,因此可以不用重啟nginx,就可以方便地修改lua指令碼中的規則。
二進位制軟體包內容如下
# rpm -qpl tengine-1.5.2-3.waf.el6.x86_64.rpm所謂web 應用防火牆,即waf,實際上就是乙個基於正則的黑名單,對於web請求中的不安全行為進行過濾,比如特殊的請求引數,url等。/etc/logrotate.d/nginx
/etc/nginx
/etc/nginx/browsers
/etc/nginx/conf.d
/etc/nginx/conf.d/default.conf
/etc/nginx/fastcgi_params
/etc/nginx/koi-utf
/etc/nginx/koi-win
/etc/nginx/mime.types
/etc/nginx/module_stubs
/etc/nginx/modules
/etc/nginx/nginx.conf
/etc/nginx/waf/config.lua
/etc/nginx/waf/init.lua
/etc/nginx/waf/rules.d
/etc/nginx/waf/rules.d/args
/etc/nginx/waf/rules.d/cookie
/etc/nginx/waf/rules.d/post
/etc/nginx/waf/rules.d/url
/etc/nginx/waf/rules.d/user-agent
/etc/nginx/waf/rules.d/whiteurl
/etc/nginx/waf/waf.conf
/etc/nginx/waf/waf.lua
/etc/nginx/win-utf
/etc/rc.d/init.d/nginx
/etc/sysconfig/nginx
/usr/sbin/dso-tool
/usr/sbin/nginx
/usr/share/nginx
/usr/share/nginx/html
/usr/share/nginx/html/50x.html
/usr/share/nginx/html/index.html
/var/cache/nginx
/var/log/nginx
注意:本文的waf 工作在nginx的http段,而不是server段。
假設訪問乙個不存在的檔案,本應該在server段匹配後,返回404,但是有了waf,非法訪問來不及到server段,就被攔截了,直接返回http 200 。
效果圖如下:
如果你覺得直接返回 「blocked by waf」比較暴力,
html=(從fedora 19 移植而來)
參考文章
注:附件上傳時直接加了zip字尾,無需解壓。
update 2014-08-07
發現乙個小bug,lua無法寫***日誌,改變/var/log/nginx 目錄許可權即可
chown nginx:nginx /var/log/nginx
編譯打包 帶web防火牆的tengine
重新打包了tengine,整合了開箱即用的基於lua的web應用防火牆,特別感謝agentzh和loveshell 由於lua屬於解釋性的指令碼語言,因此可以不用重啟nginx,就可以方便地修改lua指令碼中的規則。二進位制軟體包內容如下 1 2 3 4 5 6 7 8 9 10 11 12 13 ...
web防火牆和waf防火牆的區別和選擇
首先說下被很多老鳥或小白混要的一些說法,web防火牆和waf防火牆不屬於乙個東西.真的,看我解釋.web應用防火牆,屬於硬體級別防火牆.對 流量進行惡意特徵識別及防護,將正常 安全的流量回源到伺服器。避免 伺服器被惡意入侵,保障業務的核心資料安全,解決因惡意攻擊導致的伺服器效能異常問題。程式的正常,...
web防火牆和waf防火牆的區別和選擇
首先說下被很多老鳥或小白混要的一些說法,web防火牆和waf防火牆不屬於乙個東西 web應用防火牆,屬於硬體級別防火牆 對 流量進行惡意特徵識別及防護,將正常 安全的流量回源到伺服器。避免 伺服器被惡意入侵,保障業務的核心資料安全,解決因惡意攻擊導致的伺服器效能異常問題。程式的正常,強依賴的安全產品...