长亭百川云 - 技术讨论

长亭百川云

技术讨论长亭漏洞情报库IP 威胁情报SLA在线工具
热门产品
雷池 WAF 社区版
IP 威胁情报
网站安全监测
百川漏扫服务
云堡垒机
百川云
技术文档
开发工具
长亭漏洞情报库
网安百科
安全社区
CT STACK 安全社区
雷池社区版
XRAY 扫描工具
长亭科技
长亭科技官网
万众合作伙伴商城
长亭 BBS 论坛
友情链接
关注或联系我们
添加百川云公众号,移动管理云安全产品
咨询热线:
4000-327-707
百川公众号
百川公众号
百川云客服
百川云客服

Copyright ©2024 北京长亭科技有限公司
icon
京ICP备2024055124号-2

雷池WAF离线安装搭建全流程指南(2025年最新版)

发布于 8 个月前

# 雷池 WAF
# 雷池技术博客投稿
技术资料

发布于 8 个月前

头像

萌新

更新于 8 个月前

2

0

一、环境要求与准备工作

  1. 系统要求

    • 操作系统:Debian12+(推荐大版本一致,如内网使用debian12,在线主机也需debian系列)
    • CPU架构:x86_64,需支持SSSE3指令集(可通过 lscpu | grep ssse3 验证)
    • 最小配置:1核CPU/1GB内存/5GB磁盘空间(高流量场景需扩容)
  2. 软件依赖

    • Docker 20.10.14+
    • Docker Compose 2.0.0+
    • 若离线环境需提前准备以下文件:
      • Docker RPM包及本地YUM源(含createrepo工具生成)
      • 雷池镜像包(image.tar.gz)
      • compose.yaml编排脚本

二、在线环境生成离线包(联网主机操作)

  1. 在可联网设备上操作

    1# 创建离线包目录
    2mkdir docker-offline && cd docker-offline
    3
    4# 安装必要工具
    5sudo apt-get update && sudo apt-get install -y curl gnupg
    6
    7# 添加DockerGPG密钥
    8curl -fsSL http://mirrors.volces.com/docker/linux/debian/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
    9
    10# 配置Docker镜像源
    11echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] http://mirrors.volces.com/docker/linux/debian $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
    12
    13# 更新软件源
    14sudo apt-get update
    15
    16# 下载docker全家桶及核心依赖(--download-only确保仅下载)
    17sudo apt-get download \
    18    docker-ce \
    19    docker-ce-cli \
    20    containerd.io \
    21    docker-buildx-plugin \
    22    docker-compose-plugin \
    23    ca-certificates \
    24    libltdl7 \
    25    libseccomp2 \
    26    iptables \
    27    libdevmapper1.02.1
    28
    29# 收集所有deb包
    30cp /var/cache/apt/archives/*.deb .
    31
    32# 确保没有遗漏的依赖,可以通过apt-cache depends命令检查每个包的依赖关系
    33for pkg in docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin; do
    34    echo "Checking dependencies for $pkg"
    35    apt-cache depends $pkg | grep "Depends" | sed "s/Depends: //" | xargs -I % sudo apt-get download %
    36done
    37
    38# 校验文件完整性(可选)
    39md5sum *.deb > checksum.md5
    40
    41# 输出收集到的.deb包列表以供确认
    42echo "Collected .deb packages:"
    43ls -lh *.deb
  2. 打包压缩离线包目录

    1tar -cvf docker-offline.tar.gz docker-offline/

三、离线环境部署(内网主机操作)

  1. 文件传输

    将打包好的 docker-offline 目录通过物理介质拷贝到目标服务器的 /tmp 目录,然后执行命令解压

    tar -xvf docker-offline.tar.gz -C /tmp
    
  2. 安装Docker环境

    1cd /tmp/docker-offline
    2
    3# 按依赖顺序安装
    4sudo dpkg -i /tmp/docker-offline/ca-certificates*.deb
    5sudo dpkg -i /tmp/docker-offline/lib*.deb
    6sudo dpkg -i containerd.io*.deb
    7sudo dpkg -i docker-ce-cli*.deb
    8sudo dpkg -i docker-ce*.deb
    9sudo dpkg -i docker-buildx-plugin_*.deb docker-compose-plugin_*.deb
    10sudo dpkg -i *.deb
  3. 服务管理

    1# 配置守护进程
    2sudo mkdir -p /etc/docker
    3sudo tee /etc/docker/daemon.json <<-'EOF'
    4{
    5  "registry-mirrors": ["https://registry-docker.cdnmirror.top"]
    6}
    7EOF
    8
    9# 启动服务
    10sudo systemctl enable docker
    11
    12sudo systemctl start docker
    13
    14# 验证版本
    15sudo docker --version
  4. 增强配置

    1. 用户权限配置

      1# 添加当前用户到docker组
      2sudo usermod -aG docker $USER
      3
      4# 立即生效需要重新登录
      5newgrp docker || true
    2. 镜像预加载(可选)

      1# 在在线环境提前拉取并打包镜像
      2docker pull ubuntu:22.04
      3docker save ubuntu:22.04 > ubuntu.tar
      4
      5# 在离线环境加载
      6sudo docker load -i ubuntu.tar
  5. 下载雷池镜像与安装启动服务

    1. 创建雷池目录

      1mkdir -p /data/safeline && cd /data/safeline
    2. 下载雷池社区版镜像包

      1cd /data/safeline
      2wget https://demo.waf-ce.chaitin.cn/image.tar.gz
    3. 下载compose编排脚本

      1cd /data/safeline
      2wget https://waf-ce.chaitin.cn/release/latest/compose.yaml
    4. 加载雷池社区版镜像包

      1cat image.tar.gz | gzip -d | docker load
    5. 配置环境变量

      1cat > .env <<EOF
      2SAFELINE_DIR=/data/safeline
      3IMAGE_TAG=latest
      4MGT_PORT=9443
      5POSTGRES_PASSWORD=$(tr -dc A-Za-z0-9 </dev/urandom | head -c 32)
      6SUBNET_PREFIX=172.22.222
      7IMAGE_PREFIX=swr.cn-east-3.myhuaweicloud.com/chaitin-safeline
      8ARCH_SUFFIX=
      9RELEASE=
      10REGION=
      11EOF
    6. 启动雷池服务

      1docker compose up -d

四、配置与验证

  1. 初始化控制台

    • 访问 https://<服务器IP>:9443,首次登录需执行命令获取随机密码。

      1docker exec safeline-mgt resetadmin
  2. 添加防护站点

    • 上游服务器配置:根据业务架构选择(如反向代理至Nginx或直接指向应用服务器)。
    • 证书管理:上传SSL证书至控制台,支持HTTP自动跳转HTTPS。
  3. 防护测试

    1# 模拟攻击验证拦截效果
    2curl "http://<域名>/?id=1%20AND%201=1"  # SQL注入测试
    3curl "http://<域名>/?html=<script>alert(1)</script>"  # XSS测试

    成功拦截则控制台显示攻击事件。


五、常见问题与优化

  1. 启动报错处理

    • unknown shorthand flag: 'd' in -d:升级Docker Compose至2.0+。
    • 镜像加载失败:检查镜像完整性,重新导出加载。
  2. 性能调优

    • 资源限制:通过 docker-compose.yaml 调整容器内存与CPU配额。
    • 日志管理:挂载外部目录持久化日志,避免磁盘占满。
  3. 升级与迁移

    • 离线升级:替换镜像包后执行 docker compose down && docker compose up -d。
    • 跨服务器迁移:备份 /data/safeline 目录,复制至新主机按相同步骤启动。

六、总结

本文基于雷池社区实践整合了雷池WAF离线部署的最优路径,覆盖环境准备、离线包生成、服务配置及故障排查全流程。通过语义分析引擎与轻量级设计,雷池社区版可有效防御OWASP Top 10攻击,适合内网及无外网环境的业务防护。建议定期关注官方更新,结合业务流量调整防护策略。

​
头像
相关贴子
#
建议为社区版本添加深色模式支持
#
希望雷池添加可以生成原服务器域名证书的功能
#
雷池规则广场:拦截常见扫描器
#
certd创建自动化流水线使用letsencrypt申请证书并更新雷池waf证书
#
一个站点,nginx 里面需要多个location不同判断,如何自定义