使用B上的私钥从A到B到C的SSH

Modified on: Fri, 16 Aug 2019 21:20:02 +0800

我正在寻找一种从我的本地计算机A通过代理服务器B到目的地主机C的简单方法。与C上的公钥一起使用的私钥在B上,而我不能把那把钥匙放在我的本地机器上。有小费吗?

另外,我希望能够使用〜/ .ssh / config。

来做到这一点

谢谢!

作者:remotehost

最佳答案

示意图:

    ssh       ssh
A ------> B ------> C
    ^          ^
 using A's   using B's
 ssh key     ssh key

前提条件:

  • A正在运行ssh-agent;
  • A可以访问B;
  • B可以访问C;
  • A的ssh公钥出现在B:~/.ssh/authorized_keys
  • B的ssh公钥出现在C:~/.ssh/authorized_keys

~/.ssh/config上的A中,添加

Host C
    ProxyCommand ssh -o 'ForwardAgent yes' B 'ssh-add && nc %h %p'

如果您在B上的ssh私钥位于非标准位置,请在ssh-add之后添加其路径。

您现在应该可以从C访问A

A$ ssh C
C$
作者:Snowball

相关问答

添加新评论