我有一个在我的 Windows 7 机器上运行的 Ubuntu VM。如何设置它以便我可以通过 SSH 从外部访问网络服务器?
我找到了步骤( 在 VirtualBox 主机和来宾虚拟机之间设置 SSH 访问 )能够从我的主机 ssh 到我的来宾,但这仍然给我留下了通过路由器访问它的问题。
我想我可以在我的 Windows 机器上安装一个 SSH 服务器,然后隧道几次(尽管我不是 100% 确定在本地、动态等方面使用什么,或者如何设置多个隧道?),但是有没有办法让我的路由器直接访问虚拟机,这样我就可以直接端口转发到它?
登录来宾 Linux VirtualBox VM 的最佳方式是端口转发。默认情况下,您应该已经有一个使用NAT的接口。然后转到 网络 设置并单击 端口转发 按钮。添加新 规则 。作为规则名称,插入“ssh”。作为“主机端口”,插入 3022。作为“访客端口”,插入 22。规则的其他所有内容都可以留空。
或从命令行
VBoxManage modifyvm myserver --natpf1 "ssh,tcp,,3022,,22"
其中“myserver”是创建的 VM 的名称。检查添加的规则:
VBoxManage showvminfo myserver | grep 'Rule'
就这样!请确保您不要忘记在 VM中安装SSH服务器:
sudo apt-get install openssh-server
要通过 SSH 访问来宾 VM,请编写:
ssh -p 3022 user@127.0.0.1
user您在 VM 中的用户名在哪里。
user