SSH 使用隧道连接主机

SSH 使用隧道连接主机

我想用一个命令直接ssh从主机连接A到主机。Cssh

+---+       +---+       +---+
| A |   ->  | B |   ->  | C |
+---+       +---+       +---+

主机A已经配置了用于访问主机的密钥B(当我ssh B从 A 运行时它可以工作)

主机B已经配置了用于访问主机的密钥C(当我ssh C从 B 运行时它可以工作)

主机A用户名是daniel 主机B用户名是ubuntu 主机C用户名是ubuntu

Hosts B、 和C由 IP 地址而不是名称引用。

是否可以?如何?

答案1

您可以直接从命令行执行此操作,如下所示:

ssh -A -t ubuntu@hostB ssh -A hostC

或者将这些行添加到您的"$HOME"/.ssh/config文件中并ssh hostC以正常方式调用:

Host hostB
        User ubuntu

Host hostC
        User ubuntu
        ProxyCommand ssh -q hostB nc -q0 %h %p

在您的场景中,hostBhostC由 IP 地址引用,只需将这些 IP 地址放在适当的位置即可。 (您可能需要ubuntu@hostBProxyCommand现场。)

文章中有更多详细信息透明多跳 SSH

相关内容