我正在练习ssh
在本地网络上的两台计算机上使用该命令。从192.168.102.77
机器到10.0.2.15
机器,SSH 运行良好。然而,反之亦然,即从10.0.2.15
机器到192.168.102.77
机器,SSH 不能很好地工作。老实说,我不知道如何解决这个问题。谁能告诉我如何使用该ssh
命令启用此访问权限?
PS10.0.2.15
是 MBP 上的 VM,192.168.102.77
是另一个带有 Ubuntu OS 的 MBP 的 IP 地址。
[jeremie@my_account] ~ ❯ ssh -vvv 10.0.2.15
OpenSSH_7.3p1 Ubuntu-1, OpenSSL 1.0.2g 1 Mar 2016
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 19: Applying options for *
debug2: resolving "10.0.2.15" port 22
debug2: ssh_connect_direct: needpriv 0
debug1: Connecting to 10.0.2.15 [10.0.2.15] port 22.
debug1: connect to address 10.0.2.15 port 22:
Connection timed out ssh: connect to host 10.0.2.15 port 22:
Connection timed out
对于sudo lsof -inP
,我得到了以下图片:
有趣的问题:我是否network
以某种方式修改了我的虚拟机的 VirtualBox?
给定 IP,我怀疑问题是主机不知道如何将流量路由到 10.0.2.15?从 10.0.2.15 发起 SSH 会话时,流量默认被定向(路由)到 192.168.102.x 网络。您可以通过尝试从 192.xxx 机器 ping 10.xxx 机器来测试这个理论,如果它说诸如网络无法访问之类的东西,您有答案。
在这种情况下,一个潜在的解决方案是修改 VM 以在 192.xxx 网络上拥有一个地址,然后您应该能够从任一机器执行 SSH。
本周早些时候我遇到了同样的问题。在虚拟机上使用该
ssh
命令的正确方法是从 VirtualBox 配置虚拟机的网络,如下所示:事实上,正如@RichardRose 和@TAtakaiWasumi 所指出的,
ssh
在VM 上使用命令需要有一个类似于192.168.x.x
. 我不是专家,但我在特定时间阅读了与此相关的内容。希望它会工作!