Skip to content

Security and Privacy

Aethersailor edited this page Aug 15, 2026 · 3 revisions

🔐 安全与隐私

本页说明公开请求可以控制什么、后端会接触什么,以及自行部署者必须额外保护什么。

安全档位

[security]
profile = "lan"
allow_public_upload = false
档位 适用场景 请求方可控抓取 公开上传
lan 可信内网、NAS、软路由、旁路由 保留历史行为,可访问本地、私网和 fake-ip 资源 始终保留历史允许行为
public 公网服务 阻止公开请求访问回环、私网和 fake-ip 字面量等受限目标 allow_public_upload 决定,默认禁止
strict 不需要公开上传的公网服务 public 相同或更严格 始终禁止

Warning

lan 是兼容默认值,不是公网安全默认值。listen=0.0.0.0 或容器 25500:25500 只说明存在外部访问可能,程序无法判断防火墙、云安全组、NAT 和反向代理的实际状态。

allow_public_upload 与安全档位

档位 false true
lan 允许,保持历史兼容 允许
public 禁止 允许
strict 禁止 禁止

allow_public_upload 只决定 public 档位是否允许公开请求触发上传;lan 保留历史上传行为,strict 始终禁止上传。

public 会限制什么

主要限制请求方可控来源,例如:

  • /sub?url=...
  • /sub?config=...
  • /getruleset?url=...
  • 外部配置中的远程 !!importfetch
  • 公开请求触发的其他远程抓取。

项目内置模板、部署者指定的可信本地模板和受信任默认配置仍可以访问其需要的本地资源。

fake-ip 边界

public 不会因为普通域名在 OpenClash fake-ip DNS 环境中解析到 198.18.0.0/15 就自动阻止正常域名访问。它会阻止请求者直接提交 fake-ip、回环或私网字面量作为抓取目标。

订阅数据流

客户端原生远程资源

Mihomo、Surge、Quantumult X、Loon、Surfboard 或 Stash 自行更新远程资源时,后端通常不下载订阅正文。但后端仍接收用于生成配置的订阅 URL。

服务端解析

list=true、Sing-box、传统订阅目标及其他服务端解析路径会由后端下载并解析订阅正文。此时后端进程会接触节点数据。

公共实例的隐私边界

项目进程会对中央日志中的已知敏感字段进行脱敏,但以下系统仍可能接触请求:

  • 浏览器和本地历史;
  • DNS 和网络运营方;
  • CDN、WAF、负载均衡和反向代理;
  • 服务端访问日志;
  • 客户端最终配置。

不要把公共实例当作端到端加密秘密通道。敏感订阅建议自行部署,入口代理避免记录查询字符串。

日志脱敏

中央日志会隐藏或摘要化:

  • token、密码、API key、Authorization、Cookie;
  • 完整订阅 URL、查询参数、节点 URI、请求体和配置正文;
  • 原始 User-Agent、设备 ID、上传路径和未知参数值;
  • 由订阅控制的节点名称。

仍会保留:

  • 请求 ID、方法、安全路径、状态码、耗时和响应大小;
  • 目标格式、解析器路径、静态原因码和计数;
  • 安全的 URL 协议/主机摘要和原始长度。

脱敏只覆盖已知字段和格式。受信任脚本主动打印的文本、未知格式的秘密和外部基础设施日志可能仍包含敏感信息。

Provider 请求头

provider_headers 可以把当前请求中选择的请求头写入客户端配置。即使请求头名称允许,也可能包含认证信息。使用前确认:

  • 最终配置保存在哪里;
  • 哪些用户能读取配置;
  • 客户端是否会导出或同步配置;
  • 反向代理是否记录这些头;
  • 是否存在更安全的订阅认证方式。

Dashboard

统计功能默认关闭。启用后不会保存订阅 URL、节点正文或访问者 IP,但会持久化请求/规则计数和可选地区聚合。

Dashboard Basic Auth 需要配合 HTTPS。可信客户端地址头只应在应用无法被绕过代理直接访问,并且代理会覆盖对应头时启用。

公网部署检查清单

  1. 使用 publicstrict
  2. 只通过 HTTPS 反向代理公开服务。
  3. 容器端口只绑定回环或私有容器网络。
  4. 限制反向代理请求日志中的查询字符串。
  5. 根据需要增加认证或来源限制。
  6. 保持 TLS 校验开启。
  7. 为配置和统计目录设置最小权限与备份。
  8. 定期检查版本、依赖和异常请求。

继续阅读:反向代理与公网部署 · 出站代理

Clone this wiki locally