家用免費(fèi)開源WAF部署
????????家里群暉做了DDNS,頁面直接暴露在公網(wǎng)上,比較危險(xiǎn),想加點(diǎn)免費(fèi)的安全防護(hù),看看是否有人攻擊,掃描或者爬蟲啥的。

????上網(wǎng)搜了下免費(fèi)的waf,發(fā)現(xiàn)?httpwaf 帶頁面并且部署比較簡單,所以先部署上試試,感謝項(xiàng)目作者,如有侵權(quán),請聯(lián)系我刪除。
項(xiàng)目地址:? ?https://gitee.com/httpwaf/httpwaf

全流程參考項(xiàng)目中使用手冊進(jìn)行部署

部署環(huán)境:群暉DS920+自帶virtual machine manager,起centos

起虛擬機(jī)不多比比了,進(jìn)后臺,上傳項(xiàng)目文件

加執(zhí)行權(quán)限
chmod +x himonitor

關(guān)閉防火墻,不然后面訪問不到管理端口,并且影響流量代理
service firewalld stop

開始運(yùn)行下載程序
./himonitor

跑完以后,會在前臺持續(xù)運(yùn)行程序,不要退,開網(wǎng)頁訪問頁面
http://IP:9999/
登錄用戶名密碼 admin admin

可以登錄,說明第一階段沒有問題了
返回ssh終端,ctrl z中斷程序,采用后臺運(yùn)行模式進(jìn)行長久運(yùn)行
后臺模式運(yùn)行:???
./himonitor daemon


界面配置部分:
進(jìn)服務(wù)器設(shè)置點(diǎn)編輯

HTTP配置:修改web服務(wù)器IP和端口,保存

解釋一下這個圖的內(nèi)容:
1、占用端口80:可以修改,為waf代理原網(wǎng)頁后的需要去訪問端口
2、WEB服務(wù)器IP:原網(wǎng)頁的IP地址
WEB服務(wù)器端口:原網(wǎng)頁的端口
假設(shè):waf的管理IP為A,管理端口9999,占用端口80;原本網(wǎng)頁的地址為B,端口為5000
那么配置完后,此時(shí)訪問”http://A:80“就可以過waf防護(hù)
訪問”http://B:5000“就可以不過waf直接進(jìn)行訪問
HTTPS配置:

1、占用端口5001:可以修改,為waf代理原網(wǎng)頁后的需要去訪問端口
2、WEB服務(wù)器IP:原網(wǎng)頁的IP地址
3、WEB服務(wù)器端口:注意這里要寫原網(wǎng)頁的HTTP的端口!不要直接寫HTTPS的端口

配置相應(yīng)的ssl證書,這里其實(shí)是一個SSL加載的功能,也就是說原本網(wǎng)頁不支持ssl,可以通過waf進(jìn)行ssl加載,實(shí)現(xiàn)訪問https的網(wǎng)址。

這里的證書是需要帶公鑰+私鑰進(jìn)行合成的,具體方法如下:
去申請SSL證書的地方下載完整的證書文件,包括公鑰私鑰,我的是阿里云的域名,申請的免費(fèi)的ssl證書:
阿里云控制臺搜索”SSL“

點(diǎn)左側(cè)SSL證書,免費(fèi)證書,進(jìn)行購買或者下載之前申請的證書

下載選擇Nginx類型:

打開壓縮包里有倆文件,新建txt,合并內(nèi)容pem文件內(nèi)容在前,回車換行后貼入key文件內(nèi)容:


合并后:

文件后綴改為.pem
在waf上進(jìn)行上傳即可

路由器映射:
只映射waf地址+waf的網(wǎng)頁代理端口
如我這里只映射A:5001

注意事項(xiàng):
1、嚴(yán)禁將waf的IP地址設(shè)為DMZ或者全端口映射,waf業(yè)務(wù)IP和管理IP相同,只是走了不同的端口,將管理端口映射出去危險(xiǎn)極大
2、服務(wù)器ssl證書、私鑰嚴(yán)禁外發(fā),其他人拿到后可進(jìn)行流量解密
3、waf部署的服務(wù)器記得關(guān)閉防火墻,不然管理口還有業(yè)務(wù)端口可能訪問不到
4、docker 直接起centos也可以正常部署該項(xiàng)目,但我9999端口已有其他服務(wù),所以未采用docker進(jìn)行部署
