天天看點

nginx安裝ngx_lua_waf防護

ngx_lua_waf基于ngx_lua的web應用防火牆,使用起來簡單,高性能和輕量級。

防止sql注入,本地包含,部分溢出,fuzzing測試,xss,SSRF等web攻擊

防止svn/備份之類檔案洩漏

防止ApacheBench之類壓力測試工具的攻擊

屏蔽常見的掃描黑客工具,掃描器

屏蔽異常的網絡請求

屏蔽圖檔附件類目錄php執行權限

防止webshell上傳

1、下載下傳ngx_devel_kit

2、下載下傳lua-nginx-module

3、安裝luajit

4、導入環境變量

5、編譯nginx子產品(注意增加子產品不需要make install)

6、下載下傳ngx_lua_waf

7、在nginx.conf的http字段内添加以下内容

8、最後重新開機nginx(reload也可以的)

9、驗證(看到如下圖即表示配置成功)

nginx安裝ngx_lua_waf防護

RulePath = "/usr/local/nginx/conf/waf/wafconf/"

--規則存放目錄

attacklog = "off"

--是否開啟攻擊資訊記錄,需要配置logdir

logdir = "/usr/local/nginx/logs/hack/"

--log存儲目錄,該目錄需要使用者自己建立,切需要nginx使用者的可寫權限

UrlDeny="on"

--是否攔截url通路(如果你用了phpmyadmin,開啟此項會有問題)

Redirect="on"

--是否攔截後重定向

CookieMatch = "on"

--是否攔截cookie攻擊

postMatch = "on"

--是否攔截post攻擊(如果開啟,可能會導緻網站背景無法正常上傳檔案)

whiteModule = "on"

--是否開啟URL白名單

black_fileExt={"php","jsp"}

--填寫不允許上傳檔案字尾類型

ipWhitelist={"127.0.0.1"}

--ip白名單,多個ip用逗号分隔

ipBlocklist={"1.0.0.1"}

--ip黑名單,多個ip用逗号分隔

CCDeny="on"

--是否開啟攔截cc攻擊(需要nginx.conf的http段增加lua_shared_dict limit 10m;)

CCrate = "100/60"

--設定cc攻擊頻率,機關為秒.

--預設1分鐘同一個IP隻能請求同一個位址100次

html=[[Please go away~~]]

--警告内容,可在中括号内自定義

備注:不要亂動雙引号,區分大小寫