2
0
0

Codex 通过 SSH 连接国内服务器

2026-09-10
文章摘要
|

连接后,可以在 Codex 桌面端与远程 Codex CLI 对话、查看服务器文件,并打开远程终端。

1. 准备代理连接

如果服务器已有可用代理,直接使用服务器上的代理地址。如果没有,可以通过 SSH 反向端口转发,让服务器使用本地电脑上的代理。

假设本地 HTTP 代理监听 127.0.0.1:10808,在本地终端执行:

ssh -o ExitOnForwardFailure=yes -R 10808:127.0.0.1:10808 用户名@服务器地址

连接成功后,服务器访问 127.0.0.1:10808,就会通过 SSH 隧道转发到本地代理。使用期间需要保持这条 SSH 连接开启。

在远程终端中设置代理:

export HTTP_PROXY="http://127.0.0.1:10808"
export HTTPS_PROXY="$HTTP_PROXY"
export http_proxy="$HTTP_PROXY"
export https_proxy="$HTTPS_PROXY"
export NO_PROXY="localhost,127.0.0.1,::1"
export no_proxy="$NO_PROXY"

这里的端口必须对应本地代理的 HTTP 或混合代理端口。

2. 安装 Codex CLI 并登录

在服务器上执行:

curl -fsSL https://chatgpt.com/codex/install.sh | sh

安装完成后,执行:

codex login

按照终端提示完成登录。

3. 创建带代理的启动脚本

SSH 启动的远程进程不一定会继承终端中的代理变量。可以创建一个启动脚本,让 Codex CLI 每次启动时自动设置代理。

先找到当前 Codex 的真实路径:

readlink -f "$(command -v codex)"

输出示例:

/home/xxxx/.codex/packages/standalone/releases/0.154.0-x86_64-unknown-linux-musl/bin/codex

直接修改安装目录的codex可执行文件,重命名codex, 并编辑脚本:

mv /home/xxxx/.codex/packages/standalone/releases/0.154.0-x86_64-unknown-linux-musl/bin/codex /home/xxxx/.codex/packages/standalone/releases/0.154.0-x86_64-unknown-linux-musl/bin/codex_src
vim  /home/xxxx/.codex/packages/standalone/releases/0.154.0-x86_64-unknown-linux-musl/bin/codex 

写入以下内容,并将最后一行的路径替换为上一步查到的真实路径:

#!/bin/bash

export HTTP_PROXY="http://127.0.0.1:10808"
export HTTPS_PROXY="$HTTP_PROXY"
export http_proxy="$HTTP_PROXY"
export https_proxy="$HTTPS_PROXY"
export NO_PROXY="localhost,127.0.0.1,::1"
export no_proxy="$NO_PROXY"

exec /home/xxxx/.codex/packages/standalone/releases/0.154.0-x86_64-unknown-linux-musl/bin/codex_src "$@"

如果使用服务器自己的代理,修改脚本中的代理地址即可。

保存后,赋予执行权限:

chmod +x  /home/xxxx/.codex/packages/standalone/releases/0.154.0-x86_64-unknown-linux-musl/bin/codex 

升级 Codex CLI 后,如果真实路径发生变化,需要同步更新对应目录内的脚本。

4. 在 Codex 桌面端添加 SSH 连接

进入: 设置 → 连接 → SSH → 添加

选择对应服务器连接完成后,即可在桌面端与远程 Codex 对话、查看服务器文件并打开远程终端。

支持与分享

如果这篇文章对你有帮助,欢迎分享给更多人或者给予支持!

评论