给(3)X-ui面板配置Argo隧道
作为备用方案,可以在 VPS 上把 Argo 隧道配置好,并将其绑定到 x-ui 节点上。
平时不用它时,依然用原有的 VPS IP 直连;一旦哪天 IP 被ban了,只需在手机/电脑客户端上把节点的地址改成域名,就能一秒复活,继续上网。
以下是具体的配置和访问操作指南:
第一阶段:在 VPS 上配置 Argo 隧道与 x-ui
第一步:在 x-ui 中准备一个节点
- 登录 x-ui 面板,新建或选择一个现有的入站节点(Inbound)。
- 协议选择:强烈建议选择 VLESS 或 VMess。
- 传输配置(Network):必须选择 ws (WebSocket) 或 grpc(因为 Cloudflare 隧道只支持这两种协议的流量伪装)。
- 记住端口:假设这个节点端口是
54321,路径(path)是/myv2ray。
第二步:在 Cloudflare 获取隧道 Token
- 登录 Cloudflare 控制台,进入 Zero Trust -> Networks -> Tunnels。
- 点击 Create a Tunnel,选择 Cloudflared,给隧道起个名字(如
vps-backup)。 - 页面会显示一键安装命令,找到环境对应的 Linux 命令(通常是 AMD64),复制
sudo cloudflared service install ...后面那串长长的 Token(密钥)。
第三步:在 VPS 上安装并启动隧道
登录 VPS 终端(SSH)。
下载并安装 cloudflared 客户端:
1 2 3 4 5 6 7 8 9 10# 以 Linux AMD64 系统为例 # Add cloudflare gpg key sudo mkdir -p --mode=0755 /usr/share/keyrings curl -fsSL https://pkg.cloudflare.com/cloudflare-main.gpg | sudo tee /usr/share/keyrings/cloudflare-main.gpg >/dev/null # Add this repo to your apt repositories echo 'deb [signed-by=/usr/share/keyrings/cloudflare-main.gpg] https://pkg.cloudflare.com/cloudflared any main' | sudo tee /etc/apt/sources.list.d/cloudflared.list # install cloudflared sudo apt-get update && sudo apt-get install cloudflared请谨慎使用此类代码。
将隧道作为系统服务安装并运行(替换下方命令中的
<Token>):1sudo cloudflared service install <Token>请谨慎使用此类代码。
此时回到 Cloudflare 网页后台,刷新一下,隧道状态应该会变成绿色的 HEALTHY。
第四步:在网页后台配置域名映射(最关键)
在 Cloudflare 隧道配置的 Public Hostname 页面进行如下填写:
- Subdomain:输入想用来救急的二级域名(例如
proxy)。 - Domain:选择在 Cloudflare 托管的主域名(例如
yourdomain.com)。 - Type:选择 HTTP(注意:虽然对外是 HTTPS 访问,但这里选 HTTP 即可,Cloudflare 会处理加密;如果节点开启了 TLS 也可以选 HTTPS 并忽略证书检查)。
- URL:输入
127.0.0.1:54321(端口必须与第一步中 x-ui 节点的端口完全一致)。 - 点击保存。
第二阶段:当 VPS 被墙时,如何切换和访问?
一旦发生紧急情况(VPS 直连失败),无需重新配置 VPS,只需要修改手机或电脑客户端(如 v2rayN, Clash, Shadowrocket)里的节点参数。
查看在 x-ui 里的原始节点配置
在 x-ui 面板点击“查看/复制”该节点的配置或分享 URL。它的结构通常长这样:
- 地址 (Address):
VPS 真实 IP - 端口 (Port):
54321 - 传输协议:
ws - 路径 (Path):
/myv2ray
在客户端上修改参数(转换为 Argo 访问模式)
只需要把客户端中的节点参数手动修改为以下内容:
- 🌐 地址 (Address / Server):改成在隧道里绑定的域名,例如:
://yourdomain.com - 🔌 端口 (Port):必须改成
443(因为流量现在先走 Cloudflare 的 HTTPS 443 端口)。 - 🔒 TLS / 传输层加密:必须开启(True / Enable)。
- 🏷️ SNI / 伪装域名:填入相同的域名:
://yourdomain.com - 📁 传输协议与路径:保持原来的不变(如
ws和/myv2ray)。
为什么这样就能成功访问?
修改后,当开启客户端上网时:
- 客户端会向
://yourdomain.com(Cloudflare 的官方 CDN 节点)发起安全的 HTTPS(443 端口)连接。 - 防火墙只看到在访问一个托管在 Cloudflare 上的普通网站,无法察觉异常,因此予以放行。
- Cloudflare 收到请求后,通过内部的 Argo 隧道,把流量偷偷安全地送到 VPS 上的
54321端口。 - VPS 上的 x-ui 收到流量并成功解析,就可以重新科学上网了。