雷池WAF(SafeLine WAF)是由长亭科技研发的一款先进的Web应用防火墙产品。它旨在为网站和Web应用提供强大的安全防护,抵御各类网络攻击,保障业务的稳定与数据的安全,以下是官方网站:

雷池 WAF | 下一代 Web 应用防火墙 | 免费使用

a.雷池WAF的主要特点和功能介绍:

1.全面的攻击防护

  • OWASP Top 10 防护:有效防御SQL注入、XSS跨站脚本、CSRF跨站请求伪造、文件包含、命令执行等常见Web攻击。

  • CC攻击防护:通过智能算法识别并拦截恶意的高频访问(如爬虫、刷单、撞库等),保障服务器资源不被耗尽。

  • Bot管理:区分善意爬虫(如搜索引擎)与恶意Bot,对后者进行阻断或挑战(如验证码),保护业务逻辑。

  • API安全防护:针对日益增长的API接口,提供专门的规则和策略,防止API滥用和数据泄露。

2.部署灵活

  • 多种形态:支持云WAF、硬件设备、软件部署以及SaaS化服务等多种交付模式,满足不同客户的需求。

  • 混合云/多云支持:可统一管理分布在不同环境中的Web资产。

3.高性能与高可用

  • 基于高性能架构设计,处理延迟极低,不影响正常用户访问体验。

  • 支持集群部署和负载均衡,保障高可用性。

4.可视化与易用性

  • 提供直观的管理控制台,实时展示攻击态势、流量统计、安全事件等。

  • 支持详细的日志记录和审计,便于安全分析和合规要求。

5.合规支持

  • 帮助企业满足等保2.0、GDPR、PCI-DSS等国内外安全合规要求。

b.雷池WAF的安装与部署:

1.安装介绍

雷池WAF有个人版和专业版,新手小白免费使用推荐个人版能够更好的掌握基础知识,当然专业版的功能更为强大如有需要可付费使用。雷池WAF部署的系统环境要求(Linux系统、Docker 20.10.14+、1核CPU/1GB内存)、三种安装方式分为(自动/手动/离线),官网系统也提供了一键安装命令和常见问题咨询渠道。

雷池文章1.jpg

根据以下命令来查看当前部署环境的相关信息

uname -m                                    # 查看指令架构
cat /proc/cpuinfo| grep "processor"         # 查看 CPU 信息
lscpu | grep ssse3                          # 确认 CPU 是否支持 ssse3 指令集
lscpu | grep avx2                          # 确认 CPU 是否支持 avx2 指令集
docker version                              # 查看 Docker 版本
docker compose version                      # 查看 Docker Compose 版本
docker-compose version                      # 查看老版本 docker-compose 版本
free -h                                     # 查看内存信息
df -h                                       # 查看磁盘信息

选择自动化安装只需执行一条命令下载雷池WAF脚本,命令执行完成即可访问

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

2.docker离线安装

如果你的设备完全无法连接互联网,可以参考这种方式安装,需在官方网站中下载WAF镜像包,然后将镜像包上传到服务器中,雷池WAF环境依赖需要docker环境部署,根据上述依赖环境需自行安装docker。

  • 离线安装docker,检查服务器中是否安装docker,如果未安装docker会提示 command not found 或类似错误。

docker --version

雷池文章2.jpg

  • 从官方或可信源下载 Docker 二进制包:https://download.docker.com/linux/static/stable/x86_64/

雷池文章3.jpg

  • 因雷池WAF环境依赖所需要下载的docker二进制包版本要大于docker-20.10.14以上,所以需要下载较高的docker版本部署环境,我所使用的是docker-20.10.18版本,将文件上传到服务器中

雷池文章4.jpg

  • 解压服务器中/opt目录下的docker-20.10.18文件

tar -xzvf docker-20.10.18.tgz

雷池文章5.jpg

  • 复制包含 Docker的二进制文件到系统目录

cp docker/* /usr/bin/
  • 验证文件已复制到系统目录

ls -l /usr/bin/docker*

雷池文章6.jpg

  • 创建 Docker.service 服务文件

tee /etc/systemd/system/docker.service > /dev/null << 'EOF'
[Unit]
Description=Docker Application Container Engine
Documentation=https://docs.docker.com
After=network-online.target firewalld.service
Wants=network-online.target
 
[Service]
Type=notify
ExecStart=/usr/bin/dockerd
ExecReload=/bin/kill -s HUP $MAINPID
LimitNOFILE=infinity
LimitNPROC=infinity
LimitCORE=infinity
TimeoutStartSec=0
Delegate=yes
KillMode=process
Restart=on-failure
StartLimitBurst=3
StartLimitInterval=60s
 
[Install]
WantedBy=multi-user.target
EOF
  • 创建 Docker 目录

mkdir -p /etc/docker
  • 创建 Docker 守护进程文件

tee /etc/docker/daemon.json > /dev/null << 'EOF'
{
  "data-root": "/var/lib/docker",
  "storage-driver": "overlay2"
}
EOF
  • 启动 Docker 服务,重新加载系统服务配置

systemctl daemon-reload
  • 启动docker服务,设置开机自启

---开启docker
systemctl start docker
---设置开机自启
systemctl enable docker
---关闭docker
systemctl stop docker
  • 查看docker服务状态是否正常启动

systemctl status docker

雷池文章9.jpg

  • 检查 Docker 版本,测试docker功能是否正常使用

docker --version
docker info
docker images

雷池文章10.jpg

  • 部署环境还需要配置docker-compose,正常有网的情况下可以直接通过该命令去下载并配置好

curl -L "https://github.com/docker/compose/releases/download/1.29.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
  • 这里因为是离线安装操作,考虑在有网的电脑中下载:https://github.com/docker/compose/releases然后将文件上传到服务器中并复制修改到bin目录中,给对应文件添加执行权限

cp docker-compose-linux-x86_64 /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose

雷池文章11.jpg

  • 查看一下version,显示有版本号那就说明安装成功了

雷池文章12.jpg

3.雷池WAF离线安装

  • 下载雷池社区版镜像包,上传到服务器中

雷池文章13.jpg

  • 执行提供的命令加载镜像

cat image.tar.gz | gzip -d | docker load

雷池文章14.jpg

  • 查看镜像是否加载完成

雷池文章15.jpg

  • 创建雷池目录,并下载 compose 编排脚本,如果没有网络可以网上下载在传输到服务器上

mkdir -p /data/safeline
cd /data/safeline
wget "https://waf-ce.chaitin.cn/release/latest/compose.yaml"

创建 .env 配置文件,配置 compose 环境变量

touch .env

SAFELINE_DIR=/data/safeline
IMAGE_TAG=latest
MGT_PORT=9443
POSTGRES_PASSWORD=yourpassword #-------(自定义密码使用数字+英文大小写组合,勿使用特殊字符)
SUBNET_PREFIX=172.22.222
IMAGE_PREFIX=swr.cn-east-3.myhuaweicloud.com/chaitin-safeline
ARCH_SUFFIX=
RELEASE=
REGION=
MGT_PROXY=0

雷池文章16.jpg

  • 如果是 ARM 服务器需要把 ARCH_SUFFIX改成 -arm

ARCH_SUFFIX=-arm
  • 安装 LTS 版本需要把 RELEASE 改成 -lts

RELEASE=-lts

雷池文章17.jpg

  • 因为是离线安装部署镜像包不需要去pull,所以直接启动雷池

cd /data/safeline
docker compose up -d #老版本启动方法
docker-compose up -d #新版本

雷池文章18.jpg

4.访问雷池控制台

  • 雷池安装成功以后,你可以打开浏览器访问 https://<safeline-ip>:9443/ 来使用雷池控制台。

注意需要对 9443 的端口放开防火墙,如果是云服务器或私人服务器部署需要自行开放其端口,我这里用的是vmware虚拟机所以直接使用firewall开启对应端口访问。

firewall-cmd --permanent --add-port=9443/tcp
firewall-cmd --reload
firewall-cmd --list-all

雷池文章19.jpg

第一次登录雷池需要初始化你的管理员账户(默认会执行),如果没有找到账户密码,手动执行以下命令即可

docker exec safeline-mgt resetadmin

命令执行完成后会随机重置 admin 账户的密码,输出结果如下

[SafeLine] Initial username:admin
[SafeLine] Initial password:**********
[SafeLine] Done

雷池文章20.jpg

雷池文章21.jpg