Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我正在尝试编写一个轻松使用 {ssh,gpg}-agents 的脚本(例如钥匙串,但我发现它为时已晚)。该脚本将在敏感环境中运行,因此我设置了超时以便在一段时间后从代理中删除密钥。
我设法编写了生成/重用部分,但现在,如果代理没有正确的密钥,我希望在用户打开 ssh 连接时自动调用 ssh-add。
有没有办法让 ssh-agent 在失败时调用 ssh-add 或更好的方法?
我在做什么(假设钥匙有一个独特的名字)
我有一个脚本~/bin/(在我的PATH)
~/bin/
PATH
!/bin/bash if ! ssh-add -l | grep -q nameOfmyKey then ssh-add -t 2h ~/path-to-mykeys/nameOfmyKey.key fi ssh myuser@myserver.example.net
ssh -l列出代理中当前活动的所有键。
ssh -l
该参数-t确保密钥仅在有限的时间内启用。
-t