VSCode Remote SSH 使用 Codex 插件时无法用账号登录?(亲测可用)
作者亲测,借用chatgpt整理总结
一、问题背景
我的开发环境如下:
text
Windows 10 本地电脑
↓
VSCode Remote SSH
↓
远程 Linux 服务器 / Docker 容器
本地环境:
- Windows 可正常访问 ChatGPT
- 本地 VSCode 已成功登录 Codex(网页授权,ChatGPT 账号登录)
- 本地使用 Codex 一切正常
远程环境:
- 使用 VSCode Remote SSH 连接服务器开发
- 打开远程工作区后,Codex 无法使用账号登录
*ChatGPT 登录流程经常失败
例如提示:

最终我找到一个可行方案:
将 Windows 本地 Codex 登录凭证文件复制到远程服务器,即可直接使用账号登录状态。
亲测有效。
二、账户登录 vs API KEY 登录,有什么区别?
Codex 一般有两种登录方式:
1. ChatGPT 账户登录(OAuth 登录)
即:
text
使用 ChatGPT账号登录
特点:
优点
- 无需自己创建 API Key
- 可直接使用 ChatGPT 账号权限
- 部分用户已有 Plus / Pro 订阅即可使用部分能力
- 登录体验简单
缺点
- 依赖浏览器 OAuth 流程
- 需要访问:
text
auth.openai.com
chatgpt.com
- 远程服务器环境经常失败
- Cloudflare 验证较严格
2. API KEY 登录
即在插件中填写:
text
sk-xxxxxx
特点:
优点
- 最稳定
- 适合服务器、CI、远程环境
- 无需浏览器登录流程
缺点
- 需要 OpenAI API 额度
- 按量计费
- ChatGPT Plus 不等于 API 免费额度
三、为什么 Remote SSH 下账户登录经常失败?
这是很多人误解的点。
你在本地打开的是 VSCode 界面,但 Remote SSH 模式下,很多插件运行在远程端:
text
本地 Windows VSCode(界面)
↓
远程 Linux 服务器(插件实际运行)
也就是说:
text
Codex 插件的登录请求
是远程服务器发出的
不是 Windows 本地发出的
四、远程账号登录失败的根本原因
远程服务器通常存在这些问题:
1. 无法访问 OpenAI 登录域名
例如:
text
auth.openai.com
chatgpt.com
2. Cloudflare Challenge
登录域名常出现:
text
Just a moment...
Enable JavaScript and cookies to continue
CLI 环境无法通过验证。
3. Token Exchange 失败
典型报错:
text
Token exchange failed
即:
text
浏览器登录成功
↓
插件向 auth.openai.com 换 token
↓
远程服务器网络失败
五、我的最终解决方案(亲测有效)
既然本地 Windows 已经成功登录 Codex。
说明本地已经保存了认证信息。
我发现 Windows 下目录:
text
C:\Users\你的用户名\.codex
其中有文件:
text
auth.json
这个文件就是登录凭证。
六、操作步骤
第一步:本地确认已登录 Codex
确保 Windows 本地 VSCode Codex 可正常使用。
第二步:复制 auth.json 到远程服务器
Windows 文件:
text
C:\Users\你的用户名\.codex\auth.json
复制到远程服务器:
text
/root/.codex/auth.json
例如:
bash
mkdir -p /root/.codex
然后上传文件。
第三步:重新加载 VSCode
执行:
text
Developer: Reload Window
或断开 Remote SSH 后重新连接。
第四步:打开 Codex
此时 Codex 已识别账户登录状态,直接可用。
亲测成功。
七、为什么这个方法有效?
因为 Codex 会读取:
text
~/.codex/auth.json
作为本地登录态缓存。
当远程端存在该文件时,相当于:
text
远程端直接继承本地登录状态
无需重新 OAuth 登录。
因此绕过了:
- auth.openai.com 无法访问
- Token exchange failed
- 浏览器授权失败
八、适用场景
此方法特别适合:
Remote SSH 开发
text
Windows → Linux GPU服务器
Docker 容器开发
text
VSCode Attach to Container
公司内网环境
服务器无法直接访问 OpenAI 登录域名。
九、注意事项
1. auth.json 属于登录凭证
相当于账号会话信息。
请勿泄露给他人。
2. 可能过期
若账号退出登录、插件升级、凭证过期:
重新在 Windows 登录一次,再复制最新 auth.json。
3. 权限问题
Linux 建议:
bash
chmod 600 /root/.codex/auth.json
十、账户登录 vs API KEY 登录,最终建议
普通个人用户
推荐:
text
账户登录
无需充值 API(可以白嫖部分额度)。
远程服务器长期开发
推荐:
text
API KEY 登录
更稳定,更适合自动化。
Remote SSH + 无法登录
推荐本文方案:
text
复制 auth.json
最快解决。
十一、最终结论
如果你在 VSCode Remote SSH 中使用 Codex 时,账号登录一直失败:
text
Token exchange failed
Sign-in could not be completed
而本地 Windows 已正常登录。
那么直接复制:
text
C:\Users\用户名\.codex\auth.json
→
/root/.codex/auth.json
重新加载 VSCode,即可直接远程使用 Codex。
亲测有效。
十二、写在最后
这个方法本质是:
text
迁移本地认证状态到远程环境
对于 Remote SSH 用户非常实用。