我在 VM 上使用 Suse 12,它一直在运行并且从未关闭/重新启动。
我使用 TCSH 并会调用
> eval 'ssh-agent -c'
> ssh-add
> <put passphrase here>
然后 ssh 登录到服务器/github 等就可以正常工作了。
然而过了一段时间,比如说一天后,ssh-agent 停止工作了,如果我这样做
> ssh-add -l
> error fetching identities for protocol 1: communication with agent failed
> error fetching identities for protocol 2: communication with agent failed
> The agent has no identities.
我不知道两次故障之间的实际时间间隔是多少。据我所知,虚拟机从未重新启动过。
然后我必须终止 ssh-agent 进程,并手动重新启动该进程。
知道为什么吗?
答案1
好吧,也许我没有完全理解 ssh 密钥/ssh-agent 的全貌。我有一台虚拟机,我通过某种 xclient 连接它。从该客户端,我没有看到任何设置可以执行任何操作ForwardAgent
- 当我使用 VSCODE 远程访问虚拟机并从该虚拟机 ssh 终端通过 SSH 连接到另一台物理服务器时,出现了上述问题。
我ForwardAgent yes
在本地 (Windows) 机器的 SSH 配置中提供了本地密钥。从那里,我将本地密钥 (在 Windows 上) 添加到第三台机器 (物理服务器),authorized_keys
现在它运行良好。