GoForum🌐 V2EX

Codex Remote Login : 一键解决远程服务器 / VPS 登录 Codex CLI 失败的问题

handsomebro · 2026-03-09 17:08 · 0 次点赞 · 1 条回复

今天在海鲜市场收了一个 ChatGPT Team 的一个月车位,想着终于能爽用一把官方的 Codex 5.4 了。

结果一顿操作上服务器(一台没有 GUI 的纯净 Linux VPS ),敲下 codex login,傻眼了。

官方这个 CLI 的认证逻辑非常有毒: 它必须要求你在本地浏览器完成 OAuth 授权,然后网页端会把 Token 回调到 http://localhost:1455。 因为我是 SSH 连在远程 VPS 上敲的登录命令,VPS 在 1455 端口干等,而我的浏览器在本地的 Mac 上,回调根本打不到服务器,最后要不就是满屏的 State Mismatch 错误,要不就是直接 Bad Request

CLI 提示信息说,Headless 机器可以使用 codex login --device-auth(也就是给你一串验证码去浏览器填)。结果一敲这行命令,打开本地浏览器,登录后提示:当前 Team 管理员未开启设备验证功能… GG 。

查了一下 GitHub 和各种论坛,大部分老哥给出的“偏方”是: 在自己本地有浏览器的电脑装一个 Codex CLI -> 登录成功 -> 把 ~/.config/codex 等一堆授权文件夹用 tar 打个包 -> SCP 传到远端 VPS 解压覆盖。 这种手工搬运 Token 的方式实在是既繁琐(每次过期都要折腾一轮),又感觉极度不优雅。

既然是网络的痛点,那就走网络解决:SSH 临时隧道

原理很简单:只要我在执行 codex login 的同时,把本机的 1455 端口悄悄通过 SSH 映射到远端服务器的 1455 端口,那浏览器重定向不就完美回传了吗?

为了以后不再折腾,顺手糊了一个极简的 Bash 脚本,完全零依赖。 核心逻辑就是用 SSH ControlSocket 在后台默默建立一个临时隧道,触发登录之后,只要你授权完成或者 Ctrl+C 打断,它会自动 trap cleanup EXIT,把这条隐藏的隧道拆干净,不留任何多余进程,如丝般顺滑。

脚本开源放在这了:

👇👇👇

GitHub: codertesla/codex-remote-login

用法极其傻瓜:

(全程都在你本地的 Mac/Windows 终端下运行)

  1. 把它 down 下来
git clone https://github.com/codertesla/codex-remote-login.git
cd codex-remote-login
chmod +x codex-remote-login.sh
  1. 执行脚本,后面跟上你的 SSH 目标服务器(支持 config alias 或者指定私钥)
# 格式
./codex-remote-login.sh <你的远端 SSH 信息>
 
# 比如
./codex-remote-login.sh root@x.x.x.x
./codex-remote-login.sh my-vps

运行后它会弹出一个链接,你本地浏览器点进去走完授权,它就会提示远程登录成功,然后自动挥挥衣袖带走隧道。

希望这个小脚本能帮到同样在 VPS 或者跳板机上开发,又被 Codex CLI 这个诡异的重定向逻辑折磨过的 V 友们。

1 条回复
letitbesqzr · 2026-03-09 17:33
#1

本地登录后, 跳转到 http://localhost:1455 , 拿到完整的 url 地址, 去服务器上 curl http://localhost:1455/xxxx

添加回复
你还需要 登录 后发表回复

登录后可发帖和回复

登录 注册
主题信息
作者: handsomebro
发布: 2026-03-09
点赞: 0
回复: 0