尝试构建稳定的远程开发方案:JetBrains Gateway 与 Claude Code 集成配置经验总结

通过本地代理结合 SSH 反向隧道,可以实现远程服务器的稳定代理访问,从而顺利使用 JetBrains Gateway 与 Claude Code。本文将从本地代理配置到服务器端安装及稳定运行,提供系统化、专业化的操作步骤。

一、配置本地代理(略)

二、确认本地代理监听端口

不同代理软件监听的端口不同,请根据实际情况确认。

示例:假设本地代理端口为 7890,在后续配置中以此为例。

检查端口监听

Bash 复制代码
netstat -tunlp | grep 7890

三、配置 SSH 实现持久反向隧道

在本地主机上,编辑 ~/.ssh/config 文件,添加如下配置:

config 复制代码
Host 服务器别名
    HostName 服务器IP或域名
    User 用户名
    Port SSH远程端口
    RemoteForward 7891 127.0.0.1:7890
    ServerAliveInterval 60
    ServerAliveCountMax 3

说明:

ServerAliveIntervalServerAliveCountMax 用于保持 SSH 会话活跃,避免长时间闲置断线。

测试方法:

Test 复制代码
ssh myserver
# 连接成功后,执行
curl -x http://127.0.0.1:7891 https://www.google.com -I

若返回 200 OK 或其他正常状态码,说明隧道已生效。

四、SSH服务器端配置

登录远程服务器,修改 SSH 服务配置 /etc/ssh/sshd_config

bash 复制代码
AllowTcpForwarding yes
GatewayPorts yes

解释:

  • AllowTcpForwarding yes 允许 SSH 转发端口。
  • GatewayPorts yes 允许远程端口绑定到服务器公网地址,从而可以被外部访问。

修改后重启 SSH 服务:

复制代码
systemctl restart sshd

也可以重新进行SSH连接。

五、设置服务器环境变量(可选全局配置)

为方便后续使用代理,可在服务器端暴露环境变量:

arduino 复制代码
export HTTP_PROXY=http://127.0.0.1:7891
export HTTPS_PROXY=http://127.0.0.1:7891
export http_proxy=http://127.0.0.1:7891
export https_proxy=http://127.0.0.1:7891

若希望全局长期生效,可追加到 ~/.bashrc 文件末尾:

.bashrc 复制代码
vim ~/.bashrc
# 添加以下内容
export HTTP_PROXY=http://127.0.0.1:7891
export HTTPS_PROXY=http://127.0.0.1:7891
export http_proxy=http://127.0.0.1:7891
export https_proxy=http://127.0.0.1:7891

然后刷新配置:

bash 复制代码
source ~/.bashrc

六、反向隧道测试

在服务器端执行:

Test 复制代码
curl https://www.google.com -I
  • 成功:返回 200 OK 或正常响应头。
  • 失败:若你使用的是Gateway对服务器进行连接,并且显示报错curl: (7) Failed to connect to 127.0.0.1 port 7891 after 0 ms: Connection refused,则继续七、为 JetBrains Gateway 配置稳定隧道,否则跳过。

七、为 JetBrains Gateway 配置稳定隧道

在笔者的不断尝试之下发现,即使Jetbrains Gateway阅读了我们的配置文件,也不保证执行所有的配置项,并且反向隧道会随着SSH会话的关闭而关闭,这就导致隧道时好时坏。因此建议创建自动重连批处理脚本。

创建批处理脚本如下,命名随意:

start_tunnel.bat 复制代码
@echo off
:loop
echo Starting SSH tunnel...

ssh -N -R 7891:127.0.0.1:7890 root@服务器地址 -p 远程端口

echo Connection lost, retrying in 5 seconds...
timeout /t 5
goto loop

八、在服务器安装 Claude Code

在远程服务器终端执行:

arduino 复制代码
curl -fsSL https://claude.ai/install.sh | bash

安装完成后,根据提示登录 Claude Code CLI。

九、安装与配置 GUI 插件(CC GUI 推荐)

由于官方插件还处于Beta模式,很不稳定并且与终端没有区别,这里使用 CC GUI 插件。

  1. 安装 CC GUI 插件到本地主机。
  2. 安装 Node.js(官方 LTS 版本):
下载命令 复制代码
# 下载官方 Node LTS 版本安装脚本  
curl -fsSL https://deb.nodesource.com/setup_20.x | bash -  
  
# 安装 Node  
apt install -y nodejs  
  
# 检查  
node -v  
which node

十、Claude Code CLI 登录授权注意事项

不建议使用 root 用户连接 CLI,否则会报错:

ERROR 复制代码
SDK-STDERR: 
--dangerously-skip-permissions cannot be used with root/sudo privileges for security reasons 
Claude Code process exited with code 1

反向隧道代理与 Claude Code + Jetbrains 部署总结

通过以上步骤,即可通过反向隧道优雅、稳定地保证 Claude Code + Jetbrains 的长期运行。

相关推荐
O。O蛋黄酥啊7 分钟前
Claude Code 记忆机制全拆解:Auto Memory 与 CLAUDE.md 双轨解析
大模型·agent·memory·claude·codex·记忆
csdn_aspnet4 小时前
用Claude Code重构遗留系统,老项目自动化重构实践,提示词与效果验证
ai·ai编程·claude·anthropic
Patrick在香港11 小时前
Claude 工具调用返回空:8 次失败里只有 1 次状态码不对,其余全带 200
爬虫·python·api·claude·香港
大侠区块链1 天前
0 元 0 key,一个话题出一条短视频:开源工具 OpenShorts
人工智能·ai·claude
AI砖家1 天前
AI 编程面试 20 题:Codex、Claude Code 与 AI 工具使用全攻略
人工智能·语言模型·ai编程·claude·codex
AI砖家1 天前
我用 Codex + GPT-6 Astra 搭了一条自动化剪辑流水线,从安装到批量出片全流程分享
人工智能·语言模型·ai编程·claude·codex
plainGeekDev2 天前
棘轮原理与实战:让 Harness 越用越可靠
aigc·ai编程·claude
空 白II2 天前
9.19 大语言模型研究简报:Anthropic × Accenture 把“第三方评测者”直接嵌入前沿模型研发流程
大语言模型·claude