不久前,我注意到ssh-agent中有三个无法删除的密钥。 ssh-add -l
显示了三个键;我跑了ssh-add -D
,被告知“所有身份已删除”。但随后立即ssh-add -l
显示了相同的三个键。
如果我注销然后再登录,密钥仍然存在。如果我重新启动计算机,密钥仍然存在。如果删除中的密钥环目录/tmp
,将无法再连接ssh-agent
,但是注销并重新登录后,密钥将返回。他们是无敌的。
据我所知,这些钥匙是我的,而不是其他任何人的。我可以通过它们访问我通常的本地服务。但是,当我再次使用ssh-add
,添加其中一个键时,给出了私钥文件的路径,新键在以下输出中具有不同的外观ssh-add -l
:
2048 00:01:02:03:04:05:06:07:08:09:0a:0b:0c:0d:0e:0f /home/jruser/.ssh/jruser-keyname-20110418 (RSA)
与原始版本:
2048 00:01:02:03:04:05:06:07:08:09:0a:0b:0c:0d:0e:0f jruser 04/18/2011 keyname (RSA)
有什么办法可以合理地解释这种行为吗?我猜确实有两个问题:
即使在重新引导期间,如何设法保留密钥?我的基本知识
ssh
表明,密钥始终必须手动添加。为什么要
ssh-agent -D
对我撒谎以消除身份?
还有一个Fedora / Red Hat错误:bugzilla.redhat.com/show_bug.cgi?
—
id=1205546