Skip to content

站点配置 ​

面板入口:资产 → 站点管理。这里告诉流盾:哪些域名要防护、流量回哪里、怎么认出访客真实 IP。

最短路径见 接入第一个站点。已有宝塔 / 1Panel 站点时,用 从其他面板导入 批量接入(一次性导入,不是持续同步)。账号在 系统设置 → 面板集成 维护。

站点管理列表

默认是卡片列表。筛选栏最右侧可切换成表格,选择会记在当前浏览器里,刷新后保持上次样式。

站点添加或编辑 ​

站点编辑表单

域名 ​

字段说明
启用关掉后这个站不再走这套防护
站点名称面板里显示的名字
域名要防护的域名,至少一个;支持 *.example.com

回源与监听 ​

字段说明
源站地址流盾把流量转去哪里,如 172.17.0.1、host.docker.internal
回源协议访问源站用 HTTP 还是 HTTPS,也可跟随访客
HTTP / HTTPS 回源端口源站实际端口
监听 HTTP / HTTPS对外是否接收这两种访问;HTTPS 必须选证书
SSL 证书在 证书管理 里上传、申请免费证书或从面板导入后选
强制 HTTPS访客用 HTTP 进来时跳到 HTTPS

客户端 IP 获取方式 ​

作用:让系统认出访客真实 IP(限速、日志、按 IP 的规则都靠它)。

选项适用
直连 IP没有 CDN(默认)
X-Forwarded-For(第一个)大多数 CDN 都是这个
CF-Connecting-IPCloudflare
True-Client-IPAkamai 等
X-Real-IP / X-Client-IP一般反代

技巧

如果没有使用 CDN,就选 直连 IP。如果上游使用了 CDN,那么先选 X-Forwarded-For,然后再观察一下。大多数的 CDN 都是使用的 X-Forwarded-For,如果 X-Forwarded-For 获取不到正确的 IP,再选择其他的测试。改成 CDN 头之后,防护日志 里「客户端 IP」是访客,直连 IP 仍是 TCP 对端(CDN 边缘节点)。

高级(可选) ​

字段白话说明
修改访问监控端口让这个站不走默认的 80 / 443,而走你指定的端口
关闭内容缓冲源站就在本机时,可打开,访问更跟手
自定义拦截页这个站被拦时显示的页面
拦截页状态码如 403、429 等
自定义人机验证页脚验证页底部文字/链接

自定义访问端口 ​

默认情况下,访客用 http://域名(80)和 https://域名(443)进来。如果你的应用必须走别的端口,例如 访客访问 9088,源站也听 9099,按下面做。

访客 ── http://www.example.com:9088 ──► 流盾(监听 9088)──► 源站 :9099

本机源站已经占用 9088 时

访客端口和回源端口不能抢同一个宿主机端口。源站若已经在本机听 9088,不要再把 9088 映射给流盾:让流盾继续听 80,只把「HTTP 回源端口」填 9088。 下面示例按「访客走 9088,源站在另一台机器 9099(或本机 9099 空闲)」来写。

1. 在 .env 里登记要映射的端口 ​

进入流盾安装目录(一键安装常见为 /www/wwwroot/flow-shield-waf),编辑 .env:

bash
cd /www/wwwroot/flow-shield-waf
vi .env

加上或改成:

bash
EXTRA_LISTEN_PORTS=9088

多个端口用逗号分隔,例如 9088,9443。80、443、面板端口(默认 9000)已经映射,不必再写。

这个列表只保存在 .env。之后升级代码、再跑一键安装,都不会冲掉。

2. 同步 Docker 映射并重启 ​

bash
bash scripts/sync-compose-ports.sh && docker compose up -d

不要直接修改 docker-compose.override.yml。需要添加或修改端口时,只改 .env 里的 EXTRA_LISTEN_PORTS,再执行上面的命令。该文件由脚本根据 .env 生成,手改会被覆盖。

一键安装 / 更新脚本在启动容器前也会自动跑这一步。改完 .env 后必须重新 up,新端口才会出现在宿主机上。

防火墙和云安全组同时放行 9088。

3. 在面板里配站点 ​

打开 资产 → 站点管理 → 新增 / 编辑站点:

  1. 正常填写网站配置
  2. 回源端口填写为9099
  3. 在高级配置中开启修改访问监控端口
  4. 如监控的端口为HTTP协议,则修改HTTP监控端口为9088,如果监控的端口为HTTPS协议则修改HTTPS监控为9088

保存后,用带端口的地址访问:

text
http://www.example.com:9088

DNS 仍把域名指到这台服务器。浏览器地址栏必须带 :9088,因为已经不走默认 80。站点列表卡片上的跳转链接也会带上这个端口(优先 HTTP;80 / 443 不显示端口号)。

TIP

同一站点的 HTTP 端口和 HTTPS 端口不能填同一个数字。不同站点可以共用同一协议的同一端口(例如都听 HTTP 80);但不能一个听 HTTP、另一个听 HTTPS 占用同一个端口,保存时会提示占用。端口 80 被引擎默认 HTTP 占用,也不能拿来开 HTTPS。面板端口、以及 Docker 里已占用的端口也不能拿来当站点监听。

推荐操作 ​

  1. (HTTPS)先在证书管理上传、申请免费证书,或 从其他面板导入
  2. 新增站点:域名 → 回源地址和端口 → 监听与证书;同机宝塔常见回源 host.docker.internal + 8080
  3. 有 CDN 就选对「客户端 IP 获取方式」
  4. 保存,把 DNS 指到本机
  5. 浏览器访问一次,到 防护日志 / 总览 确认有请求

和别的功能怎么配合 ​

  • HTTPS 依赖证书绑定
  • 规则、名单、限速里的「生效站点」会引用这里的站点
  • 真实 IP 配错,限速和国家统计都会歪

常见踩坑 ​

  • 源站填错导致 502 → 站点与证书 FAQ
  • 改了访问端口但打不开 → 先映射 .env 的 EXTRA_LISTEN_PORTS 再重启,见 自定义访问端口
  • CDN 没改真实 IP → 日志里全是边缘节点
  • 强制 HTTPS 来回跳 → 源站或上游也在强制跳转

下一步 ​

证书管理 · 从其他面板导入 · 防护策略总览