背景

由于鼠鼠我在服务器上没有 sudo 权限,没法使用 github 上提供的方法,而仅仅通过 SSH 反向隧道经常出现连接不稳定、端口假死或断连的情况。经过一番折腾,我找到了基于 Cloudflare Tunnel 的终极解决方案。本文将分享两种配置方法:一种适合临时测试(无域名),另一种适合长期稳定运行(有域名)。

准备工作:本地服务配置


方案一:我没有域名

如果你只是想临时测试一下,或者不想购买域名,可以使用 Cloudflare 提供的免费临时隧道。

步骤:

  1. 下载 Cloudflared 工具。
  2. 在下载目录打开 PowerShell,运行以下命令:
cloudflared.exe tunnel --url http://localhost:8045
  1. 终端会输出一个临时的公网地址,格式如:
    https://random-name.trycloudflare.com
  2. 复制这个地址,去服务器配置即可使用。


方案二:我有自己的域名

如果你有域名(托管在 Cloudflare),我们可以利用 Cloudflare Zero Trust 面板,将本地电脑变成一台 “服务器”,实现开机自启固定域名无需保持黑窗口运行

特点:稳定、专业、后台静默运行。

1. 创建隧道与安装服务

  1. 进入 Cloudflare Zero Trust 面板NetworksManage Tunnels

  2. 创建 Tunnel

  3. 在安装界面选择你 Antigravity Tools 所在的操作系统,复制那一长串安装命令进行安装。

  4. 成功提示Cloudflared agent installed successfully。此时服务已在后台安装,电脑重启也会自动连上。

2. 绑定域名

在你的 tunnel 中

点击 这个 routes 进入配置页面:

  • Subdomain: 填写前缀(如 api)。
  • Domain: 选择你的域名(如 example.xyz)。
  • Service:
  • Type: HTTP
  • URL: 127.0.0.1:8045 (或局域网 IP,或者是你的计算机名,我这里使用的是计算机名,因为我的电脑会经常到处跑)。

保存后,你的 API 地址就是固定的 https://api.example.xyz 了。


避坑指南:解决 524 Timeout 与断连

在使用过程中,我遇到了几个关键问题,这里给出解决方案:

1. 致命的 HTTP 524 Timeout 错误

现象:域名能 ping 通,但请求 API 时卡顿很久,最后报错 524: A timeout occurred
原因:Windows 默认将 localhost 解析为 IPv6 (::1),而某些服务只监听 IPv4。Cloudflare 转发请求时 “迷路” 了。
解决
在 Cloudflare 后台配置 Service URL 时,** 千万不要填 localhost:8045**

  • 稳妥写法:填 127.0.0.1:8045
  • 进阶写法:填局域网 IP,如 192.168.1.5:8045

2. 局域网 IP 变动怎么办?

如果你使用局域网 IP 配置,重启路由器后 IP 可能会变,这也是我目前使用的方法。
解决

在 Cloudflare Service URL 里填写计算机名,前提是你的计算机名是全网独一无二的?(如 http://My-Desktop:8045),让它通过主机名解析。

服务器端配置示例

最后,在远程 Linux 服务器上,只需要修改 JSON 配置文件中的 Base URL 即可:

{ "env": { "ANTHROPIC_AUTH_TOKEN": "sk-your-key-here", "ANTHROPIC_BASE_URL": "https://api.example.xyz", "ANTHROPIC_MODEL": "claude-sonnet-4-5-thinking" } } 

希望能帮助到佬友,有更好的方法大家也可以在下面提出来呀。


📌 转载信息
转载时间:
2026/1/18 19:16:42

标签: Cloudflare Tunnel, Cloudflared, SSH反向隧道, 无sudo权限, 远程服务器配置

添加新评论