知识百科
Shadowsocks(SS)是什么:最早的轻量加密代理协议、现状与适用场景
解释 Shadowsocks 协议:一种轻量的加密 SOCKS5 代理协议,设计目标是低开销与简单。说明它的工作方式、AEAD 加密的版本演进、为什么至今仍被机场广泛使用、被识别的风险,以及与 VMess、VLESS、Trojan 的定位差异。
Shadowsocks 是所有现代跨境代理协议的起点。它简单到极致,也因此至今仍在专线场景中被广泛使用。
工作方式
客户端与服务器约定一个密码与加密方法。客户端把目标地址与数据用密码加密后发给服务器,服务器解密后访问目标,结果原路加密返回。协议头极简,没有握手、没有认证流程。
加密方法
早期的流加密(rc4-md5、aes-256-cfb)已不安全,现在使用 AEAD 加密:
- aes-128-gcm、aes-256-gcm
- chacha20-ietf-poly1305(移动设备上更快)
机场提供的 SS 节点都是 AEAD 版本。较新的 Shadowsocks 2022 版本进一步加强了抗重放与识别能力。
优点
- 开销低: 几乎不增加延迟与 CPU 占用。
- 兼容广: 所有客户端都支持。
- 简单: 参数少,不易配错。
缺点
- 不伪装: 流量虽然加密,但特征(随机数据、无 TLS 握手)可被统计识别。
- 公网上可能被干扰: 特征被识别后对应端口或 IP 被限速或阻断。
为什么专线仍用 SS
专线的跨境段不经公网,不存在被识别的问题。此时 SS 的低开销是纯粹的优势。本站品牌库中许多专线机场的节点就是 SS 协议。
与其他协议的定位
| 协议 | 伪装 | 开销 | 适合 |
|---|---|---|---|
| SS | 无 | 最低 | 专线 |
| VMess | 可选 TLS + WS | 中 | 通用 |
| Trojan | TLS 伪装 | 低 | 公网 |
| VLESS | 依赖 TLS/Reality | 低 | 公网、抗识别 |
| Hysteria2 | QUIC | 低 | 丢包环境 |
后续文章:VMess、Trojan、VLESS、Hysteria2、Reality。
SSR
ShadowsocksR 是早期为对抗识别在 SS 上加混淆的分支,已多年不维护,存在安全问题。现代客户端与机场基本不再提供 SSR 节点。遇到只有 SSR 的机场应谨慎。
常见问题
- SS 是什么?
- Shadowsocks 的缩写,一种加密代理协议。机场节点标注 SS 表示该节点使用此协议。
- SS 现在还安全吗?
- AEAD 版本的加密本身安全。风险在于流量特征可被识别,公网上可能被干扰。专线上没有这个问题。
- SS 和 SSR 有什么区别?
- SSR(ShadowsocksR)是早期在 SS 基础上加混淆的分支,已停止维护。现在的客户端与机场基本不再使用 SSR。