ssh-agent:不转发整个密钥环的身份验证

ssh-agent:不转发整个密钥环的身份验证

我有两个 ssh 私钥:

  • 一个可以访问我的个人的机器,
  • 一个访问我的服务器工作

我将这两个密钥添加到我的 ssh-agent 中ssh-add

现在,当我这样做时,ssh -A root@jobsrv我只想转发我的工作密钥(我用于连接的密钥jobsrv)的代理身份验证。

我想要这个,因为任何拥有 root 访问权限的人jobsrv都可以使用我的代理向我的个人计算机验证自己的身份。

有没有办法实现这种隔离?

答案1

为了强制ssh(1)使用特定的密钥,即使ssh-agent(1)提供多个密钥,请在 中使用IdentityFileandIdentitiesOnly指令~/.ssh/config,例如:

Host example.com
    IdentityFile ~/.ssh/keys/special.pem
    IdentitiesOnly yes

ssh_config(5)详情请参阅。

答案2

很遗憾,我相信这是不可能实现的容易地此刻。可以使用两个代理(每个密钥一个),这样就没有代理持有所有密钥。但这使用起来会非常麻烦。

这就是为什么一个错误报告(增强)已打开。有这份类似的报告也。

相关内容