目 录CONTENT

文章目录

不让黑客越雷池一步:雷池WAF的Docker安装与基本使用

过客
2026-05-16 / 0 评论 / 1 点赞 / 2 阅读 / 0 字

开源 Web 应用防火墙,老牌安全厂商长亭出品,语义分析引擎,零基础上手

一、前言

自上次博客网站流量异常后,内网穿透自用的其他网站也出现流量异常的情况了,于是想加个防火墙,网上搜了一下,发现WAF有挺多的,下面根据网上数据简单对比的下:

WAF 项目 防护核心 易用性/UI 部署方式 资源占用 误报率/自定义 主要适用环境 优缺点总结
雷池 (SafeLine) 语义分析 + 行为检测 + Bot 高(友好 Dashboard) Docker 一键 中低 低/中等 个人站、中小企业 Web 应用 平衡最佳,防护强、误报低;适合追求开箱即用。
南墙 WAF (uuWAF) 语义 + AI + 3层纵深防御(流量/系统/运行时) 中高 Docker / 本地 低/高(Lua 扩展) 中小企业、需要高性能/0day 防护 工业级免费,扩展性强;适合有一定运维能力的团队。
堡塔云 WAF (aaWAF) 语义分析 + 正则 + CC 防御 高(可视化) Docker / 宝塔 中/高(自定义规则强) 个人/中小企业、宝塔用户 轻量、ARM/国产支持好;适合低资源服务器或宝塔生态。
BunkerWeb Nginx + ModSecurity + 默认安全规则 高(Web UI) Docker / K8s 中/中等 云原生、需要“安全默认”场景 下一代易用型,集成多安全模块;适合 DevOps/Kubernetes。
ModSecurity + OWASP CRS 签名规则(经典) 低(无原生 UI) 模块集成 / Docker 低-中 高/极高(需调优) 传统服务器、合规需求高 成熟稳定,规则丰富;适合老鸟或企业自定义场景。
Coraza WAF Go 语言 ModSecurity 兼容 云原生插件 / Docker 中/高 Kubernetes、微服务、高性能需求 现代轻量替代 ModSecurity;适合云原生架构。

详细适用环境推荐

  • 个人博客 / 小型网站 / 低资源服务器​:
    • 首选:堡塔云 WAF 或 ​雷池​​(部署简单、资源占用低、界面友好)。
    • 备选:BunkerWeb(默认安全配置好)。
  • 中小企业 Web 应用 / 需要强 Bot/CC 防护​:
    • 首选:​雷池​​(误报低、语义分析强)或 ​南墙 WAF​(纵深防御、0day 能力突出)。
    • 堡塔云 WAF 也很合适,尤其已有宝塔面板。
  • 云原生 / Kubernetes / 微服务环境​:
    • 首选:BunkerWeb 或 ​Coraza​(高性能、易集成 Ingress / sidecar)。
    • Coraza 特别适合追求极致性能和现代化的场景。
  • 传统服务器 / 遗留系统 / 高自定义需求​:
    • ModSecurity + CRS​:经典选择,可深度定制规则,适合安全团队。
    • 南墙或 Coraza 作为升级选项。
  • 合规 / 审计严格的企业​:
    • ModSecurity / Coraza(规则可审计)或南墙(工业级)。

因为是个人小网站,这里就选择了​雷池 SafeLine WAF​,来自安全厂商长亭科技,Docker 一键部署,智能语义分析,误报率低到 0.07%。

二、环境要求

配置项 最低要求 推荐配置
CPU 1 核 4 核
内存 1 GB 8 GB
磁盘 5 GB 50 GB
系统 Linux (x86_64/arm64,需支持 SSSE3) CentOS 7+ / Ubuntu 20.04+ / Debian 11+
软件 Docker 20.10.14+ , Docker Compose 2.0.0+

检查命令:

# 查看内核版本
uname -a

# 查看 CPU 架构
uname -m

# 确认 SSSE3 指令集支持(必须)
lscpu | grep -i ssse3

# 查看 Docker 版本
docker --version
docker compose version

三、安装雷池

一行命令,全自动:

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

安装过程会询问:

  1. 选择动作:1 安装
  2. Docker 未安装时自动帮你装(选 y
  3. 安装目录:默认 /data/safeline,可直接回车

正常输出示例:

记住控制台地址和初始密码。

四、初始化配置

4.1 放行管理端口

# Ubuntu/Debian
sudo ufw allow 9443/tcp
sudo ufw reload

# CentOS/RHEL
sudo firewall-cmd --permanent --add-port=9443/tcp
sudo firewall-cmd --reload

4.2 访问控制台

浏览器打开:https://<服务器IP>:9443/

首次访问会有证书警告,点"继续访问"即可。

登录凭据:

  • 用户名:admin
  • 密码:
    docker exec safeline-mgt cat /run/secrets/password
    

4.3 重置管理员密码

如果忘记密码,执行:

docker exec safeline-mgt resetadmin
# 输出:New password: 9Xp!K4mz%vR8

五、基本使用

5.1 添加证书

  1. 控制台点击左侧菜单 「通用设置」→「添加证书」
  2. 支持已有证书,和从Let's Encrypt自动申请证书

5.2 添加防护站点

  1. 控制台点击左侧菜单 「防护应用」→「添加应用」
  2. 填写:
    • 域名​:如 pan.zngw.cc
    • 端口​:如:80、443
    • 证书​:选择上步添加的证书
    • 上游服务器​:原 Web 服务地址,如 http://192.168.1.112:5244
    • 应用名称​:随便写
  3. 点击确认,生成雷池 IP

5.3 配置 DNS 解析

将域名的 A/AAAA 记录 指向雷池服务器 IP,让流量先经过雷池再回源。

用户请求 → 雷池WAF(检测) → 正常流量 → 源站
                      ↓
               恶意流量(拦截)

5.3 开启防护策略

在站点配置中启用:

防护项 说明
智能防护模式 基于语义分析,自动识别攻击
CC 攻击防护 限制单 IP 请求频率,抵御 CC
人机验证 放行真人,拦截爬虫/扫描器
暴力破解防护 自动封禁高频暴力破解 IP

5.4 查看攻击日志

控制台 → ​**「日志」→「攻击日志**​,可以看到:

  • 攻击类型(SQL 注入、XSS 等)
  • 来源 IP
  • 请求详情
  • 处理结果(拦截/放行)

六、常用运维命令

# 查看容器状态
docker compose ps

# 查看实时日志
docker compose logs -f

# 重启雷池
docker compose restart

# 升级雷池
docker compose pull && docker compose up -d

# 卸载雷池
docker compose down -v
docker rm -f $(docker ps -aq)

七、生产环境建议

  1. 修改默认密码​:安装后立即修改 admin 密码
  2. 资源调配​:编辑 docker-compose.yml,给 safeline-mgt 增加 CPU/内存限制
  3. 数据持久化​:生产环境建议配置数据卷,避免数据丢失
  4. 先测试后上线​:用流量镜像功能在测试环境验证规则,确认无误再切生产
  5. 定期更新​:关注官方版本更新,及时升级
1
  1. 支付宝打赏

    qrcode alipay
  2. 微信打赏

    qrcode weixin

评论区