主题模式
Are you an LLM? You can read better optimized documentation at /vps/serve/new-protocols-guide.md for this page in Markdown format
2026 新协议部署实战:Hysteria2 / TUIC / AnyTLS 自建全指南
如果你已经读过 VLESS + Reality 自建指南,应该感受到了「抗检测」的重要性。但 Reality 不是终点——2025-2026 年,三款基于 QUIC / TLS 的新协议迅速崛起,在速度、抗丢包、低延迟上各有绝活。
它们就是 Hysteria2、TUIC、AnyTLS。
本文不堆概念,直接给你能抄的部署命令和配置。读完你就能用一台 VPS 同时跑起这三种协议,并知道什么场景该用哪个。
先搞懂:这三种协议是什么关系?
| 维度 | Hysteria2 | TUIC | AnyTLS |
|---|---|---|---|
| 底层 | QUIC(UDP) | QUIC(UDP) | TLS(TCP/UDP) |
| 核心特点 | 抗丢包、带宽饱和 | 极低延迟、连接快 | 强抗检测、TLS 混淆 |
| 最适合 | 高丢包/移动网络 | 游戏/实时应用 | 严格封锁环境 |
| 服务端 | sing-box / hysteria | sing-box / tuic-server | anytls-go |
| 客户端 | Sing-box / SR / v2rayN | Sing-box / SR / v2rayN | Sing-box / SR / v2rayN |
| 是否需要域名证书 | 推荐(可自签) | 推荐(可自签) | 需要真实证书 |
| 配置难度 | ⭐⭐ | ⭐⭐ | ⭐⭐⭐ |
一句话选型
- 移动网络 / 晚高峰卡顿 → Hysteria2(最稳)
- 打游戏 / 实时通话 → TUIC(延迟最低)
- 网络环境极严 → AnyTLS(伪装最像正常 HTTPS)
前置条件
无论部署哪种协议,先准备好:
- 一台 VPS:推荐离你近的机房(港/日/新/韩)。VPS 选型见 Reality 指南。
- 一个域名(TUIC/AnyTLS 必需,Hysteria2 强烈推荐):解析到 VPS IP。
- 开启 BBR 加速(必做,否则新协议优势发挥不出来):sh
# 一键开启 BBR(需 root) echo "net.core.default_qdisc=fq" >> /etc/sysctl.conf echo "net.ipv4.tcp_congestion_control=bbr" >> /etc/sysctl.conf sysctl -p # 验证 sysctl net.ipv4.tcp_congestion_control # 输出 bbr 即成功 - 放行防火墙端口(以 443/8443 为例):sh
ufw allow 443/udp # Hysteria2/TUIC 用 UDP ufw allow 443/tcp # AnyTLS 用 TCP
端口协议别搞错
Hysteria2 和 TUIC 跑在 UDP 上,AnyTLS 跑在 TCP 上。防火墙只开 TCP 会导致 Hysteria2/TUIC 连不上——这是新手最常见的坑。
方案 A:用 sing-box 统一部署 Hysteria2 + TUIC(推荐)
Sing-box 一个核心同时支持 hysteria2 和 tuic 两种 inbound,最省事。
1. 安装 sing-box
从 GitHub Releases 下载对应架构的二进制(amd64 / arm64),或用包管理器:
sh
# Debian/Ubuntu 示例(amd64)
ARCH=amd64
VER=$(curl -s https://api.github.com/repos/SagerNet/sing-box/releases/latest | grep -oP '"tag_name": "\K[^"]+')
wget https://github.com/SagerNet/sing-box/releases/download/${VER}/sing-box-${VER#v}-linux-${ARCH}.tar.gz
tar -xzf sing-box-${VER#v}-linux-${ARCH}.tar.gz
mv sing-box-${VER#v}-linux-${ARCH}/sing-box /usr/local/bin/
sing-box version # 验证安装2. 申请 TLS 证书(ACME)
sh
# 安装 acme.sh
curl https://get.acme.sh | sh
~/.acme.sh/acme.sh --issue -d your.domain.com --standalone
# 证书路径
# /root/.acme.sh/your.domain.com/fullchain.cer
# /root/.acme.sh/your.domain.com/your.domain.com.key3. 服务端配置(/usr/local/etc/sing-box/config.json)
一个配置同时开 hysteria2 和 tuic 两个入站:
json
{
"inbounds": [
{
"type": "hysteria2",
"tag": "hy2-in",
"listen": "::",
"listen_port": 443,
"users": [{ "password": "换成你的强密码" }],
"tls": {
"enabled": true,
"certificate_path": "/root/.acme.sh/your.domain.com/fullchain.cer",
"key_path": "/root/.acme.sh/your.domain.com/your.domain.com.key"
}
},
{
"type": "tuic",
"tag": "tuic-in",
"listen": "::",
"listen_port": 8443,
"users": [{ "uuid": "生成uuid放这里", "password": "tuic密码" }],
"tls": {
"enabled": true,
"certificate_path": "/root/.acme.sh/your.domain.com/fullchain.cer",
"key_path": "/root/.acme.sh/your.domain.com/your.domain.com.key"
}
}
],
"outbounds": [{ "type": "direct", "tag": "direct" }]
}生成 UUID
sh
cat /proc/sys/kernel/random/uuid复制输出填到 tuic 的 uuid 字段。
4. 启动与守护
sh
# 前台测试
sing-box run -c /usr/local/etc/sing-box/config.json
# 用 systemd 守护(推荐)
cat > /etc/systemd/system/sing-box.service <<'EOF'
[Unit]
Description=sing-box
After=network.target
[Service]
ExecStart=/usr/local/bin/sing-box run -c /usr/local/etc/sing-box/config.json
Restart=on-failure
[Install]
WantedBy=multi-user.target
EOF
systemctl enable --now sing-box方案 B:AnyTLS 独立部署
AnyTLS 用 anytls-go 核心,抗检测最强(流量看起来就是普通 HTTPS)。
1. 安装 anytls-go
sh
ARCH=amd64
VER=$(curl -s https://api.github.com/repos/anytls/anytls-go/releases/latest | grep -oP '"tag_name": "\K[^"]+')
wget https://github.com/anytls/anytls-go/releases/download/${VER}/anytls-go-${VER#v}-linux-${ARCH}.zip
unzip anytls-go-${VER#v}-linux-${ARCH}.zip
mv anytls-go /usr/local/bin/2. 服务端配置(config.json)
json
{
"certFile": "/root/.acme.sh/your.domain.com/fullchain.cer",
"keyFile": "/root/.acme.sh/your.domain.com/your.domain.com.key",
"listen": "0.0.0.0:443",
"password": "换成你的强密码",
"upstream": "direct://"
}3. 启动
sh
anytls-go -c config.json &
# 或用 systemd 守护(同上模式)AnyTLS 必须真实证书
AnyTLS 依赖标准 TLS 握手,自签证书会被客户端拒绝。务必用 ACME 申请真实证书(见方案 A 第 2 步)。
客户端配置
三种协议在客户端都用 Sing-box 配置最统一。下方是 Sing-box 客户端 outbound 示例。
Sing-box 客户端(推荐)
在客户端 config.json 的 outbounds 中加入:
json
{
"outbounds": [
{
"type": "hysteria2",
"tag": "hy2",
"server": "your.domain.com",
"server_port": 443,
"password": "换成你的强密码",
"tls": { "enabled": true, "server_name": "your.domain.com" }
},
{
"type": "tuic",
"tag": "tuic",
"server": "your.domain.com",
"server_port": 8443,
"uuid": "对应服务端uuid",
"password": "tuic密码",
"tls": { "enabled": true, "server_name": "your.domain.com" }
},
{
"type": "anytls",
"tag": "anytls",
"server": "your.domain.com",
"server_port": 443,
"password": "换成你的强密码",
"tls": { "enabled": true, "server_name": "your.domain.com" }
}
]
}完整客户端配置见 👉 Sing-box 全平台配置教程。
Shadowrocket(iOS)
- 右上角
+→ 类型选Hysteria2/TUIC/AnyTLS。 - 地址填域名,端口 443(hy2/anytls)或 8443(tuic)。
- 密码 / UUID 对应服务端。
- 打开「混淆」或 TLS 选项(默认开)。 详细见 👉 iOS 代理客户端全教程。
v2rayN(Windows / Android)
- 服务器 → 添加 [Hysteria2 / TUIC / AnyTLS] 分享链接。
- 分享链接格式(示例):
- Hysteria2:
hysteria2://密码@域名:443/?sni=域名#节点名 - TUIC:
tuic://uuid:密码@域名:8443?sni=域名#节点名 - AnyTLS:
anytls://密码@域名:443?sni=域名#节点名
- Hysteria2:
Clash Meta 不支持这三种协议
重要:Clash / Clash Meta 不支持 Hysteria2、TUIC、AnyTLS。要用这些协议,客户端必须换 Sing-box 或 Shadowrocket / v2rayN。这是很多人卡住的地方。
性能对比与选型
在同等 VPS(香港 BGP,晚高峰)实测参考:
| 场景 | Hysteria2 | TUIC | AnyTLS | Reality(VLESS) |
|---|---|---|---|---|
| 下载速度 | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐ | ⭐⭐⭐⭐ | ⭐⭐⭐⭐ |
| 晚高峰稳定性 | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐ | ⭐⭐⭐ | ⭐⭐⭐⭐ |
| 延迟(游戏) | ⭐⭐⭐⭐ | ⭐⭐⭐⭐⭐ | ⭐⭐⭐ | ⭐⭐⭐ |
| 抗丢包 | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐ | ⭐⭐⭐ | ⭐⭐⭐ |
| 抗检测 | ⭐⭐⭐⭐ | ⭐⭐⭐⭐ | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐⭐ |
实操建议
- 日常主力:Hysteria2(速度和稳定性最均衡,晚高峰也不容易崩)。
- 游戏专线:TUIC(延迟最低,连接建立最快)。
- 严格环境备用:AnyTLS(伪装度最高,作为兜底节点)。
- 不想折腾:继续用 VLESS + Reality,它依然是最稳的入门选择。
多协议共存
同一台 VPS 可以同时跑 Reality + Hysteria2 + TUIC + AnyTLS(用不同端口)。这样不同场景切不同节点,一条订阅全搞定。机场也普遍这么做——详见 7月机场排行榜 中对多协议支持的评测。
安全与优化
1. 防火墙最小化
只放行必要端口,其余 drop:
sh
ufw default deny incoming
ufw allow 22/tcp # SSH
ufw allow 443/udp # hy2
ufw allow 8443/udp # tuic
ufw allow 443/tcp # anytls
ufw enable2. 强密码 + 定期换
- Hysteria2 / AnyTLS 用 高强度随机密码(≥16 位)。
- TUIC 用 UUID + 独立密码。
- 不要多个协议共用同一密码。
3. 证书自动续期
ACME 证书 90 天过期,设置自动续期:
sh
~/.acme.sh/acme.sh --install-cronjob4. 监控节点状态
用 流媒体解锁检测脚本 定期验证 VPS IP 解锁状态,IP 被墙及时换。
常见问题 FAQ
Q1:Hysteria2 和 TUIC 都要用 UDP,我的 VPS 商是 UDP 限速的吗?
部分廉价 VPS(尤其是 NAT 机)会限制 UDP 带宽。下单前确认商家「UDP 不限速」。已知对 UDP 友好的商家:搬瓦工、HostDare、部分 Ryzen 小机。
Q2:没有域名能部署吗?
- Hysteria2:可以自签证书(客户端
insecure: true跳过验证),但安全性下降。 - TUIC / AnyTLS:强烈建议用真实域名证书,配置更简单也更安全。
- 域名成本极低(几美元/年),不要用 IP 直连。
Q3:三种协议会互相冲突吗?
不会。只要监听不同端口(hy2=443/udp,tuic=8443/udp,anytls=443/tcp),一个 sing-box + 一个 anytls-go 进程即可共存。
Q4:客户端提示「TLS 握手失败」?
常见原因:① 证书路径填错;② 域名没解析到 VPS;③ 客户端 server_name 和服务端证书域名不一致。逐一核对。
Q5:为什么速度没比 Reality 快多少?
新协议的优势在晚高峰抗丢包和低延迟,不是绝对带宽。如果你的 VPS 本身带宽小,换协议也不会变快。瓶颈在 VPS,不在协议。
Q6:机场支持这些协议吗?
主流机场 2026 年基本都支持 Hysteria2 和 TUIC 订阅。具体支持情况看 7月机场排行榜 的协议支持列。
延伸阅读
- VPS 自建代理:Xray + VLESS Reality — 入门首选,抗检测基础
- Sing-box 全平台配置教程 — 客户端侧 hysteria2/tuic/anytls 配置
- iOS 代理客户端全教程 — Shadowrocket 添加新协议节点
- VPS 流媒体解锁检测脚本 — 验证 VPS IP 解锁能力
- Netflix 解锁检测终极指南 — VPS IP 能否看 Netflix
- Clash Meta 订阅配置指南 — 不想自建的替代方案
- 7月机场排行榜 — 多协议支持的机场评测
