欢迎光临
我们一直在努力

服务器上使用Codex

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */
#content_views .toc,
/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */
#content_views.markdown_views > p:empty:has(+ .toc),
#content_views.markdown_views > .toc + p:empty,
/* 富文本旧版目录标记 */
#content_views.htmledit_views #main-toc,
#content_views.htmledit_views #hr-toc,
#content_views.htmledit_views p[id*=\”-toc\”] {
display: none !important;
}
/* 目录去掉后,紧跟的首个标题不再多出一块上边距 */
#content_views.markdown_views > .toc + h1,
#content_views.markdown_views > .toc + h2,
#content_views.markdown_views > .toc + h3,
#content_views.markdown_views > .toc + h4,
#content_views.markdown_views > .toc + p:empty + h1,
#content_views.markdown_views > .toc + p:empty + h2,
#content_views.markdown_views > .toc + p:empty + h3,
#content_views.markdown_views > .toc + p:empty + h4 {
margin-top: 0 !important;
}

1. 原理

通过 SSH 反向隧道,把服务器上的代理请求转发到本机,再由本机的代理访问外网。因此前提是:本机已经能够正常访问 Codex / ChatGPT 相关服务,并且本机代理端口可用。

端口对应关系:

  • 本机代理端口:127.0.0.1:7890
  • 服务器上的转发入口:127.0.0.1:7891

服务器访问 127.0.0.1:7891 时,请求会通过 SSH 隧道转发到本机的 127.0.0.1:7890。本机 7890 端口取决于你的代理端口,服务器 7891 端口被占用可以更换为其他端口,请根据实际情况修改。

2. 步骤

2.1 确认本机代理可用

在本机运行:

curl -x http://127.0.0.1:7890 -I https://www.google.com

如果能返回 HTTP 响应头,说明本机代理端口可用。

2.2 配置反向隧道

在本机 SSH 配置文件中加入:

  • macOS / Linux:~/.ssh/config
  • Windows:C:\\Users\\你的用户名\\.ssh\\config

Host myserver
HostName server_ip
User username
RemoteForward 127.0.0.1:7891 127.0.0.1:7890

如果不想配置 SSH 别名,也可以跳过本节,在下一步直接使用完整命令启动隧道。

2.3 开启并验证反向隧道

2.3.1 本机启动隧道

推荐使用 SSH 配置中的 myserver 启动:

ssh -N myserver

也可以不使用 SSH 配置,直接写完整命令:

ssh -N -R 127.0.0.1:7891:127.0.0.1:7890 username@server_ip

这个命令所在的 SSH 连接必须保持运行。关闭终端后,服务器上的 7891 监听会消失。

2.3.2 服务器验证隧道

在服务器上运行:

ss -lntp | grep 7891

若命令有输出,说明服务器上的 7891 已经开始监听,反向隧道建立成功。

2.4 服务器上安装 Codex

npm i -g @openai/codex

2.5 服务器上配置代理环境变量

export http_proxy=http://127.0.0.1:7891
export https_proxy=http://127.0.0.1:7891

注意:export 只对当前终端生效。若需要永久生效,可以写入服务器上的 ~/.bashrc、~/.zshrc 等 shell 配置文件。

2.6 服务器上验证代理

在服务器上运行:

curl -x http://127.0.0.1:7891 -I https://www.google.com

如果能返回 HTTP 响应头,说明代理链路基本可用。

3. 使用

服务器终端输入:

codex

如果能够正常进入 Codex CLI 交互界面,且没有网络连接报错,则说明配置成功。

4. 常见问题

4.1 服务器上看不到 7891 监听

在服务器上运行:

ss -lntp | grep 7891

如果没有输出,通常说明 SSH 隧道没有建立或已经断开。请回到本机,重新运行:

ssh -N myserver

或者:

ssh -N -R 127.0.0.1:7891:127.0.0.1:7890 username@server_ip

4.2 关闭终端后代理失效

这是正常现象。反向隧道依赖 SSH 连接存活。SSH 连接断开后,服务器上的 7891 监听会消失。

如果希望后台运行,可以使用:

ssh -fN myserver

如果希望自动断线重连,可以考虑使用 autossh:

autossh -M 0 -fN myserver

4.3 服务器禁止反向转发

如果 SSH 报错显示远程转发失败,需要检查服务器的 /etc/ssh/sshd_config 是否允许 TCP 转发:

AllowTcpForwarding yes

修改后需要在服务器上重载 SSH 服务:

sudo systemctl reload sshd

或:

sudo systemctl reload ssh

4.4 其他问题

直接问 AI。

赞(0)
未经允许不得转载:171主机测评 » 服务器上使用Codex
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址