你真的会配置 Reality?Reality 部署全流程拆解
Reality 协议具有免域名、免证书、配置干净、部署方便等优势。在 TLS 流量封锁精细化的环境下,它借用目标站 TLS 回应的方式比传统伪装更具迷惑性。但如果目标站点选不好或服务端时间不准,极易导致握手失败、测速为零。
1. 准备工作
- VPS 一台:重置好主流操作系统,推荐使用 Debian 12。
- RealiTLScanner(目标网站扫描工具):用于扫描对端 IP 的可用 TLS 端口。
- RealityChecker(目标网站检测工具):用于批量检测目标域名是否满足 Reality 协议的要求。
2. 寻找与筛选目标域名
2.1 目标域名的基础条件
- ❌ 不要使用跳转域名(通过重定向完成的域名)。
- 保持目标网站支持 TLS 1.3。
- 保持目标网站支持 X25519 密钥交换。
- 保持目标网站支持 HTTP/2 (H2)。
- 目标域名必须和 SNI 匹配。
2.2 加分项
- 尽量别用带 CDN 的网站当目标站。
- 尽量不要使用热门、大流量网站。
- 尽量选择 TLS 握手延迟小的网站。
- 选择与你的 VPS IP 物理距离较近或网络架构相近的网站。
2.3 第一步:本地运行扫描(以 RealiTLScanner 为例)
推荐在本地终端(如 Mac/Linux)或 Windows 命令提示符下运行,尽量不要在远端 VPS 上运行。
- MacOS / Linux 命令:
# 若提示文件损坏,可先执行:sudo xattr -r -d com.apple.quarantine <程序路径>
./RealiTLScanner -addr <您的VPS_IP> -port 443 -thread 100 -timeout 5 -out file.csv-
Windows 命令(假设程序在桌面):
DOS
cd "%USERPROFILE%\Desktop" RealiTLScanner-windows-64.exe -addr <您的VPS_IP> -port 443 -thread 100 -timeout 5 -out file.csv
⚠️ 注意:多次运行扫描时请更改输出文件名(如
file1.csv,file2.csv),否则可能会导致结果被覆盖或导出失败。
2.4 第二步:VPS 远端批量检测(使用 RealityChecker)
将扫描出的域名放入 VPS 中进行条件过滤与质量检测。
Bash
# 更新并安装必要组件(CentOS 系统请将 apt 换为 yum)
apt update && apt install unzip curl wget -y
# 下载对应的系统架构版本(以下为 x86_64 示例)
wget [https://github.com/V2RaySSR/RealityChecker/releases/latest/download/reality-checker-linux-amd64.zip](https://github.com/V2RaySSR/RealityChecker/releases/latest/download/reality-checker-linux-amd64.zip)
unzip reality-checker-linux-amd64.zip
chmod +x reality-checker
# 开展检测
./reality-checker check apple.com # 基础单域名检测
./reality-checker batch apple.com tesla.com # 批量检测多个域名(空格分隔)
./reality-checker csv file.csv # 直接从 CSV 文件批量检测
3. 部署 S-UI 面板
使用支持 Xray/Reality 协议的可视化面板进行快速节点下发。
3.1 一键安装脚本
Bash
# 安装最新版 S-UI 面板
bash <(curl -Ls [https://raw.githubusercontent.com/alireza0/s-ui/master/install.sh](https://raw.githubusercontent.com/alireza0/s-ui/master/install.sh))
# 如需安装特定旧版本(例如 v1.0.0):
VERSION=1.0.0 && bash <(curl -Ls [https://raw.githubusercontent.com/alireza0/s-ui/$VERSION/install.sh](https://raw.githubusercontent.com/alireza0/s-ui/$VERSION/install.sh)) $VERSION
3.2 🔴 安全核心:建立本地加密隧道访问面板
⚠️ 重要提示:在面板没有申请域名、没有配置证书、没有开启 SSL 安全登录之前,千万不要直接通过公网 IP 访问和登录面板!这会导致面板信息和节点特征暴露,极易引发封锁。
在第一次配置及后续维护时,请务必通过 SSH 端口转发(隧道) 方式在本地加密安全访问:
Bash
# 标准 SSH 端口隧道建立命令
ssh -L <本地映射端口>:127.0.0.1:<远程面板端口> <服务器用户名>@<服务器IP>
# 示例:将 VPS 的 55555 面板端口映射到本地的 54321
# ssh -L 54321:127.0.0.1:55555 root@178.157.58.201
# 如果你的 VPS 修改了默认 SSH 端口(例如改成了 2222),请加 -p 参数:
ssh -fN -p 2222 -L 54321:127.0.0.1:55555 root@178.157.58.201
当终端回显显示进入 VPS(出现 # 提示符)后,代表加密隧道已成功建立。此时请不要关闭该终端窗口,直接在本地浏览器打开以下地址进行面板配置:
👉 http://127.0.0.1:54321/(或您设定的面板路径)
4. 面板配置与入站设置
进入 S-UI 面板后:
-
设置 TLS 模版:填入前面筛选出的、干净且不带 CDN 的小众目标网站。
-
添加入站协议:选择符合 Reality 的入站配置。
-
添加用户:生成对应的 UUID 与客户端连接公钥(Public Key)。
5. 客户端推荐
配置完成后,导出节点链接或二维码,在对应平台的客户端中导入使用:
-
Windows / macOS: 推荐使用
V2rayN/Clash相关核心客户端。 -
Android: 推荐使用
NekoBox。 -
iOS / macOS: 推荐使用
Shadowrocket(小火箭,需外区 Apple ID 下载)。
6. 避坑总结(后记)
-
🎯 目标网站是核心:必须是支持 TLS1.3 / X25519 / H2 的干净站点,冷门小众、没有 CDN 最佳。
-
⏰ 服务器时间同步:VPS 服务端时间必须保持准确,时间不准会导致 TLS 握手直接失败。
-
🔒 隐藏面板:未开启全局 HTTPS 前,必须用 SSH 隧道管理,严防扫描和主动探测。