Repo .git was damaged (refs/ missing, index truncated, object store near-empty). Repaired via git init (rebuilt refs), stale index preserved as .git/index.corrupt-20260910.bak, then full worktree committed as a rollback baseline.
24 KiB
TamaBox 免备案双线接入指南(EdgeOne 国际站 + Cloudflare Tunnel)
适用场景(2026-09-03 定稿):不备案。国内用户走腾讯 EdgeOne 国际站(免备案加速区域「全球可用区(不含中国大陆)」,大陆用户落到香港等最近海外节点,跨域骨干质量优于 CF);海外用户继续走现网 Cloudflare(
box.tama.guru已是337845818.bestzone 的 SaaS 自定义主机名 + Cloudflare Tunnel 回源,已正常生效)。配套代码:
internal/shared/ip.go已支持 EO-Client-IP(境内分支)与 CF-Connecting-IP(海外分支),trust_proxy=true时双头同权信任,无需维护 CDN 大 CIDR 清单。
🔴 重要勘误(2026-09-03 三次更正定稿)——权威在 DNSPod;分线路已确认生效
⚠️ 历次结论演进:
- 初版「权威在 Cloudflare → 需子域委派」作废(用户 CF 没有 tama.guru zone,正常——它本来就不该有);
- 二次更正(RDAP 直连
.guru注册局 Identity Digital 铁证):tama.guru注册局 NS 委托 =byron.dnspod.net+sunshine.dnspod.net(DNSPod)。此前误判因 apextama.guru自身 CNAME →navi-ew2.pages.dev(CF Pages),nslookup 跟随 CNAME 链误读;- 三次更正(12:10 最终确认):用户 DNSPod 面板已配好三线路(境内→EO / 境外→CF 优选
cloudflare.182682.xyz/ 默认→CF 优选),NS=byron/sunshine——分线路确认生效:
- 境外视角(两家境外服务器 API 实测:hackertarget / networkcalc)→
CNAME cloudflare.182682.xyz→ CF IP(104.x)✅- 境内视角(223.5.5.5 / 119.29.29.29 / alidns DoH 稳定查询)→
CNAME eo.dnse4.com→ EO IP(43.174.x)✅- 此前「全球四视角全部 EO」的实测是假象:大陆本机发往境外公共 DNS(8.8.8.8 / 9.9.9.9 / OpenDNS / 1.0.0.1,UDP 与 TCP 均)的查询被网络劫持/污染,应答按境内线路给出 EO。⚠️ 大陆本机 nslookup 境外 DNS 的结果不可信,验证分线路必须用境外服务器 API 或境外网络(方法见 2.3 第 4 步)。
- EO 归属验证若依赖 CNAME 自动校验,仍建议改 TXT 验证并把 TXT 放 DNSPod(防止分线路后续期失败)——此条仍适用。
0. 已核实事实(官方口径)
| 项 | 结论 |
|---|---|
| EdgeOne 加速区域与备案 | 「中国大陆可用区」「全球可用区」必须备案;「全球可用区(不含中国大陆)」无需备案(国际站同规则) |
| 不备案时大陆用户走哪 | 无大陆节点,就近落香港/日韩/新加坡等海外节点;香港节点走腾讯跨境骨干,大陆延迟通常显著优于 Cloudflare 免费版(仍建议实测) |
| Cloudflare for SaaS | 免费额度 100 个自定义主机名;box.tama.guru 已配置并正常打开,海外分支零改动 |
| EdgeOne EO-Client-IP | 默认关闭,需手动开启;自定义头部名必须填 EO-Client-IP(代码固定读此名) |
| 应用真实 IP 信任 | 已支持:境内→EO-Client-IP;海外→CF-Connecting-IP |
| 回源 IP 段官方入口 | 控制台「安全防护 → 源站防护」启用后展示回源 IP 列表(IPv4/IPv6 段);段变更前 14/7/3/1 天站内信+短信+邮件通知;可用 DescribeOriginACL API 每 3 天轮询自动同步(intl 文档 1145/48535) |
| ⚠️ 免费套餐限制 | 免费套餐不支持启用「源站防护」(2026-03 官方答疑)→ 拿不到官方回源段。出路见 2.2「回源网段三选一」 |
| 🔴 DNS 分线路实测(2026-09-03 三次更正定稿) | tama.guru 权威 NS = DNSPod(注册局 RDAP:byron.dnspod.net + sunshine.dnspod.net);CF 无此 zone。三线路(境内→EO / 境外→CF / 默认→CF)已确认生效:境外服务器 API → CF(104.x),境内通道 → EO(43.174.x)。⚠️ 大陆本机 nslookup 境外 DNS 会被劫持假返回 EO,不可用作境外视角 |
1. 目标拓扑
┌────────────────────────────────────────────┐
│ DNSPod 托管 tama.guru 整域 zone(权威) │
│ box 记录按线路分流: │
│ 中国境内 ──CNAME──▶ EdgeOne CNAME 目标 │
│ 默认 / 国外 ──CNAME──▶ CF SaaS CNAME 目标 │
└───────┬─────────────────────────────┬──────┘
大陆用户▶▶────────┘ │ 海外用户▶▶
(大陆 ISP 递归命中境内线路) │
▼ ▼
EdgeOne 国际站 Cloudflare 边缘
区域: 全球(不含中国大陆) SaaS 自定义主机名 box.tama.guru
HTTPS 免费证书自动签发 (挂在 337845818.best zone)
│ EO 回源(直连源站公网端口) │ Tunnel(源站主动出站)
▼ ▼
┌────────────────────────────┐ cloudflared(本机/内网)
│ 源站防火墙:仅放行 EO 回源网段│◀──────────────(无入站端口,不受影响)
└───────────────┬────────────┘
▼
TamaBox 应用(监听公网回源端口)
安全前提(缺一不可,否则头信任模型可被绕过):
- 源站防火墙只对 EdgeOne 官方回源网段 开放回源端口(默认拒绝一切);
- EO 侧开启「客户端 IP 头」且名称 =
EO-Client-IP; - EO 规则引擎删除客户端可伪造的
CF-Connecting-IP/X-Real-IP(否则大陆攻击者经 EO 带假 CF 头会被应用优先信任); conf/app.ini的[security]设trust_proxy = true。
⚠️ 前提 1 与套餐强相关:官方回源段只有启用「源站防护」才能拿到,而免费套餐不支持该功能。免费版请先读 2.2 的「回源网段三选一」选定替代路径,再继续配置。
海外分支天然安全:攻击者只能经 Cloudflare 边缘进来,CF 会用自己的观测值重写
CF-Connecting-IP,客户端伪造无效;Tunnel 到源站为出站连接,源站无对应入站口。
2. 分步实施
2.1 EdgeOne 接入(国际站 edgeone.ai)
- 登录 EdgeOne 国际站控制台 → 添加站点:
- 站点域名:
box.tama.guru(直接用子域做站点,避免影响tama.guru其他记录); - 加速区域:「全球可用区(不含中国大陆)」(勿选含中国大陆的区域——未备案无法添加,选错会要求备案);
- 接入方式:CNAME 接入(保留 DNSPod 分线路能力)。
- 站点域名:
- 归属验证选「DNS / TXT 验证」(不要选要求整体 CNAME 的方式):按控制台提示在 DNSPod 为
box.tama.guru添加指定 TXT(或指定子域名的 CNAME),验证通过后该验证记录保留勿删(续期/校验会用到)。 - HTTPS:开启自动免费证书(默认开启)。
- 状态变「已生效」后,记下控制台分配的 CNAME 目标(形如
<hash>.<region>.edgeone…,以控制台显示为准),供 2.3 使用。 - 开启客户端 IP 头:站点 → 网络优化 / 规则引擎(套餐不同路径略有差异)→「增加客户端 IP 请求头」类功能 → 开启,并把头部名务必填
EO-Client-IP。 - 配置回源:源站地址 = 服务器公网 IP;端口 = 2.2 选择的回源端口(优先高位非标端口,若控制台仅允许 80/443 则用 443 + 源站 TLS,见 2.2);回源 HOST =
box.tama.guru;协议建议与现状一致(HTTP,由 EO 边缘终结 TLS)。 - (可选加固)回源鉴权:若套餐支持「回源鉴权 / 自定义回源头」,加一个仅源站知道的头(如
X-EO-Auth: <随机串>),源站入口校验,作为防火墙白名单之外的纵深兜底。
2.2 源站监听公网口(不需要 nginx)与回源锁定(关键安全步骤)
不需要 nginx/Caddy:TamaBox 自带 HTTP 服务器,直接让应用监听公网端口即可——nginx 在整套方案里只是可选的「TLS/反代」环节,不是安全环节,低配服务器完全不必装。系统防火墙(ufw/iptables/firewalld)是内核 netfilter 规则,无常驻高内存进程,也不占资源。
- 改监听地址:
conf/app.ini的[server]段:[server] port = 18080 ; 换高位非标端口,别用 80/443 listen = 0.0.0.0:18080 ; 关键:从「仅本机」改为「全网卡」,EO 才能远程连入说明:此前 Cloudflare Tunnel 单线部署建议
listen = 127.0.0.1:port(只对本机 cloudflared 可见);接 EO 直连后必须改为0.0.0.0:port(或删掉listen留空 = 默认:port全网卡)。Tunnel 分支不受影响——cloudflared 连的是127.0.0.1:port,0.0.0.0监听兼容回环连入。改完重启应用。 端口限制:EO 回源端口是否允许高位非标以控制台为准;若只允许标准端口集合,再考虑在443前置 TLS(届时才需要 Caddy/nginx 或改用 HTTPS 回源)。 - EO 回源协议选 HTTP(TLS 由 EO 边缘终结,与现在 Tunnel 到本机 HTTP 的形态一致)。注意 EO 边缘→源站这段是公网明文,可接受则用,介意再改 HTTPS 回源。
回源网段三选一(决定安全模型)
背景:官方回源 IP 段只在「源站防护」功能里给,免费套餐不支持启用——这正是你在控制台找不到列表的原因。三条出路:
| 方案 | 成本 | 做法 | 风险 / 说明 |
|---|---|---|---|
| A. 官方源站防护(推荐) | EO 基础版以上(以控制台计费为准) | 控制台 → 站点 → 安全防护 → 源站防护 → 启用 → 复制回源 IP 列表(IPv4/IPv6)配防火墙;变更前 14/7/3/1 天会站内信/短信/邮件通知;也可用 DescribeOriginACL API 每 3 天轮询自动同步 |
最标准,段变更有官方通知兜底 |
| B. 观察法自建 ACL(免费) | 免费 | ① 先把回源端口临时放开(或安全组先放行);② 源站抓 3–7 天回源连接来源:tcpdump -nn port 18080 或看应用日志里的对端 IP;③ 把来源聚类成 CIDR;④ 防火墙收紧为只放行这些段;⑤ 每月自查一次来源是否有新增 |
⚠️ EO 回源段平均 3–6 个月会变,免费档收不到变更通知 → 段变化会导致回源失败;出故障先临时全放再排查。低流量个人站可接受 |
| C. 不设白名单(不推荐) | 免费 | 仅靠随机高位端口 + 应用层 Host 校验 | 🔴 源站 IP 一旦泄露即被绕过 CDN 直连,且可伪造 EO-Client-IP/CF-Connecting-IP 绕过限流/封禁。若仍要走,需先做代码加固:让 ip.go 只信任来自 trusted_proxies/回环对端的 CDN 头(另行评审) |
防火墙(ufw 示例,云安全组同理;按 A 或 B 得到的段列表执行):
ufw default deny incoming
ufw allow from <EO_CIDR_1> to any port 18080 proto tcp
ufw allow from <EO_CIDR_2> to any port 18080 proto tcp
# …全部 EO 段放行完毕后,确认没有 0.0.0.0/0 放行 18080
# ssh 等管理端口勿对公网裸开(建议仅内网/跳板)
验证「直连被拒」:用一台与 EO 无关的外网 VPS 执行 nc -zv <服务器IP> 18080,应 refused / timeout;随后通过 EO 加速 URL 访问,确认回源返回 200。
说明:cloudflared(Tunnel)不受本次开端口影响——它始终是源站主动出站连 Cloudflare,不依赖任何入站规则。
2.3 DNS 分线路改造(权威在 DNSPod,直接配置;无需任何委派)
2026-09-03 三次更正后的最终认知(12:10 实测确认):注册局 RDAP 铁证
tama.guru权威 NS =byron.dnspod.net+sunshine.dnspod.net(DNSPod),Cloudflare 从未托管此 zone。DNSPod 面板的三线路配置(境内→EO / 境外→CF / 默认→CF)已确认生效(境外服务器 API 实测 → CF;境内通道实测 → EO)。本节仅需核对面板与下表一致;不一致时按下表改。
第 1 步:核对 DNSPod 域名列表(关键,避免改错地方)
登录腾讯云解析 DNSPod → 域名列表,确认:
- ✅ 存在
tama.guru(整域 zone,权威 NS = byron/sunshine.dnspod.net 所在); - ⚠️ 若还存在一个独立的
box.tama.guru子域 zone(之前按旧方案误建的)——它不生效且会造成混淆:在 DNSPod 删除它(或忽略它,把配置改到 tama.guru 整域下); - ⚠️ 确认不是登录错账号/域名在另一个 DNSPod 账号下。
判别方法:DNSPod 面板上 tama.guru 域名详情页底部会显示「NS 记录:byron.dnspod.net / sunshine.dnspod.net」;若显示的不是这组,说明域名不在当前账号。
第 2 步:在 tama.guru 整域 zone 里配置 box 记录(主机记录填 box)
进入 tama.guru → 记录管理,找到/新建主机记录 box,分线路三行:
| 线路 | 类型 | 记录值 |
|---|---|---|
| 中国境内 | CNAME | box.tama.guru.eo.dnse4.com(EdgeOne CNAME 目标,2.1 控制台核对) |
| 境外 | CNAME | CF SaaS CNAME 目标(见下) |
| 默认 | CNAME | 同境外(兜底,覆盖未识别线路) |
- ✅ 用户面板实际状态(2026-09-03 12:07 核对)已符合上表,无需改动:默认 →
cloudflare.182682.xyz(2025-11-20 建)、境外 →cloudflare.182682.xyz(10:54 建)、境内 →eo.dnse4.com(11:29 建),NS = byron/sunshine.dnspod.net。若你的面板只有单条「默认 CNAME → EO」,则把它编辑为线路=中国境内,再新增境外/默认两条指向 CF。 - CF SaaS CNAME 目标获取:CF 控制台 → zone
337845818.best→ SSL/TLS → Custom hostnames(for SaaS)→box.tama.guru详情里的 CNAME target(形如<hash>.cdn.cloudflare.net)。若用第三方「优选 IP」域名,填你的优选 CNAME 亦可(保证解析到 CF 边缘)。 - TTL:
120~600(便于回滚)。 - ⚠️ DNSPod 免费版支持境内/境外/默认分线路(基础分线路免费;运营商级细分才收费)。
第 3 步:⚠️ EO 归属验证方式的适配(重要,防止证书续期失败)
- EO 站点若靠「主记录 CNAME → EO 目标」自动验证归属,分线路后境外/默认线路不再返回该 CNAME,EO 周期性校验会失败。
- 对策:EO 控制台把验证方式改为 TXT 验证(EO 会给一条形如
_<xxx>.box.tama.guru → TXT <值>的验证记录),把这条 TXT 加到 DNSPod 的 tama.guru zone(主机记录_<xxx>,线路=默认,全球可见);box 的境内线路 CNAME 保持指向 EO 不动。
第 4 步:验证分线路(⚠️ 大陆本机 nslookup 境外 DNS 不可信)
大陆本机向境外公共 DNS(8.8.8.8 / 9.9.9.9 / OpenDNS 等)的查询会被网络劫持/污染,必然假返回境内线路的 EO——勿用它判断境外线路。正确方法:
# 境内视角(本机即可,通道可信)
nslookup box.tama.guru 223.5.5.5 # 期望 → eo.dnse4.com / 43.174.x(EO)
curl -s "https://dns.alidns.com/resolve?name=box.tama.guru&type=A" # 阿里 DoH(HTTPS),同上
# 境外视角:用境外服务器 API(浏览器打开即可,2026-09-03 已实测)
# https://api.hackertarget.com/dnslookup/?q=box.tama.guru
# https://networkcalc.com/api/dns/lookup/box.tama.guru
# 期望:CNAME cloudflare.182682.xyz → 104.x / 172.x(CF 边缘 IP)
境内 EO + 境外 CF = 分线路成功(2026-09-03 12:10 已按此确认)。若在境外 VPS / 境外网络上,直接 nslookup box.tama.guru 8.8.8.8 亦可。
回滚
把 box 的境外/默认线路 CNAME 改回(或删除,只留境内→EO)即回到全量 EO;或把三条都指向 CF 即全量 CF。分钟级生效,见 §5。
2.4 Cloudflare 侧(零改动——CF 没有 tama.guru zone,也无需有)
- 无需在 CF 做任何 DNS 操作:
tama.guru的解析权在 DNSPod,CF 控制台不会、也不应出现该 zone。之前「父 zone 委派」方案基于错误前提,作废。 - 保持不动:
337845818.bestzone 的 SaaS 自定义主机名box.tama.guru(证书 + Tunnel 路由)、Tunnel 本身、承载域记录。它们只依赖「有流量带着Host: box.tama.guru到 CF 边缘」,与 DNS 记录归属无关——DNSPod 分线路把境外流量指到 CF 边缘 IP/CNAME 后,CF 按 Host 自动匹配到该自定义主机名并走 Tunnel 回源。 - 可选纵深:在
337845818.bestzone 加一条 Transform Rule「删除请求头EO-Client-IP」——防海外用户经 CF 时把伪造 EO 头带入源站。当前代码因「CF-Connecting-IP 优先」已天然免疫,此规则属可选项。 - 无环路风险:EO 回源目标是你的源站 IP,不会指回 CF SaaS 域名;CF 分支回源走 Tunnel(出站),互不干扰。
2.5 应用配置
conf/app.ini:
[server]
port = 18080
listen = 0.0.0.0:18080 ; EO 直连需要公网可达(纯 Tunnel 时期是 127.0.0.1:port,接 EO 后必须改)
[security]
trust_proxy = true ; 信任 EO-Client-IP / CF-Connecting-IP
无需维护 CDN 大 CIDR 清单(安全闭环依赖 2.1~2.2 的防火墙锁定 + 头剥离前提;免费版走观察法方案 B 时同理,前提是端口只对观测到的 EO 来源开放)。
3. 头信任矩阵(安全模型核对)
| 流量路径 | 到达源站的相关头 | 应用采用 | 伪造风险与对策 |
|---|---|---|---|
| 大陆:用户 → EO → 源站 | EO-Client-IP(EO 开启后写入真实客户端 IP);客户端自带的假 CF-Connecting-IP 被 EO 规则删除 |
EO-Client-IP |
若 EO 未开启该功能或未删 CF 头 → 应用会拿到空/伪造 IP,此为前提 2、3,必须配置 |
| 海外:用户 → CF 边缘 → Tunnel → 源站 | CF-Connecting-IP(CF 边缘以观测值重写);客户端伪造的 EO-Client-IP 也被透传但被忽略 |
CF-Connecting-IP |
CF 重写不可伪造;代码 CF 优先故天然免疫 |
| 攻击者假设绕过防火墙直连 | 可自带任意头 | — | 防火墙拒绝,到不了应用;纵深:回源 HOST 校验 + 可选 Token |
4. 上线验证清单
| # | 检查项 | 通过标准 |
|---|---|---|
| 0 | DNS 分线路 | 境内视角(本机):nslookup box.tama.guru 223.5.5.5 → EO(eo.dnse4.com / 43.174.x);境外视角:境外服务器 API(hackertarget / networkcalc,方法见 2.3 第 4 步)→ CF(104.x)。⚠️ 大陆本机 nslookup 8.8.8.8 会被劫持假返回 EO,不可用 |
| 1 | 境内访问 | 大陆节点访问 https://box.tama.guru 正常,浏览器证书为 EO 签发;源站/EO 访问日志中客户端 IP = 你的大陆公网出口 IP(说明 EO-Client-IP 生效) |
| 2 | 海外访问 | 海外访问正常,日志客户端 IP = 海外出口 IP(CF-Connecting-IP 生效) |
| 3 | 直连封锁 | 外网 VPS nc -zv <IP> <回源端口> 拒绝/超时 |
| 4 | 伪造头 | 境内客户端手动带 CF-Connecting-IP: 1.2.3.4 请求,日志仍记录真实 IP(EO 删除规则生效) |
| 5 | 限流/封禁联动 | 用 EO 路径触发限流,确认按真实 IP 计数而非 EO 节点 IP |
| 6 | WebSocket/上传 | 若用到 WS:EO 站点需显式开启 WebSocket(CF 侧 Tunnel 原生支持);大体积上传实测通过 |
| 7 | 证书 | 大陆/海外浏览器均无证书告警 |
5. 回滚顺序
- 快速回滚(恢复访问):DNSPod 里把 box 的「境外/默认」线路临时指向 EO 目标(或全线路都指向 EO)→ 全球走 EO,分钟级生效;
- 彻底回滚(回到纯 CF 时代):DNSPod 里把 box 三条线路统一改为
CNAME → <原 CF SaaS 目标 / 承载记录>(全球走 CF); - 确认 CF 路径正常后,再逐步收尾:关 EO 客户端 IP 头、撤防火墙放行、删除 EO 站点。
- ⚠️ 回滚后 EO 归属验证记录(若已按 2.3 第 3 步迁为 TXT)保持在 DNSPod 即可随线路变化继续有效;若 EO 站点还保留,按 EO 控制台提示重新验证。
6. 合规与风险提示
- 未备案域名面向大陆提供服务:无大陆节点(合规红线决定了这一点),且存在被运营商/监管按未备案域名处置(如阻断)的风险。本方案仅为技术可达路径,业务风险需自行评估。
- 若日后完成备案:EO 加速区域可改「全球可用区」(含大陆节点),大陆延迟进一步下降,DNSPod 分线路结构无需变动,只改 EO 区域并复验。
.guru等新顶级域在大陆解析/合规环境的稳定性低于.com,如遇解析异常优先查 DNS 污染与线路命中。
7. 常见问题
EO-Client-IP一直没出现? 功能默认关闭且可自定义头名,需在 EO 侧开启并确认名称一字不差;另外只有走 EO 的流量才会带此头。- 从大陆本机
nslookup box.tama.guru 8.8.8.8返回 EO,是不是境外线路没生效? ⚠️ 不是,别被误导——大陆本机发往境外公共 DNS 的查询会被网络劫持/污染,应答按境内线路给出(EO),UDP 与 TCP 均如此。境外线路是否生效要用境外服务器视角验证:浏览器打开https://api.hackertarget.com/dnslookup/?q=box.tama.guru或https://networkcalc.com/api/dns/lookup/box.tama.guru,返回cloudflare.182682.xyz→ 104.x 即境外→CF 生效(2026-09-03 已实测确认)。若境外 API 真返回 EO,才需要回 DNSPod 面板核对 box 记录三行是否齐全、线路字段是否正确(境内→EO / 境外→CF / 默认→CF)、是否误建了未委派的box.tama.guru子域 zone。 - DNSPod 面板该核对哪些字段? ①
box记录应有三行且线路分别是:境内(值box.tama.guru.eo.dnse4.com)、境外(值 CF 优选cloudflare.182682.xyz或 CF SaaS CNAME target)、默认(同境外);② 域名列表只有tama.guru整域 zone(权威 = byron/sunshine.dnspod.net,域名详情页可见 NS),不应有独立的box.tama.guru子域 zone;③ 权威归属可用注册局 RDAP 自查(https://rdap.org/domain/tama.guru应返回 byron/sunshine.dnspod.net)。 - HSTS 报错「无法访问…使用了 HSTS」? 应用在 ExternalURL 以 https 开头时对响应下发
Strict-Transport-Security(1 年,includeSubDomains),浏览器在 HTTPS 时代已记录。切 CDN 后若边缘证书与域名不匹配(如 EO 返回兜底证书*.cdn.myqcloud.com)即触发此页。根因是新 CDN 证书尚未签发/部署,等证书正确即自动恢复(域名不在 preload 列表时无需清浏览器);排查命令:echo | openssl s_client -connect box.tama.guru:443 -servername box.tama.guru \| openssl x509 -noout -subject,subject 应含box.tama.guru。 - 只放行 EO 段后业务断了? 大概率回源 IP 段列表不全或已更新:先临时放行全段定位,再按最新清单收紧(付费档以官方源站防护通知为准;免费观察法每月自查来源 IP)。
- 找不到回源 IP 段列表? 那是「源站防护」功能里的展示项,而免费套餐不支持启用——见 2.2「回源网段三选一」。
- 服务器太差不想跑 nginx,直接让服务监听公网端口行不行? 行,而且推荐这么做:TamaBox 自带 HTTP 服务器,nginx 本就不是必需。只需把
[server] listen改为0.0.0.0:port并让 EO 回源直连该端口;安全由防火墙网段白名单承担,与是否装 nginx 无关。 - 应用出现 http 跳转 / 非 Secure Cookie? EO 回源为 HTTP 时应用看到的是 http scheme,与 Tunnel 现状一致。若应用按 scheme 生成链接或下发 Secure Cookie 且行为异常,改为 HTTPS 回源或让应用信任
X-Forwarded-Proto。 - 两家 CDN 缓存冲突? TamaBox 为动态应用,两侧都保持默认不缓存 HTML/API,仅缓存
static/资源。