Linux 寶塔面板免費版開啟 waf 防火牆的方法


寶塔面板在 6.x 之前的版本中自帶了 Nginx 防火牆功能(Nginx管理 > 過濾器),到了 6.x 之后,,,為了推行收費版的防火牆插件,寶塔官方把這個免費的防火牆入口給隱藏了。今天,就來說說如何開啟這個隱藏的 Nginx 防火牆!

方法

1、進入寶塔面板,打開 軟件管理 > Nginx > 設置 > 配置修改;

2、找到大約在第 13 行的 #include luawaf.conf;,去掉前面的 # 符號(“#”代表注釋),保存並重啟 Nginx。

3、恭喜你,已經成功開啟了防火牆!可以試着訪問 http://你的網址/?id=../etc/passwd,頁面會彈出攔截提示,如下圖:

那么問題來了:該怎么自定義這個防火牆的防護規則呢?

答案還是在寶塔面板里面,打開面板的文件管理,進入 /www/server/nginx/waf 目錄,里面的 config.lua 文件就是防火牆的配置文件。每一項的具體含義如下所示:

RulePath = "/www/server/panel/vhost/wafconf/"   --waf 詳細規則存放目錄(一般無需修改)

attacklog = "on"                                --是否開啟攻擊日志記錄(on 代表開啟,off 代表關閉。下同)

logdir = "/www/wwwlogs/waf/"                    --攻擊日志文件存放目錄(一般無需修改)

UrlDeny="on"                                    --是否開啟惡意 url 攔截

Redirect="on"                                   --攔截后是否重定向

CookieMatch="off"                               --是否開啟惡意 Cookie 攔截

postMatch="off"                                 --是否開啟 POST 攻擊攔截

whiteModule="on"                                --是否開啟 url 白名單

black_fileExt={"php","jsp"}                     --文件后綴名上傳黑名單,如有多個則用英文逗號分隔。如:{"后綴名1","后綴名2","后綴名3"……}

ipWhitelist={"127.0.0.1"}                       --白名單 IP,如有多個則用英文逗號分隔。如:{"127.0.0.1","127.0.0.2","127.0.0.3"……} 下同

ipBlocklist={"1.0.0.1"}                         --黑名單 IP

CCDeny="off"                                    --是否開啟 CC 攻擊攔截

CCrate="300/60"                                 --CC 攻擊攔截閾值,單位為秒。"300/60" 代表 60 秒內如果同一個 IP 訪問了 300 次則拉黑

配置文件中,RulePath 項對應的文件夾里存放的是具體的攔截規則。打開這個文件夾,可以看到里面有一些無后綴名的規則文件。

其中每一個文件的作用如下:

args        --GET 參數攔截規則

blockip     --無作用

cookie      --Cookie 攔截規則

denycc      --無作用

post        --POST 參數攔截規則

returnhtml  --被攔截后的提示頁面(HTML)

url         --url 攔截規則

user-agent  --UA 攔截規則

whiteip     --無作用

whiteurl    --白名單網址

這些文件里,除了 returnhtml(攔截提示頁面)以外,其它的內容都最好不要隨意改動,除非你正則學的比較好否則很容易改出問題來。

如果改動了其中的內容,需要要重啟 Nginx 才會生效

本文參與騰訊雲自媒體分享計划,歡迎正在閱讀的你也加入,一起分享。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM