1

我正在尝试编写一个轻松使用 {ssh,gpg}-agents 的脚本(例如钥匙串,但我发现它为时已晚)。该脚本将在敏感环境中运行,因此我设置了超时以便在一段时间后从代理中删除密钥。

我设法编写了生成/重用部分,但现在,如果代理没有正确的密钥,我希望在用户打开 ssh 连接时自动调用 ssh-add。

有没有办法让 ssh-agent 在失败时调用 ssh-add 或更好的方法?

4

1 回答 1

0

我在做什么(假设钥匙有一个独特的名字)

我有一个脚本~/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列出代理中当前活动的所有键。

该参数-t确保密钥仅在有限的时间内启用。

于 2015-10-23T21:16:59.277 回答