TERM

ShadowTLS是什么

一句话:ShadowTLS 是借用真实网站的 TLS 握手做伪装的传输方式,握手完成后在同一连接上承载代理数据。

ShadowTLS 不是独立的代理协议,而是一层传输伪装:客户端先通过服务端与某个真实站点完成一次真实的 TLS 握手,握手过后再在同一连接里转发代理数据,常与 Shadowsocks 等协议套用。它有多个版本,支持面比 VLESS、Trojan 窄,需要客户端内核明确支持,具体以官方说明为准。

ShadowTLS 最容易被误解的一点是:它不是一种“协议”,而是一层“外衣”。 里面穿的通常还是别的协议,ShadowTLS 负责让外面看起来像一次正常的 TLS 访问。

ShadowTLS 是传输层,不是协议

可以把节点配置想成“里外两层”:

层 作用 常见例子
里层 真正承载代理数据 Shadowsocks 等
外层 让流量外形像普通 TLS 访问 ShadowTLS

所以订阅里的 ShadowTLS 节点,通常是“Shadowsocks + ShadowTLS”这类组合。

借用握手,大致是这样走的

下面是简化后的示意,具体细节随版本而异:

  1. 客户端向服务端发起 TLS 连接,并带上一个“伪装域名”。
  2. 服务端把握手交给这个真实站点去完成,所以握手对外看起来是真的。
  3. 握手完成后,服务端校验客户端是否是自己人。
  4. 校验通过,连接切换为承载代理数据;不通过,则继续当作普通访问处理。

这里的关键在于“握手是真的”,而不是用自己的证书去模仿。

它与 Trojan、REALITY 的思路异同

方案 握手来自哪里 备注
Trojan 服务端自己的证书与域名 需要域名和证书
ShadowTLS 借用第三方真实站点的握手 里层可换,常见是 Shadowsocks
REALITY 同样借用真实站点的握手 出自 Xray 生态,与 VLESS 配合

三者思路相近,实现细节和支持范围不同。“看起来像正常 TLS”不等于无法被识别,别把它当成万能钥匙。

客户端与排错

该不该为它挑机场

一般不需要。ShadowTLS 属于进阶、较小众的选项:

相关协议对比见 VLESS Trojan Hysteria2区别,节点和订阅的基本关系见 机场节点是什么,较新的同类选项见 AnyTLS。

容易混淆的相关术语

延伸阅读

想看哪些机场资料里写明了相关信息,打开机场推荐排行榜或机场对比总表。