![ssh 总是提示输入密钥密码](https://linux22.com/image/827800/ssh%20%E6%80%BB%E6%98%AF%E6%8F%90%E7%A4%BA%E8%BE%93%E5%85%A5%E5%AF%86%E9%92%A5%E5%AF%86%E7%A0%81.png)
我正在使用带有 gnome-shell 3.6 的 12.10。
我有多个 ssh 密钥对(使用 ssh-keygen 创建)。它们存储在 ~/.ssh/ids/hostname/id_rsa 和 id_rsa.pub 中。我有一个文件 ~/.ssh/config,它说明哪个密钥用于哪个主机。
每当我连接到其中一个主机时,它总是提示我输入 id_rsa 密码。我希望每次登录时都能解锁密钥。
我尝试将密钥导入 seahorse(又名密码和密钥),但遇到了这个错误https://bugs.launchpad.net/ubuntu/+source/seahorse/+bug/1017210
然后我尝试使用 ssh-add。这给了我正确的行为,但它在会话/重启后无法持续。
在我为不同的主机创建不同的密钥之前,gnome-shell 会弹出一个窗口要求我输入登录密码,输入密码后,密钥将在会话的剩余时间内解锁。我该如何让这个功能再次起作用?
答案1
如果 ssh 密钥文件位于顶级~/.ssh
目录中,Seahorse 将自动检测它们。我的解决方法是更改密钥文件的组织方式。这样,seahorse 可以检测到它们,gnome-shell 也可以检测到它们,并且每个密钥文件仅要求我输入一次登录密码。