安全与隐私 · Clash 技术博客

Clash 订阅链接怎么导入?格式识别、更新失败与泄露处理

Profiles 出现订阅名不代表配置已加载。核对格式与 HTTP 错误,更新并选为当前配置,在 Proxies 和 Connections 检查节点与请求;泄露链接需重置并替换设备中的副本。

  • 订阅导入
  • 配置更新
  • 链接安全
本文目录

拿到或保存订阅地址后,客户端还需要下载并启用对应配置,才能使用里面的节点和规则。已有配置还能联网时,应保留可用副本,再核对新地址返回的内容与加载结果,避免排查更新错误时把原来能用的配置一起删掉。

在 Profiles 中保存、更新并启用订阅

一次完整的远程导入

  1. 复制服务方标注的 Clash 或 Mihomo 链接

    从开头的 https 到最后一个参数完整复制,不带多余空格。

  2. 在 Profiles 或配置页添加远程订阅

    名称写成自己能认出的来源,不要把 token 放在名称里。

  3. 立即点击更新

    留意状态码、解析提示和新的更新时间。

  4. 把这份配置设为当前使用

    到 Proxies 页确认策略组和节点已经出现。

如果客户端提供直接链接、配置链接或 URL Scheme 等多种入口,先用普通远程链接。某一种方式报 client error(Connect) 时,可以换客户端文档列出的另一种导入入口,但不要把“允许无效证书”长期打开。

订阅格式由返回内容决定

Clash 能直接导入的不是任意网址,而是服务方提供的 Clash 或 Mihomo 兼容订阅。客户端访问链接后,服务端可能返回带 proxies、proxy-groups、rules 的 YAML,也可能返回编码文本、登录页或错误页面;返回内容决定了能不能解析。

HTTP 状态码与响应内容怎么读

更新结果怎么读

看到的结果含义与处理
401 / 403token 失效、账号状态异常或服务器拒绝访问
404地址路径已变或链接复制不完整
200,但内容以 <html 开头返回了登录页、验证页或错误网页,不是配置
200,包含 proxies / proxy-groups / rules看起来是 Clash/Mihomo YAML,可继续解析
download failed / timeout客户端没有在时限内拿到响应,检查网络和服务端

有些订阅服务会根据 User-Agent 返回不同格式。浏览器直接打开得到一串内容,不代表 Clash 请求时一定相同;反过来,浏览器看到网页也不一定说明链接失效。把客户端版本、更新时间和状态码交给提供方,比反复删除配置更有用。

parse error:格式与内核兼容问题

出现 parse、yaml: unmarshal、field not found 一类错误,说明网络请求大多已经完成,客户端卡在读取内容。常见原因是服务端返回了其他客户端格式、YAML 缩进损坏,或配置使用了当前内核不支持的字段。

此时换节点通常没有帮助。保留第一行具体报错和行号,核对客户端的 Mihomo 版本,再让订阅提供方生成兼容格式。不要手工修远程配置里的几十处内容,因为下一次更新会全部覆盖。

unexpected character '<'

响应很可能是 HTML 页面,检查登录、验证或服务端错误。

mapping values are not allowed

YAML 缩进或符号被破坏,请提供方重新生成。

unsupported proxy type / field not found

内核版本与配置字段不匹配,升级受支持版本或换兼容订阅。

更新成功但 Proxies 为空

远程更新显示成功,但 Proxies 页面没有节点,可能是返回内容只有规则,可能所有节点被筛选掉,也可能当前选中的仍是旧配置。

回到 Profiles 看选中标记,再检查配置是否包含 proxies 或 proxy-providers,以及 proxy-groups 是否引用了它们。也要检查覆写脚本是否过滤了全部节点。

节点存在却全部显示在一个未被使用的组里,也会让主策略停在 DIRECT。选择一个实际包含节点的策略组并固定节点,随后用 Connections 观察一条请求;这比只看延迟按钮更能说明配置是否接通。

旧配置为什么还能联网?

Clash 通常会继续使用上一次下载成功的本地副本。因此订阅已经过期或服务端正在报错时,现有节点仍可能暂时可用。判断更新状态要看“最后更新时间”和本次错误,而不是只看网页能不能打开。

旧配置能用时不要急着删除。先导出错误信息、确认账号和链接状态,等新地址更新成功后再移除旧记录。直接删掉唯一可用副本,会让原本可排查的问题变成立即断网。

旧节点正常,新更新 401
服务端拒绝了当前凭据;登录服务面板检查订阅地址。
家庭网络更新超时,手机热点成功
问题更靠近当前网络路径,而不是 YAML 格式。
多个客户端同一时间失败
优先查看服务公告和订阅状态,不要逐台重装。

导入后,核对节点与 Connections

选中新的 Profile,到 Proxies 固定一条节点,保持 Rule 模式。Windows/macOS 桌面客户端开启系统代理;Android 客户端按自己的连接入口建立 VPN 并完成授权。访问熟悉网页,在 Connections 核对目标域名、规则和出口;延迟测试不能替代真实请求。

请求进入 Clash 后 timeout,换另一条节点;完全没有记录,检查桌面系统代理或 Android VPN 是否生效;显示 DIRECT,查看规则。网页正常且记录与选择一致,才说明订阅完成了下载、解析、启用和转发。

订阅地址里的 token 通常等同于读取凭据。排查只需要错误状态、响应类型和时间,不需要公开完整 URL。分享聊天截图、录屏和日志前,遮住路径或参数中的凭据;不确定哪些部分敏感时,遮住整个订阅地址。

只修改 Profile 的显示名称不会让旧凭据失效。完整订阅已经公开时,应通过服务面板重置地址,再按下面的步骤替换设备中的旧链接。

  1. 生成新的订阅地址

    使用服务方提供的重置或刷新 token 功能。

  2. 更新受控设备

    逐台替换旧 URL,并确认新的更新时间和节点列表。

  3. 验证旧地址失效

    不要继续在聊天中发送旧链接,只检查服务面板给出的状态。

  4. 检查异常用量

    发现陌生设备或流量变化时,按服务方账号安全流程处理。