也许有更好的方法可以做到这一点,但我正在尝试从主机的 Chrome 浏览器访问在 VM(VMware Player 16)中运行的 Web 应用程序。
- 主机是 Windows 10,VM 是 Ubuntu。
- 我有一个 Web 应用程序在 Ubuntu VM 中运行
192.168.39.113:80
(minikube
VM inside ofkvm2
)。 - VM 正在使用桥接连接,并且 IP 为
10.0.0.205
. - 我在 Ubuntu VM 上安装了 SSH,使用
sudo apt install openssh-server
. - 我现在可以从主机通过 SSH 连接到虚拟机。
- 我正在尝试使用 创建隧道
ssh -L 8080:192.168.39.113:80 [email protected]
,但是当我转到 时,我仍然无法从主机的浏览器连接到 Web 应用程序10.0.0.205:8080
。 - 我确实启用
AllowTcpForwarding yes
了后跟sudo service sshd restart
,当我转到 时,我仍然无法从主机浏览器连接到 Web 应用程序10.0.0.205:8080
。
有关如何解决此问题的建议?
您在命令中省略了本地 IP 地址,这意味着在本地浏览器中使用“127.0.0.1:8080”或“localhost:8080”……或者,添加您想要在SSH 命令。
我在我的一个 Virtualbox VM 中测试
zim
并启动了它的网络浏览器..如果我想在浏览器中使用任何其他“本地主机”IP,例如127.10.10.1,我必须专门指定它:
ssh -L 127.10.10.1:5151:192.168.100.100:6968 [email protected]
这可以使用远程 ssh 服务器或本地 ssh 服务器([email protected]),我不必更改 sshd_config,因为 AllowTcpForwarding 默认设置为 yes。
唯一真正的阻止程序是试图在浏览器中使用特定的 IP 地址,而没有在 ssh -L 命令中指定一个。