欢迎光临散文网 会员登陆 & 注册

家用免费开源WAF部署

2023-04-12 22:55 作者:AceDuke  | 我要投稿

        家里群晖做了DDNS,页面直接暴露在公网上,比较危险,想加点免费的安全防护,看看是否有人攻击,扫描或者爬虫啥的。

    上网搜了下免费的waf,发现 httpwaf 带页面并且部署比较简单,所以先部署上试试,感谢项目作者,如有侵权,请联系我删除。

项目地址:   https://gitee.com/httpwaf/httpwaf

全流程参考项目中使用手册进行部署

部署环境:群晖DS920+自带virtual machine manager,起centos

起虚拟机不多比比了,进后台,上传项目文件

加执行权限

chmod +x himonitor

关闭防火墙,不然后面访问不到管理端口,并且影响流量代理

service firewalld stop

开始运行下载程序

./himonitor

跑完以后,会在前台持续运行程序,不要退,开网页访问页面

http://IP:9999/

登录用户名密码 admin admin

可以登录,说明第一阶段没有问题了

返回ssh终端,ctrl z中断程序,采用后台运行模式进行长久运行

后台模式运行:   

./himonitor daemon

界面配置部分:

进服务器设置点编辑

HTTP配置:修改web服务器IP和端口,保存

解释一下这个图的内容:

1、占用端口80:可以修改,为waf代理原网页后的需要去访问端口

2、WEB服务器IP:原网页的IP地址

WEB服务器端口:原网页的端口

假设:waf的管理IP为A,管理端口9999,占用端口80;原本网页的地址为B,端口为5000

那么配置完后,此时访问”http://A:80“就可以过waf防护

访问”http://B:5000“就可以不过waf直接进行访问


HTTPS配置:

1、占用端口5001:可以修改,为waf代理原网页后的需要去访问端口

2、WEB服务器IP:原网页的IP地址

3、WEB服务器端口:注意这里要写原网页的HTTP的端口!不要直接写HTTPS的端口

配置相应的ssl证书,这里其实是一个SSL加载的功能,也就是说原本网页不支持ssl,可以通过waf进行ssl加载,实现访问https的网址。

这里的证书是需要带公钥+私钥进行合成的,具体方法如下:

去申请SSL证书的地方下载完整的证书文件,包括公钥私钥,我的是阿里云的域名,申请的免费的ssl证书:

阿里云控制台搜索”SSL

点左侧SSL证书,免费证书,进行购买或者下载之前申请的证书

下载选择Nginx类型:

打开压缩包里有俩文件,新建txt,合并内容pem文件内容在前,回车换行后贴入key文件内容:

合并后:

文件后缀改为.pem

在waf上进行上传即可

路由器映射:

只映射waf地址+waf的网页代理端口

如我这里只映射A:5001

注意事项:

1、严禁将waf的IP地址设为DMZ或者全端口映射,waf业务IP和管理IP相同,只是走了不同的端口,将管理端口映射出去危险极大

2、服务器ssl证书、私钥严禁外发,其他人拿到后可进行流量解密

3、waf部署的服务器记得关闭防火墙,不然管理口还有业务端口可能访问不到

4、docker 直接起centos也可以正常部署该项目,但我9999端口已有其他服务,所以未采用docker进行部署


家用免费开源WAF部署的评论 (共 条)

分享到微博请遵守国家法律