Top Green Nav
EdgeVPN is now available , protect your privacy today
Home
EdgeVPN

TLS 伪装技术的工作原理:让 VPN 流量隐形

EdgeVPN Team's avatar

EdgeVPN Team

blog-details-cover

简介

传输层安全协议(TLS)为当今绝大多数网络流量提供加密保护。每当您访问地址栏中带有 "https://" 的网站时,TLS 都在保护您的连接。正是这种无处不在的普及性,让 TLS 对 VPN 流量混淆而言如此宝贵,,如果您的 VPN 流量与占据互联网大部分流量的 HTTPS 流量看起来完全一致,那么审查者要想有选择地屏蔽它,就会面临巨大的挑战。

TLS 伪装是一种流量混淆技术,它将 VPN 或代理流量封装在一条真实的 TLS 连接内,使其难以与普通网页浏览区分开来。本文将解释它的工作原理、为何有效,以及其局限性所在。

TLS 是什么以及它为何重要

TLS 是一种加密协议,为网络通信提供三项保障:

  1. 机密性,,数据经过加密,只有预定的接收方才能读取
  2. 完整性,,数据在传输过程中无法被篡改而不被察觉
  3. 身份验证,,服务器通过受信任证书颁发机构签发的证书来证明自己的身份

当您的浏览器通过 HTTPS 连接到某个网站时,它会与服务器进行一次 TLS 握手。这次握手会协商加密参数、验证服务器证书,并建立一个共享的加密密钥。握手完成后,所有数据都通过一条加密隧道传输。

数字视角下的 TLS

TLS 并非小众协议,,它是网络安全的支柱:

  • 主流浏览器加载的网络流量中,超过 95% 使用 HTTPS(TLS)
  • 全球每天建立数十亿次 TLS 连接
  • 每个主要网站、银行、邮件服务商和网络应用都依赖 TLS

这种规模正是 TLS 伪装技术背后的关键洞见。任何全面屏蔽 TLS 的系统,都将实质上使互联网瘫痪。

TLS 伪装背后的理念

传统 VPN 协议使用自己的握手方式和数据包格式来创建各自专属的加密隧道。即便隧道内部的数据是加密的,隧道本身也具有可识别的结构。 DPI 系统会利用这一点来识别和屏蔽 VPN 流量。

TLS 伪装则反其道而行之:不再创造一条新隧道,而是使用一条早已无处不在的现有隧道。如果 VPN 流量在一条标准 TLS 连接内传输,,使用真实的 TLS 握手、真实的证书和标准的记录格式,,那么网络观察者看到的流量,在结构上会与有人正在浏览网页完全一致。

原理很简单:混入人群之中。 当您的流量看起来与同时发生的数十亿个其他 HTTPS 连接一模一样时,将其挑出来就会变得困难得多、成本高得多。

V2Ray 如何实现 TLS 伪装

V2Ray 对 TLS 伪装的实现,是反审查生态系统中最成熟的方案之一。以下是典型配置的工作方式:

连接过程

  1. DNS 解析,,客户端解析服务器的域名(一个具有真实 DNS 记录的真实域名)
  2. TCP 连接,,在服务器的 443 端口(标准 HTTPS 端口)上建立一条标准 TCP 连接
  3. TLS 握手,,进行一次真正的 TLS 1.3 握手。服务器出示其域名对应的有效证书,由公认的证书颁发机构签发。密码套件、扩展项和协议版本均为标准配置
  4. WebSocket 升级,,在已加密的 TLS 连接内部,客户端发送一个 HTTP 请求以升级到 WebSocket 协议。这是一个标准的 HTTP/1.1 Upgrade 请求,与任何网络应用发送的请求完全相同
  5. 代理流量传输,, VMess 或 VLESS 代理协议的数据通过 WebSocket 连接传输,经过双重加密(一次由代理协议加密,一次由 TLS 加密)

网络观察者看到的内容

从 DPI 系统或网络监控者的角度来看,这看起来是:

  • 一条通往 443 端口的 TCP 连接(正常)
  • 一次针对真实域名、使用有效证书的 TLS 1.3 握手(正常)
  • 在已建立的 TLS 连接上传输的加密数据(正常)
  • 与基于 WebSocket 的网络应用一致的流量模式(正常)

在可观察的协议行为中,没有任何东西能将这与一个使用 WebSocket 进行实时通信的普通网络应用用户区分开来。

作为后备的伪装网站

配置良好的 V2Ray 服务器不仅仅是假装成一个网络服务器,,它本身确实就是一个网络服务器。该服务器运行着真实的网络服务器软件(如 Nginx),提供一个合法的网站。V2Ray 只拦截特定的请求路径(例如某个特定的 WebSocket 端点),而所有其他请求都会收到正常的网页响应。

这意味着,如果有人,,或某个自动化探测程序,,在浏览器中访问该服务器的域名,他们看到的是一个真实的网站。只有对特定 V2Ray 端点、带有正确身份验证信息的请求,才会被当作代理连接来处理。

为何 TLS 伪装如此有效

TLS 伪装的有效性来自几个相互强化的因素。

连带损害问题

审查者理论上可以屏蔽通往某个特定服务器 IP 地址的所有流量。但他们无法在不破坏整个国家互联网的情况下,屏蔽 443 端口上的所有 TLS 流量。电子邮件将无法使用,银行业务将陷入瘫痪,电子商务将全面崩溃,甚至政府自身的服务也会离线。

这创造了一种对用户有利的不对称局面:审查者必须找到一种方法,将 V2Ray 的 TLS 流量与其他所有 TLS 流量区分开来,而这正是 TLS 伪装技术旨在阻止的事情。

协议正确性

V2Ray 的 TLS 实现并非简化的仿造品,,它使用真实的 TLS 库来执行真实的加密握手,这是 V2Ray 用来绕过 DPI 的多种技术之一。由此产生的流量在每个细节上都符合协议规范,因为它本质上就是真正的 TLS。

证书有效性

V2Ray 服务器使用来自公认证书颁发机构的真实证书(通常通过 Let's Encrypt 获取)。这里没有自签名证书、没有过期证书,也没有异常的证书链,,没有任何可标记为可疑的东西。

域名前置:一种历史性技术

域名前置是一种相关技术,它利用了 TLS 握手中的 SNI 字段(审查者可见)与 HTTP 请求中的 Host 头(在 TLS 内部加密)之间的差异。客户端会将 SNI 设置为一个被允许的域名(如某个大型云服务商),而实际的 HTTP 请求则指向另一个被屏蔽的域名。CDN 会根据 Host 头来路由请求,从而有效地隐藏了真实的目的地。

域名前置曾被多种反审查和安全通信工具使用。然而,包括 Google 和 Amazon CloudFront 在内的主要 CDN 提供商在 2018 年明确禁用了域名前置,其他提供商也在随后几年相继跟进。他们表示担忧的是,同样的技术可能被用于恶意目的,包括恶意软件的命令与控制基础设施。

虽然一些小众的 CDN 配置可能仍然允许这样做,但域名前置已不再是一种可靠的反审查策略。像 V2Ray 直接的 TLS 伪装这样的现代方法,已在很大程度上取代了它。

主动探测攻击

TLS 伪装面临的最重大威胁之一就是主动探测。审查者不再被动地观察流量,而是主动连接到可疑的代理服务器并分析其响应。

主动探测如何运作

  1. 审查者识别出一个可疑连接(可能基于流量大小或持续时间)
  2. 一个自动化探测程序连接到同一台服务器和端口
  3. 探测程序发送各种请求,,合法 HTTP、非法 HTTP、不完整握手、已知的代理握手,,并观察服务器如何响应
  4. 如果服务器的行为在任何方面与标准网络服务器不同,就会被标记出来

应对措施

  • 提供真实网站,,如上文所述,服务器应对所有无法识别的请求表现得如同一个合法的网络服务器
  • 行为一致性,,对于任何不是有效 V2Ray 连接的请求,服务器的响应应与真实网络服务器完全一致
  • 路径身份验证,,只有对正确路径、携带正确请求头的请求才会被当作代理连接处理,其他所有请求都会得到正常的网页响应
  • 速率限制与连接行为,,确保服务器的连接处理方式与常见网络服务器的行为一致

主动探测仍然是一种有效的技术,但配置得当的服务器能显著提高被检测的难度。

TLS 指纹识别

每个 TLS 客户端都会根据其使用的 TLS 库、支持的密码套件、扩展项及其排列顺序,生成略有不同的客户端问候(Client Hello)消息。这会形成一种"指纹",可用来识别发起连接的软件。

如果 V2Ray 客户端产生的 TLS 指纹与常见浏览器不同,审查者就可以将其作为检测信号加以利用。应对方法是 uTLS,,一个能够模拟主流浏览器 TLS 指纹的库。当 V2Ray 使用配置为模拟 Chrome 的 uTLS 时,其客户端问候实际上与真实 Chrome 浏览器的完全一致。

这是一个正在积极发展的领域。随着浏览器不断更新其 TLS 实现,uTLS 也必须与之保持同步,以维持指纹的准确性。

TLS 伪装的局限性

TLS 伪装大幅提高了审查的门槛,但它确实存在一些真实的局限性:

  • 基于 IP 的屏蔽,,如果服务器的 IP 地址被识别并屏蔽,TLS 伪装将无能为力。无论伪装得多好,流量都无法到达服务器
  • 流量模式分析,,持续时间长、数据传输量大且稳定的连接,即使协议本身无法区分,也可能与典型的网页浏览模式看起来不同
  • 服务器发现,,如果审查者通过流量分析以外的手段(扫描、用户举报、情报)发现了服务器 IP,他们就可以直接屏蔽它
  • 基于 SNI 的过滤,,TLS 握手中的服务器名称指示字段会以明文形式泄露域名。如果域名已知,就可以被屏蔽。加密客户端问候(ECH)解决了这个问题,但尚未被普遍支持
  • 计算成本,,与更轻量的协议相比,TLS 会带来相当程度的额外开销。加密、解密和握手过程会消耗 CPU 资源并增加延迟

结论

TLS 伪装之所以有效,是因为它利用了互联网自身的基础设施来对抗审查。通过将 VPN 流量封装在结构上与 HTTPS 网络流量完全相同的真实 TLS 连接内,它迫使审查者陷入一个无法两全的困境:屏蔽该流量就会破坏整个网络,而放行该流量则意味着接受其中一部分承载着 VPN 连接。

这项技术并非无懈可击。主动探测、TLS 指纹识别、基于 IP 的屏蔽和流量分析,都仍然是可行的检测途径。但与识别标准 VPN 协议相比,这些方法都需要付出显著更多的努力和技术复杂度,并且每一种方法都存在造成误判、干扰合法流量的风险。

对于身处受审查环境的用户而言,由 V2Ray 实现并集成到 EdgeVPN 中的 TLS 伪装技术,代表着维持互联网访问最实用、最有效的方法之一。结合恰当的服务器配置、uTLS 指纹模拟以及定期轮换的基础设施,它为对抗网络层面的审查提供了强有力的防御手段。

Share this post
Get Protected

Start Protecting Your Privacy Today

Join 158,000+ users who trust EdgeVPN for fast, secure, and private internet access.

  • No credit card required

  • Free version available