type
Post
status
Published
date
Apr 26, 2026
slug
summary
tags
工具
开发
category
技术分享
icon
password
😀
希望远程连接服务器上开发的时候能用上Codex,但远程服务器可能网络环境受限,无法直接使用Codex。且使用team时,因为权限限制,可能无法通过常规device code的方式登陆codex。本文旨在探索一种SOP解决这类问题。

架构

架构概览

为了实现远程服务器的 Codex 正常工作,我们需要打通两条路径:
  1. 反向隧道(Reverse Tunnel):让「远程服务器」能通过「本机」的代理软件访问外网。
  1. 正向隧道(Forward Tunnel):将「本机」浏览器登录后的回调信号发回「远程服务器」1455 端口。

执行

一、启动ssh隧道

  • username@host 登陆「远程主机」的用户名和地址
  • 8898 是「远程主机」上映射到「本机」的代理端口,可自定义,如果冲突可以随便改
  • 7897 是「本机」上现存的代理端口,如使用Clash之类的,可以在GUI页面看到
  • 1455 是Codex的固定回调端口,无需修改
👌
执行完命令并登陆远程主机完成后,会进入到「远程主机」的命令行。
⚠️
如果提示 Warning: remote port forwarding failed for listen port 8898 代表「远程主机」上指定的代理端口已经被占用,这种情况很常见,改个其他端口即可。
⚠️
如果「本机」也装有Codex,1455 可能被占用,可能收到的提示如下:
  • bind [127.0.0.1]:1455: Address already in use
  • channel_setup_fwd_listener_tcpip: cannot listen to port: 1455
这种情况可在「本机」另开终端处理:
  • macOS / Linux:
    • Windows (PowerShell):
       

      二、远程主机连接本机代理

      ⚠️
      此处的8898和上方代理端口需要一致
       

      三、登陆codex

      以下命令在「远程主机」上运行
      1. 建议先 codex logout 登出一下,避免潜在的状态残留问题。
      1. 使用 codex login 登陆codex,会弹出一个登陆链接。
      1. 复制该链接到「本机」浏览器进行登陆,等待重定向到localhost:1455端口。
      1. 登陆不上可多尝试几次,或者看一下具体报错原因。
      1. 登陆成功后检查会话是否正常,
       

      四、完成登陆

      下次登陆使用仅需建立代理隧道:
      ⚠️
      如果需要重新登陆或切换账号,需重新完整执行该SOP
       
       
       
      上一篇
      拉格朗日乘子法(Lagrange Multiplier) 和KKT(Karush Kuhn Tucker)
      下一篇
      个人新Mac配置SOP