雷池WAF和寶塔面板的最低服務器要求均是1核心1GB內存,兩者同時部署,要求服務器配置最低為:
2核心、2GB內存
本文中所使用的操作系統為 Ubuntu 24 LTS。
安裝基礎環境
安裝寶塔 Docker 環境
注意:
如果使用最低配置的服務器,安裝雷池時,務必保證安裝寶塔面板之後,服務器僅部署了 NGINX 和 Docker 環境,否則其他服務器環境軟件會佔用系統內存,導致剩餘內存不足 1GB,導致雷池 WAF 安裝初始化失敗。如果你的服務器的剩餘內存足夠大,可以忽略。
安裝寶塔面板之後,在彈出的初始化推薦配置中,選擇 Docker 選項。配置階段首先僅輕量安裝 NGINX 和 Docker 環境。
安裝雷池 WAF 防火牆
完成基礎 Docker 環境的安裝之後,請不要配置其他內容,首先進入到終端,安裝雷池 WAF。
訪問雷池 WAF 的文檔,複製下面的安裝指令到終端,按下回車運行。等待下載安裝腳本運行之後,輸入“1”執行安裝操作之後,按下回車,等待腳本自動安裝雷池 WAF。需要注意的是,如果你對雷池 WAF 的安裝位置沒有特殊要求,進行安裝操作之後,輸出的安裝位置提示,按下回車,保持默認即可。如果需要自定義配置,請注意這個位置的文件夾內容為空!
自動換行
AI代碼解釋
bash -c "$(curl -fsSLk https://waf-ce.chaitin.cn/release/latest/manager.sh)"
完成安裝之後,複製好默認的用户名和密碼。雷池 WAF 的後台地址為 https://你的服務器公網IP地址:9443/ ,請注意到雲廠商的控制枱處,同樣放行9443端口。
配置寶塔環境
注意:
這裏的環境配置以 NGINX 和 PHP 環境為例,如果你需要 Tomcat 和 NGINX 一起使用,建議將本教程中 NGINX 的監聽端口從 8080 修改到 8081 端口,避免 NGINX 端口和 Tomcat的 8080 端口出現衝突。其他的服務也是一樣的,需要修改默認的端口,避免出現衝突。
創建一個 NGINX 網站並且進行配置
寶塔面板的 NGINX 配置文件的生成,需要你首先創建一個 NGINX 網站才會生成和生效,因此你需要回到寶塔面板,創建一個網站。
完成網站的創建之後,點擊網站的【設置】功能,進入【配置文件】信息卡,修改默認監聽的端口,從 80 端口,修改為一個非 80 端口,例如 8080 端口(如果未來要使用 Tomcat,請設置為 8081 端口)。
配置 NGINX 和 PHP 的默認監聽端口
完成設置之後保存設置,並且進入文件,訪問下面的寶塔面板的環境默認 NGINX 配置文件目錄,雙擊默認生成的 0.default.conf 和 phpfpm_status.conf 默認配置文件。
自動換行
AI代碼解釋
/www/server/panel/vhost/nginx/
修改默認的 NGINX 配置,將監聽端口修改為 8080 端口,監聽的範圍從全部監聽修改為僅監聽本地服務器傳入的請求 127.0.0.1,避免外部訪問NGINX,繞過 WAF 直接訪問 NGINX(如果你使用的是 Tomcat 也需要修改監聽的範圍,從全部監聽修改為只監聽 127.0.0.1 傳入的請求,避免 WAF 繞過)。
修改 PHP 的配置文件,把監聽的端口修改為和 NGINX 一致的 8080 端口,否則會導致 PHP 項目異常。
重啓 NGINX 使得配置生效
保存配置之後,務必重啓 NGINX 軟件,使得配置生效。
添加雷池應用
注意:
務必需要注意的是,寶塔面板創建的網站訪問,都是在服務器內部完成轉發的,不會暴露到外網,也就不需要配置寶塔面板的 SSL 了,這就相當於,你從家的廚房走到客廳,開啓 SSL 會導致內部迴環代理出現異常,同時消耗系統性能。因此,完成雷池 WAF 的部署之後,防護應用 SSL 的部署,只需要在雷池位置配置即可。
返回到雷池 WAF 創建一個應用,填寫的域名和寶塔面板的網站域名一致,上游服務器輸入為 http://127.0.0.1:8080 ,此時雷池 WAF 處會提示一個對鈎圖標。説明寶塔的配置已經生效。
之後創建網站等,請注意,都需要修改網站【設置】的【配置文件】當中的監聽端口,和NGINX的默認監聽端口一致,PHP的配置就不要修改了,因為後續安裝 PHP 之後,會調用我們已經配置好的文件,就不會監聽 80 端口了。
務必注意,部署完成之後,不要開啓面板內的 SSL 功能,雷池 WAF 對本地服務器的通信不會被外部竊聽,就不用開啓 SSL 了。內部迴環的 SSL 配置會很複雜,並且嚴重消耗性能,並無必要。