我从虚拟机中的 GPU 直通中借用了“直通”一词,因为这些概念听起来与我相似,至少从使用的角度来看。在这里,我有一个 QEMU MV,主机和来宾都是 ubuntu 20.04。我使用端口转发从主机 ssh 到来宾:
ssh localhost -p5555
现在我有第二台主机,也运行 ubuntu 20.04。假设包含 QEMU MV 的机器的主机名是host1
,而第二台主机的主机名是host2
。可以使用普通的 ssh 命令host2
ssh 进入。host1
我的问题是:如何使用单个 ssh 命令连接host2
到客户操作系统?host1
假设用户名在,host2
和 guest:上都相同myname
。由于在端口转发下,host1
用于localhost
指定来宾VM,而不是其主机名,所以我不知道如何编写ssh命令。
我试ssh myname@host1 -p5555
了host2
但ssh
不回来。相反,它的行为类似于命令行编辑器。客人开着。那么,我可以使用什么选项让单个 ssh 命令连接host2
到来宾操作系统?谢谢。
链条要做的是
host2 -> host1 -> localhost:5555
。该选项允许使用/功能
-J
从 host2 轻松执行此操作:-J
ProxyJump
因此,尚未考虑端口 5555 的选项:
也正如在...之后记录的那样
...指定端口等额外选项不会影响跳转主机,但只会影响最终目标。只需添加端口选项:
您甚至可以在所有 3 个系统上拥有不同的用户,并在命令中指定用户名:
注意:每个 ssh 服务器都需要自己单独的身份验证。如果您不使用功能来避免提供密码(例如使用 ssh 密钥),您可能会连续两次被要求输入密码:一次用于连接到 host1,一次用于连接到 localhost:5555 后面的 VM。