解决 VSCode 连接服务器代理失效问题(Codex 插件可用)

解决 VSCode 连接服务器代理失效问题(Codex 插件可用)
Mr.L解决 vscode 连接服务器无法正常使用代理(codex插件)
起因:在服务器配置了代理,但是无法正常使用codex,一致显示连接超时
本地终端配置
在本地终端中输入
1 | ssh -R 9999:localhost:7890 用户名@主机IP |
输入密码后实现与服务器的连接
服务器端配置
vscode 连接服务器后,在 /home/username/.bashrc 最后添加:
1 | cat >> ~/.bashrc <<'EOF' |
同时在本地 Clash 中打开 允许局域网连接 Clash

使用时完整配置
- 在本地终端中输入
ssh -R 9999:localhost:7890 用户名@主机IP - 打开服务器终端,输入
vpn - 在服务器终端中输入如果在终端中出现一长串信息,说明代理成功!
如果想关闭VPN可输入
unvpn命令
VSCode 代理配置
通过上述操作,已经可以实现在服务器终端中连通 Github ,但在使用一些插件,如:Codex 时会显示网络连接问题。
其问题的关键是: VS Code 的远端 “Server/Extension Host” 是由 Remote-SSH 的另一条 ssh 连接拉起的独立进程,不会继承你在终端里 vpn 导出的环境变量,也未必复用你那条 ssh -R 隧道。
因此需要同时解决两件事:①让 VS Code 自己那条 SSH 连接也带上反向隧道;②让 VS Code 远端服务进程和扩展明确走代理!
Step 1: 把反向隧道写进 VS Code 用的 SSH 配置
在 Windows 上编辑 C:\Users\<你的用户名>\.ssh\config(没有就新建),加入:
1 | Host AAAA(主机名,可以自由设置) |
注意:将127.0.0.1:7890替换为自己的代理服务器地址。
之后在 VS Code 的「Remote-SSH: Connect to Host…」里选择 AAAA 连接。 (这样 VS Code 自己那条 SSH 连接也会提供 localhost:9999 的反向 HTTP 代理端口。)
Step 2: 为Git本身配置代理
在服务器终端中输入curl https://github.com:
1 | git config --global http.proxy http://127.0.0.1:9999 |
完成后在 VS Code 命令面板执行 Remote-SSH: Kill VS Code Server on Host… 并重连服务器
Step 3: 在「远端设置」里启用 VS Code 的代理支持
连接到远端后,打开 设置(齿轮→Settings),左上角会显示 “Remote [SSH: AAAA]”。在这里设置(或直接编辑 ~/.vscode-server/data/Machine/settings.json):



Step 4: 重启 VS Code 远端服务,让新环境生效
命令面板(Ctrl/Cmd+Shift+P)执行:Remote-SSH: Kill VS Code Server on Host…,选择你的主机;然后重新连接一次。