VSCode Remote-SSH 远程服务器无PROXY,CL Code 提示(app-unavailable-in-region)
场景说明
- 本地电脑:运行PROXY,已连接可用节点
- 远程服务器:无PROXY、无外网权限,仅通过 VSCode Remote-SSH 连接
- 问题:VSCode 内 CL 插件登录报错
App unavailable / app-unavailable-in-region - 核心原因:远程服务器无PROXY,直接访问 AN 被地区封禁
前置条件
- 本地PROXY正常运行,监听端口:
127.0.0.1:7890(HTTP PROXY) - PROXY节点必须为可用(不支持HK节点)
- VSCode 已安装 Remote-SSH 插件
一、测试本地PROXY是否可用(关键步骤)
本地打开 CMD/PowerShell,执行以下命令验证:
bash
# 测试PROXY连通性
curl -x http://127.0.0.1:7890 https://ipinfo.io/json
# 测试 AN 接口访问
curl -x http://127.0.0.1:7890 https://api.anthropic.com
✅ 成功标准:
- 返回 IP 地址为可用(非国内 IP)
- 无地区限制报错,能正常获取响应
二、配置 SSH 端口转发(核心方案)
让远程服务器的网络请求,通过 SSH 隧道转发到本地PROXY,实现外网访问。
1. 编辑本地 SSH 配置文件
Windows 路径:C:\Users\你的用户名\.ssh\config
Mac/Linux 路径:~/.ssh/config
添加配置:
ssh-config
Host my-server
HostName 你的服务器IP
User 服务器登录用户名
# 远程端口转发:服务器7890 → 本地PROXY7890
RemoteForward 7890 127.0.0.1:7890
2. 验证端口转发生效
VSCode 重新连接远程服务器,执行命令:
bash
# 服务器上测试,走本地PROXY访问外网
curl -x http://127.0.0.1:7890 https://ipinfo.io/json
✅ 成功标准:返回可用IP 地址
三、VSCode 远程PROXY配置
VSCode 连接服务器后,打开远程设置(settings.json),添加以下配置:
json
{
// 指向本地转发的PROXY端口
"http.proxy": "http://127.0.0.1:7890",
"https.proxy": "http://127.0.0.1:7890",
// PROXY兼容配置
"http.proxyStrictSSL": false,
"http.proxySupport": "override",
"http.disableHTTP2": true,
// 排除本地地址,避免PROXY循环
"http.noProxy": ["localhost", "127.0.0.1", "::1"]
}
四、最终验证(CL 插件可用)
- 在 VSCode 扩展市场安装 CL Code 插件
- 点击插件登录,浏览器完成授权
- 无地区限制报错,可正常使用
五、常见问题排查
-
仍提示地区限制
- 更换PROXY节点为住宅 IP(机房 IP 易被 AN 封禁)
- 重新执行测试命令:
curl -x http://127.0.0.1:7890 https://ipinfo.io/json
-
端口转发失败
- 检查本地PROXY是否允许局域网连接
- 重启本地PROXY + VSCode + 远程服务器
-
服务器 curl 无响应
- 确认 SSH 配置中
RemoteForward填写正确 - 本地PROXY端口必须为
7890
- 确认 SSH 配置中