从配置到运行:雷池 WAF 全场景常见问题排查手册(运维必备)
字数 2445 2025-09-01 11:26:10
雷池 WAF 全场景常见问题排查手册
目录
服务启停管理
停止雷池 WAF 服务
cd /data/safeline
docker compose down
重启雷池 WAF 服务
cd /data/safeline
docker compose down && docker compose up -d
重启特定容器
docker restart safeline-tengine # 重启tengine容器
docker restart safeline-mgt # 重启管理容器
安装与卸载
安装目录
默认安装目录为 /data/safeline,可通过以下命令查看:
docker compose ls
卸载雷池 WAF
- 停止服务:
cd /data/safeline
docker compose down
- 删除安装目录:
rm -rf /data/safeline
注意:不要手动kill雷池容器,应使用docker compose down命令正常停止服务。
自定义安装路径
修改安装目录下的.env文件中的SAFELINE_DIR变量。
目录与密码管理
默认密码
安装时会随机生成初始化密码,显示在安装终端的输出中。
重置管理员密码
docker exec safeline-mgt resetadmin
部署模式说明
社区版支持情况
- 不支持透明代理部署模式
- 不支持透明桥接部署模式
- 不支持路由代理部署模式
企业版支持情况
企业版硬件产品支持上述所有部署模式,需联系长亭销售获取详细信息。
防护能力说明
DDoS防护
- 可防护基于HTTP协议的CC攻击
- 可防护HTTP慢速攻击
- 不能防护非HTTP协议的DDoS攻击
WebSocket支持
- 默认支持WebSocket流量转发
- 暂不支持检测WebSocket中的攻击行为
攻击请求放行原因
当检测引擎高负载或请求太复杂导致检测超时时,雷池会默认放行这些请求。解决方案:
- 将检测引擎配置为最大性能模式
- 升级硬件配置
系统兼容性
操作系统
- 仅支持Linux服务器
- 不支持Windows部署
Docker要求
- 推荐使用最新版Docker
- 需要Docker Compose V2
日志配置
开启访问日志
- 修改nginx配置:
vim /data/safeline/resources/nginx/nginx.conf
- 去掉第98行注释,删除第99行内容
- 检查配置:
docker exec safeline-tengine nginx -t
- 重载配置:
docker exec safeline-tengine nginx -s reload
访问日志将保存在/data/safeline/logs/nginx目录下。
清理日志
docker exec safeline-mgt cleanlogs
注意:此操作会清除所有日志信息且不可恢复。
错误排查指南
常见错误及解决方案
1. Docker镜像拉取失败
解决方案:
- 更换Docker镜像源
- 配置Docker代理
- 切换至华为镜像仓库:
修改.env文件中的IMAGE_PREFIX字段为:IMAGE_PREFIX=swr.cn-east-3.myhuaweicloud.com/chaitin-safeline
2. nginx: [emerg] invalid IPv6 address in resolver
解决方案:
- 删除
/etc/resolv.conf中对应的IPv6地址 - 重启tengine容器:
docker restart safeline-tengine
3. ERROR: Cannot connect to the Docker daemon
解决方案:
安装Docker:
curl -fLsS https://get.docker.com/ | sh
4. failed to create network safeline-ce
解决方案:
重启docker服务:
sudo systemctl restart docker
# 或
sudo service docker restart
5. Address already in use
解决方案:
- 查看冲突端口:
ss -antlp | grep <端口号>
- 停止占用端口的服务或修改雷池配置
雷池默认占用端口:
- 9443:管理端(可自定义)
- 65443:内置服务(不可修改)
6. Operation not permitted
解决方案:
- 升级Docker到最新版本
- 或配置seccomp:
security_opt:
- seccomp=./seccomp.json
7. database disk image is malformed
解决方案:
rm -rf /data/safeline/resources/luigi/*
docker restart safeline-mgt
端口冲突处理
修改管理端口
- 确认新端口未被占用
- 修改
.env文件,添加:
MGT_PORT=新端口号
- 重启服务:
docker compose down && docker compose up -d
数据迁移与备份
备份配置
- 停止容器
- 备份整个安装目录:
cp -r /data/safeline /backup/safeline_backup
数据迁移
- 在新环境安装相同版本的雷池
- 停止新旧环境的容器
- 将旧环境的safeline目录覆盖新环境的目录
- 在新环境启动服务
证书管理
重置管理证书
docker exec safeline-mgt app/mgt-cli reset-cert
证书续订
- 证书名称不会改变
- 自动续订需要确保能访问Let's Encrypt服务器:
acme-v02.api.letsencrypt.org:443
性能配置建议
推荐配置
| 业务规模 | 推荐配置 |
|---|---|
| QPS < 50, 流量 < 1Mbps | 1C2G |
| QPS < 200, 流量 < 5Mbps | 2C4G |
| QPS < 800, 流量 < 20Mbps | 4C8G |
| 更高流量 | 参考企业版选型 |
最低配置
- 1C1G(仅限测试环境)
高级配置
源IP获取配置
- 当雷池前有CDN/LB等设备时:
- 确保前置设备将真实IP通过X-Forwarded-For或X-Real-IP传递
- 修改雷池配置:
- 在控制台"防护站点-全局配置"中
- 将"源IP获取方式"改为"从HTTP Header中获取"
- 填写对应的Header字段
上游服务器获取源IP
对于Nginx上游服务器,添加配置:
set_real_ip_from 0.0.0.0/0;
real_ip_header X-Forwarded-For;
需要确保编译Nginx时启用了ngx_http_realip_module模块。
自定义Nginx配置
- 修改
resources/nginx/proxy_params文件 - 或使用
/etc/nginx/custom_params/backend_XXX进行站点级配置 - 检查并重载配置:
docker exec safeline-tengine nginx -t
docker exec safeline-tengine nginx -s reload
常见问题解决方案
网站无法访问排查流程
- 明确具体表现(502、504等)
- 检查服务器负载情况
- 使用curl测试:
curl -v -H "Host: <域名>" http://<雷池IP>:<端口> - 检查端口监听:
netstat -anp | grep <端口> - 检查雷池到上游服务器的连通性
攻击日志异常
- 攻击地址显示为内网IP:
- 可能是HTTP 1.0协议缺少Host字段
- 或攻击者伪造了Host头
- 拦截次数与日志数量不符:
- 高频限制和人机拦截不记录攻击事件
- 拦截可能由多种原因导致
内网使用威胁情报
需要加白域名:
https://challenge.rivers.chaitin.cn/
紧急恢复tengine
当tengine配置异常无法启动时:
cd /data/safeline
bash reset_tengine.sh
版本升级注意事项
- 跨大版本升级前做好备份
- 升级失败可尝试重新安装
- 清理旧镜像:
docker images | grep chaitin-safeline | grep -v none | awk '{print $1":"$2}' | xargs docker rmi
版本号说明
- A.B.C格式
- A:特大功能更新
- B:小功能更新
- C:bug修复
本手册涵盖了雷池WAF的安装、配置、运维全流程常见问题及解决方案,可作为日常运维参考文档。对于复杂问题或企业级需求,建议联系长亭科技获取专业技术支持。