网站配置雷池防火墙

雷池简介

什么是 WAF

WAF 是 Web Application Firewall 的缩写,也被称为 Web 应用防火墙。区别于传统防火墙,WAF 工作在应用层,对基于 HTTP/HTTPS 协议的 Web 系统有着更好的防护效果,使其免于受到黑客的攻击。

什么是雷池

雷池是长亭科技耗时近 10 年倾情打造的 WAF,核心检测能力由智能语义分析算法驱动。

Slogan: 不让黑客越雷池半步。

为什么是雷池

便捷性
采用容器化部署,一条命令即可完成安装,0 成本上手

安全配置开箱即用,无需人工维护,可实现安全躺平式管理

安全性
首创业内领先的智能语义分析算法,精准检测、低误报、难绕过

语义分析算法无规则,面对未知特征的 0day 攻击不再手足无措

高性能
无规则引擎,线性安全检测算法,平均请求检测延迟在 1 毫秒级别

并发能力强,单核轻松检测 2000+ TPS,只要硬件足够强,可支撑的流量规模无上限

高可用
流量处理引擎基于 Nginx 开发,性能与稳定性均可得到保障

内置完善的健康检查机制,服务可用性高达 99.99%

WAF 部署架构
下图是一个简单的网站流量拓扑,外部用户发出请求,经过网络最终传递到网站服务器。

拓扑图

此时,若外部用户中存在恶意用户,那么由恶意用户发出的攻击请求也会经过网络最终传递到网站服务器。

一、安装建站面板

由于我对宝塔的排斥,这里我用MW面板。

一键安装脚本

curl -fsSL https://cdn.jsdelivr.us/gh/midoks/mdserver-web@latest/scripts/install.sh | bash

二、新建站点

1、前往/www/server/web_conf/nginx/vhost打开0.nginx_status.conf文件,将端口改成除80以外的任意端口。如图所示,我改成了8080

修改配置文件

2、添加站点,在添加域名的时候,在后面加上:8081(这个端口你随意设置),然后点击提交,如图

设置

3、在申请好SSL证书后,在网站域名设置里把443端口改成其他任意端口。并前往/root/.acme.sh/找到匹配你域名的文件夹,进去下载证书。后面要用到。

二、安装雷池防火墙

bash -c "$(curl -fsSLk https://waf-ce.chaitin.cn/release/latest/setup.sh)"

如果你没有安装docker会提示缺少 Docker 环境,按“Y”进行安装 Docker

docker安装

在docker安装完成后会继续要求输入安装雷池的目录,默认即可,直接按“Y”进行安装

docker安装

安装完成后会出现下图,ip:9443 进行访问雷池后台,如果打不开,去建站面板的安全放行9443端口。

安装完成

进行后台页面的时候要求使用TOTP 的认证软件(腾讯身份验证器、谷歌身份验证器、微软身份验证器、FreeOTP)任选其一扫码绑定,没有软件的自己去手机的应用商店下载。然后输入动态口令登陆。

OTP
口令

三、配置雷池防火墙

1、如图:点击防护站点-添加站点

添加站点

2、域名:填写你在建站面板添加的域名;端口:80和443,证书:上传之前下载的证书文件,上游服务器:http://127.0.0.1:8081(这个8081就是你在建站面板添加站点时候在域名后面的端口),然后提交。

注意端口

四、验证是否成功

在浏览器输入你的站点域名进行访问,如果出现拦截则配置成功,如:https://tset.com/?id=1%20AND%201=1

验证

Comments | 11 条评论

  • Any生活志

    这用的不是80和443端口,实际使用是不是得有一台单独服务器跑这个WAF?它是否支持地区白名单?

  • 未来往事

    这个不收费嘛?看起来不错,不知道以后会不会在拦截时加广告

  • 灰常记忆

    好用么? 有时间可以折腾下

  • ayiya

    免费的 用过 不过一般用处不大:&(蛆音娘_偷看)

  • 夏日博客

    一个成熟的站点是需要配置防火墙的。

  • 高先生笔记

    又学到知识啦:@(赞一个)

  • 挺好用的,但是我记得安装包要5G吧,小容量服务器负担不起:&(蛆音娘_偷看)

  • 刘郎

    前两天我又重新弄了一遍,总结出一个道理:想要让雷池的作用发挥到极致,不要用同一个服务器部署(网站服务器和部署雷池的服务器最好是两个独立的服务器)

消息盒子
# 您有5条未读消息 #
# 您需要首次评论以获取消息 #
# 您需要首次评论以获取消息 #

只显示最新10条未读和已读信息