如何将 ForwardAgent 与钥匙串一起使用,或检测新的登录?

如何将 ForwardAgent 与钥匙串一起使用,或检测新的登录?

我的场景:

Server A在家里,Server B在我父母家里都有。我家里Laptop A也有。Laptop B我做了各种奇怪的 ssh 跳跃 - 我可能会连接Laptop A -> Server A -> Server B。或者Laptop B -> Server A -> Laptop A。或者Server A -> Server B

我已经在所有这些机器上设置了钥匙串,并且像一个具有安全意识的极客一样,我已经

eval `keychain --clear`

在我的.zlogin文件中。

我的问题是,即使我解锁了 上的密钥Laptop A,一旦我连接到Server A它,就会尝试使用服务器 A 上的钥匙串/ssh-代理,所以我必须解锁那些钥匙也一样。我ForwardAgent也在所有这些机器上进行了设置。我希望发生的是这样的事情:

  • 登录到Laptop A
  • 解锁Laptop A钥匙
  • SSH 到Server A
  • ssh 到Server B- 使用来自Laptop A.

我怎样才能做到这一点?

答案1

这并不能直接回答您的问题,但它确实为您提供了一个可供考虑的替代选择,这可能会对您有所帮助。我通常$HOME/.ssh/config像这样设置我的文件:

IdentityFile ~/.ssh/my-computers

# infrastructure
Host lap1
    User sam
    #PubkeyAuthentication no
    ProxyCommand ssh [email protected] nc lap1.internal.local %p

然后,当我外出时想要连接到我的 lap1.internal.local 系统时,我只需执行以下操作:

ssh lap1

我通常将我的公钥 ssh-copy-id 到我想要登录的其他服务器。如果您希望我详细说明,请告诉我。

相关内容