Codex Remote Login : 一键解决远程服务器 / VPS 登录 Codex CLI 失败的问题 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
handsomebro
V2EX    分享创造

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

  •  
  •   handsomebro 17 天前 1208 次点击

    今天在海鲜市场收了一个 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 [email protected] ./codex-remote-login.sh my-vps 

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

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

    7 条回复    2026-03-15 16:20:24 +08:00
    letitbesqzr
        1
    letitbesqzr  
       17 天前   1
    本地登录后, 跳转到 http://localhost:1455 , 拿到完整的 url 地址, 去服务器上 curl http://localhost:1455/xxxx
    codehz
        2
    codehz  
       17 天前 via Android
    一楼亮了,我之前也是这么干的
    Yuesh1
        3
    Yuesh1  
       17 天前
    ssh -N -L 18789:127.0.0.1:18789 [email protected]
    handsomebro
        4
    handsomebro  
    OP
       17 天前
    @letitbesqzr 我为什么知道的这么晚
    shunia
        5
    shunia  
       16 天前
    招很多,我用过两种:
    本地 login 后复制 auth.json 到其他机器,其他文件都不需要;
    远程装一个 CliProxyAPI ,直接在 CPA 里 auth ;
    ggbond2
        6
    ggbond2  
       16 天前
    ssh -N -L 18789:127.0.0.1:18789 root@xxxx
    PowerDi
        7
    PowerDi  
       11 天前
    windows 也能执行 sh 脚本吗
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     988 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 31ms UTC 19:26 PVG 03:26 LAX 12:26 JFK 15:26
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86