OSX:ssh-agent 缓存密码……但是何时清除?

OSX:ssh-agent 缓存密码……但是何时清除?

我在客户端 OSX 10.9.4 中有一个 ssh RSA 密钥。SSH 服务器是 ubuntu。一切正常,但问题是我的 OSX ssh-agent 似乎正在缓存密码。我第一次 ssh 时,系统会询问密码。下次就不会了,我直接登录服务器。

我担心这里的安全问题。如果有人偷了我的计算机,无需输入任何密码即可访问服务器...是的,我仍然有我的 OSX 用户,但仍然如此。

那么您知道 OSX ssh-agent 何时会再次询问吗?

我似乎有同样的疑问:http://www.dribin.org/dave/blog/archives/2007/11/28/securing_ssh_agent/

但我不知道这如何适用于 OSX 10.9.4

提前致谢,

答案1

你可以在添加密钥时设置密钥的生命周期ssh-添加(1)

-t life
         Set a maximum lifetime when adding identities to an agent.  The
         lifetime may be specified in seconds or in a time format speci‐
         fied in sshd_config(5).

例如

ssh-add   -t 3600  ~/.ssh/id_rsa

将使代理在 1 小时后忘记此密钥。

如果您的密钥被自动加载,您可以尝试找到发生这种情况的位置(.bashrc,.bash_profile,/etc/profile,...)并在那里更改 ssh-add 参数;或者从代理(ssh-add -D)中删除密钥并重新添加具有上述生命周期的密钥。

或者,如果你希望你的经纪人总是如果在 1 小时后忘记了密钥,您可以按照描述更改服务定义,例如这里.但这似乎并不适合所有人

[我在此假设您的 OSX 也使用 OpenSSH 作为 SSH 客户端和代理,就像我可以访问的旧 OSX 10.6.8 一样。如果您的 OSX 现在正在使用其他系统,那么这个答案可能不适用]

相关内容