我正在尝试获取一个 SSH 生成的密钥,您需要使用密码解锁它,然后您就可以整天无需密码登录服务器。
但是当一天结束时,钥匙应该再次被锁定,您需要再次输入密码才能解锁。
基本上是这样的:
1.: Key locked, enter password to unlock
2.: Password correct: Key unlocked for ... hours
3.: Time out, enter password to renew
答案1
使用 ssh-agent(或 PuTTY 的 Pageant)——您可以将密钥加载到其内存中,只要操作系统正在运行,它们就会保持解锁状态,但关闭系统将忘记所有密钥。
(这才不是与 Windows 附带的 SSH 客户端配合使用,因为它将密钥持久存储在注册表中,并受您的登录密码保护。)
如果你从不关闭计算机(例如仅暂停它),ssh-agent 还允许添加具有超时的密钥:
$ ssh-add -t 6h ~/.ssh/id_rsa
如果您有最新版本的 OpenSSH,您可以通过启用 ~/.ssh/config 选项让它在第一次连接时自动添加密钥:
Host *
AddKeysToAgent 10h
请注意,这可能不适用于 Windows 自带的 SSH 客户端。同样,PuTTY 的 Pageant 也不支持超时。