开启 3 天免费试用
注册即可免费体验全部高级功能。
*仅限新用户;每位用户只能获得一次试用。


本文的 VLESS Reality 服务端搭建固定服务端和客户端均为 Xray-core v26.3.27,采用 raw 传输、Vision 和一个本地 SOCKS 入口。服务端示例使用专用 Ubuntu 24.04 LTS 主机。本文提供配置与读者验收方法,未进行作者完整端到端部署实测。
关键要点
- 固定核心并按其字段配置,滚动文档可能使用另一种语法。
- VLESS 身份、REALITY 密钥配对和 Vision flow 是不同设置。
- 回环 SOCKS 只服务明确设置的应用,不等于整机接管。
- 拒绝、撤销、重启与恢复需要独立核对。
- 使用获授权 TLS 目标,并保留独立管理路径。
先阅读自建责任指南。需要运行 Xray 核心并控制授权时适用本路线;需要路由式 IP 网关则使用Ubuntu WireGuard 部署教程。两篇互不作为前提。VLESS、REALITY 和 Vision 分工解释层次,不重复部署。
若希望真实应用访问公网,却不想管理核心,AethoVPN 提供终端服务路线。Windows 安装官方 .exe,通过邮箱验证码继续,在 App 选择当前可用位置后连接。其公开全局模式会将设备全部应用流量经 VPN 加密转发;关闭时,访问本地区网站的流量不经其中转。
核对可见出口 IP,再分别重复原应用任务和浏览器任务。一个任务可用不证明所有进程或目的地都可用。用另一台受控终端比较,避免实验改变日常网络设置。
此方法不承诺导入 VLESS、支持 REALITY/Vision 或管理 Xray 服务端。新用户仅有一次三天 Pro 试用,删除账户不会重置。试用受支持终端路线。
使用专用且没有其他用途的 Ubuntu 24.04 LTS 主机及独立授权客户端。预留服务端 TCP 18443、客户端本地 TCP 10808。
清点 ss -lntup、服务、路由、防火墙归属、配置路径和恢复控制台。修改策略前建立新管理会话。已有 Xray 或安装器路径时停止:本新装流程不能覆盖共享实例。
示例固定官方发行 tag v26.3.27。[1]两端记录二进制架构和 xray version。固定版本只描述这份配置,不是长期忽略安全修复的许可。升级前审查发行说明,保留兼容二进制与配置用于回退。
选择自有或得到明确授权的 TLS 1.3 目标。它必须从服务端可达,具有匹配 TLS_NAME 的有效证书,并满足 REALITY 文档的目标条件。[2]TLS_TARGET:443 与 TLS_NAME 指向该目标,不一定是代理公网端点。没有授权目标时,应在暴露入口前停止,不借用公共网站名称,也不关闭检查。
图表示明确的应用路径。服务端配置不会自动接管其他应用流量或系统 DNS。TUN 与系统代理边界解释额外接管选择。
将官方安装项目脚本下载为文件,查看完整内容,先做 shell 语法检查再执行。[3]下面是供读者在专用主机执行的指令:
curl --fail --location --proto '=https' --proto-redir '=https' \
--output install-release.sh \
https://raw.githubusercontent.com/XTLS/Xray-install/main/install-release.sh
less install-release.sh
bash -n install-release.sh
sudo adduser --system --group --no-create-home xray-lab
sudo bash install-release.sh install --version v26.3.27 --install-user xray-lab
sudo systemctl disable --now xray.service
sudo systemctl is-enabled xray.service
/usr/local/bin/xray version
sudo systemctl cat xray.service
审查全部下载、文件写入、服务与用户变化及删除行为。安装器独立于核心 tag 更新;私下保留已审查脚本并记录上游修订。语法检查不证明可信。
新装会启动并启用 xray.service;disable --now 同时停止服务并取消开机启动。is-enabled 应报告 disabled,否则在配置前停止。只有理解完整改动后,才在专用主机运行特权安装器。
确认 unit 使用 xray-lab 用户,以 /usr/local/bin/xray 加载 /usr/local/etc/xray/config.json。实际用 root 运行或加载意外目录时,不继续。限制可访问文件与目的地,不需要管理面板。高测试端口不要求绑定特权端口,但仍需审查安装 unit 的 capability 设置。
运行 /usr/local/bin/xray uuid 生成新 UUID,用 /usr/local/bin/xray x25519 生成 X25519 密钥对,用 openssl rand -hex 8 生成 short ID。在私密终端操作,不把输出贴入公开工单或截图。私钥留在服务端,对应公钥填入客户端 password。生成值保存在私密配置,不放 shell 参数。
| 参数 | 服务端位置 | 客户端匹配 |
|---|---|---|
| VLESS UUID | clients[].id | 出站 settings.id |
| Vision | 用户明确的 flow | 出站 flow: xtls-rprx-vision |
| REALITY 密钥 | privateKey | 对应公钥填入 password |
| 名称 | serverNames 中获准项 | serverName |
| Short ID | shortIds 项 | shortId |
| 端点 | 监听地址和 TCP 端口 | 可达公网地址与同端口 |
该 tag 入站解析使用 clients,滚动 VLESS 页面可能显示 users。tag 源码也允许继承入站 flow,但本例明确填写每用户 Vision。[4]传输解析接受 raw,REALITY 支持 target 和客户端 password。[5]
不要混入另一发行版字段。flow 字段指南另行解释兼容关系。
创建服务端私密 /usr/local/etc/xray/config.json,替换全部大写占位符。SERVER_LISTEN_IPV4 必须是主机实际持有的地址;供应商公网 NAT 地址未必能在本地绑定。
{
"log": {"loglevel": "warning"},
"inbounds": [{
"tag": "vless-lab", "listen": "SERVER_LISTEN_IPV4", "port": 18443,
"protocol": "vless",
"settings": {
"clients": [{"id": "CLIENT_UUID", "email": "lab-device", "flow": "xtls-rprx-vision"}],
"decryption": "none"
},
"streamSettings": {
"network": "raw", "security": "reality",
"realitySettings": {
"show": false, "target": "TLS_TARGET:443", "xver": 0,
"serverNames": ["TLS_NAME"], "privateKey": "SERVER_PRIVATE_KEY",
"shortIds": ["SHORT_ID"]
}
}
}],
"outbounds": [{"tag": "direct", "protocol": "freedom"}]
}
目录设为 root:xray-lab、模式 750,配置文件同属 root:xray-lab、模式 640,使服务可读而不向公众开放。UUID 是授权凭据;decryption:none 是 VLESS 配置,不表示可以去掉 REALITY。short ID 不能代替 UUID 或密钥对。
sudo chown root:xray-lab /usr/local/etc/xray
sudo chmod 750 /usr/local/etc/xray
sudo chown root:xray-lab /usr/local/etc/xray/config.json
sudo chmod 640 /usr/local/etc/xray/config.json
sudo -u xray-lab /usr/local/bin/xray run -test -config /usr/local/etc/xray/config.json
sudo systemctl start xray.service
sudo ss -lntp
配置检查通过只证明可以加载,不证明认证流量。通过现有主机防火墙管理器及云安全组,仅开放所选 TCP 端口,最好限制授权客户端公网来源。保留管理规则,不重置防火墙。
未限制的 freedom 出站可以访问主机可达的目的地;使用没有敏感内部路由的隔离主机,或先设置经审查的目的地 ACL。VLESS 认证本身不限制目的地。
在授权客户端使用匹配的官方核心发行版。下列 JSON 存为私密 client.json,只启用 TCP SOCKS,监听回环地址。[6]多用户主机上的其他本地用户也可能访问回环入口,因此用隔离授权客户端,或增加合适本地权限保护。
{
"log": {"loglevel": "warning"},
"inbounds": [{
"listen": "127.0.0.1", "port": 10808, "protocol": "socks",
"settings": {"auth": "noauth", "udp": false}
}],
"outbounds": [{
"protocol": "vless",
"settings": {
"address": "SERVER_PUBLIC_ENDPOINT", "port": 18443,
"id": "CLIENT_UUID", "encryption": "none", "flow": "xtls-rprx-vision"
},
"streamSettings": {
"network": "raw", "security": "reality",
"realitySettings": {
"serverName": "TLS_NAME", "fingerprint": "chrome",
"password": "SERVER_PUBLIC_KEY", "shortId": "SHORT_ID"
}
}
}]
}
按配对值替换公网端点、UUID、名称、公钥和 short ID。该 tag 出站支持示例的平铺 address/port/id 字段。[4]文件仅所属用户可访问,验证后在私密终端启动:
chmod 600 client.json
xray version
xray run -test -config client.json
xray run -config client.json
不改现有日常客户端。在受控客户端发送明确请求,替换授权主机名和路径:
curl --fail --socks5-hostname 127.0.0.1:10808 https://AUTHORIZED_TASK_HOST/task
--socks5-hostname 通过 SOCKS 提交名称,由远端解析;--socks5 在本地解析。[7]核对目的地自己的请求证据及该请求可见出口。它不证明设备 DNS 全部经代理,也不证明另一应用被接管。直接 IPv6、UDP 和 TUN 不在此 TCP 应用示例范围。
使用自己的一次性凭据,记录版本、请求方法、时间、预期阶段及观察结果,不复制秘密。表中提供预期现象,不是伪造日志。
| 检查项 | 方法 | 预期现象 | 失败处理 |
|---|---|---|---|
| 加载配置 | 核心版本、unit 路径/用户、配置检查及监听 | 指定 tag 和文件、所选地址/端口 | 先修安装或权限 |
| 授权转发 | 明确 SOCKS 请求到自有或授权目的地 | 预期服务端转发任务 | 比较配对与出站路径 |
| 接管与 DNS | 用同一应用方法请求名称 | 仅验收配置应用路径与远端解析 | 修应用设置,宽范围保留未验证 |
| 错误 UUID | 未登记的一次性 UUID 新连接 | 无认证后的任务转发 | 查有效用户表,恢复测试基线 |
| 错误 REALITY 配对 | 故意错公钥或 short ID 的新尝试 | 无认证代理任务 | 区分目标回落与获准访问 |
| 撤销 | 删 UUID、重启专用实例,再试旧 UUID | 不能新连,实例旧会话终止 | 查持久文件及服务归属 |
| 重启 | 重启授权专用主机,再发新请求 | 版本、配置、监听和任务行为一致 | 查启动和防火墙持久化 |
REALITY 可能把认证失败流量发送至配置目标。[2]因此 TCP 连通或收到响应都不够。浏览器出现目标站内容,不证明授权任务经 VLESS。不要通过去掉安全检查或允许未知用户“修复”拒绝。
从持久服务端文件移除 UUID,以 xray-lab 检查配置,再在专用实例执行 sudo systemctl restart xray.service。重启中断该实例全部已有会话,不只一个设备;应用到其他环境之前考虑影响。用旧 UUID 新建连接重试,再核对持久文件与有效 unit。只删订阅不能撤销权限,也不要从备份恢复已泄露凭据。
继续授权测试前,生成新 UUID,添加到服务端配置并替换客户端 ID。检查两端配置,再重启专用服务端与前台客户端,确认新 UUID 可用、旧 UUID 仍被拒绝。
正向与拒绝检查通过后,执行 sudo systemctl enable xray.service,再用 sudo systemctl is-enabled xray.service 确认 enabled。获授权重启主机后,核对版本、用户、路径、监听、防火墙与目标,再发新任务请求;否则开机持久化仍未验证。
无监听先查配置、权限、unit 或端口归属。未进入获准 REALITY 阶段,查可达性、授权名称/目标、密钥配对、short ID、时钟或版本。已过认证但没任务响应,再查 UUID/flow、出站路由和目的地策略。
沿连接失败指南,一次改一个变量。另一 VPN 成功不能跨不同端点与协议定位本故障。
审查发行说明、目标证书与可用性、凭据、客户端兼容性及日志必要保存期限。足够时只保留阶段、时间和脱敏内部标签,不收集第三方内容。维护不再服务原目标时,重新比较服务器与托管出口责任。
Ctrl-C 停止前台客户端,只恢复该应用保存的代理设置。新服务端实例执行 sudo systemctl disable --now xray.service,确认监听消失,再删除自己增加的云和主机规则。审查安装器删除行为后,只移除此次新装创建的文件、unit、用户和资源;不要对共享主机执行 purge。
回读管理连接和日常任务。保留必要私密恢复记录并停用凭据;主机和快照账单另外处理。以后升级回退时,恢复已知匹配的二进制与配置,不混用旧程序和新字段。
不必。本流程使用官方核心与审查过的安装器。面板增加持久配置所有者,要另外评估授权和恢复。
匹配版本限定正在评估的配置。滚动文档和其他客户端可能字段或默认值不同,不能由导入成功推断兼容。
不会。示例提供明确配置应用的本地 TCP SOCKS 入口。TUN、设备路由、UDP 和更广 DNS 行为需要独立配置与核验。
移除持久授权、重启专用实例终止会话,再用旧 UUID 新连。核对正确 unit 和文件,不只删除订阅。
核对二进制 tag、unit 用户、配置路径、监听、防火墙和目标依赖,再重复新授权任务。服务活跃不等于完整验收。
REALITY 可以把失败认证转到目标。回落响应不同于认证后的 VLESS 转发,应将预期任务与授权目的地证据关联。
需要受支持设备公网连接而不需要核心或服务器控制时,可以比较终端服务路线。核对真实任务和条款,不假定支持这些协议。
适用范围:按官方文档及 tag 源码整理,适用 Xray-core v26.3.27 与专用 Ubuntu 24.04 LTS 服务端,未进行作者完整端到端实测。只涉及 TCP 应用流量,不承诺性能、国家可用性或整机保护。遵守适用法律及服务规则。
来源:
Sources checked 2026 年 10 月 9 日。
相关文章:
注册即可免费体验全部高级功能。
*仅限新用户;每位用户只能获得一次试用。