Windows SSH 连接 Mac 使用 Claude Code 登录问题解决指南
Windows SSH 连 Mac 用 Claude Code 提示未登录?执行 security unlock-keychain 即可解决
问题描述
在 Windows 上通过 SSH 连接到 Mac 后,运行 claude 命令时,即使 Mac 本地已经登录过 Claude Code,SSH 会话中仍会提示未登录:
Error: You are not logged in. Please run `claude login` first.
原因分析
Claude Code 的登录凭证存储在 macOS 的 Keychain(钥匙串)中。当通过 SSH 远程连接时,Keychain 处于锁定状态,导致 Claude Code 无法读取已保存的登录信息。
解决方案
在 SSH 会话中执行以下命令解锁 Keychain:
security unlock-keychain
执行后会提示输入密码,输入 Mac 用户的登录密码即可。
完整操作步骤
1. 从 Windows 连接到 Mac
ssh username@mac-ip-address
2. 解锁 Keychain
security unlock-keychain
# 输入 Mac 登录密码
3. 验证登录状态
claude whoami
4. 启动 Claude Code
cd /path/to/project
claude
进阶方案
- SSH 配置:启用 ForwardAgent 和会话保持
- tmux 方案:Mac 本地启动 tmux 保持会话
- 自动解锁(不推荐明文存储密码)
常见问题
| 问题 | 解决命令 |
|---|---|
| User canceled | security unlock-keychain -p "密码" keychain-path |
| 仍提示未登录 | security unlock-keychain ~/Library/Keychains/login.keychain-db |
| 查看 Keychain | security list-keychains |
核心要点:SSH 会话需要手动解锁 Keychain 才能访问 Claude Code 的登录凭证。
暂无评论
