无外网环境下如何从VirtualBox Ubuntu 8.04虚拟机SSH/SSHFS访问Debian 9宿主机
当然可以!完全不需要依赖外部网络,VirtualBox自带的内部网络机制就能轻松实现虚拟机到宿主机的SSH/SSHFS访问,下面一步步给你拆解具体操作:
第一步:配置VirtualBox的虚拟机网络模式
我们用「仅主机适配器(Host-Only Adapter)」模式就够了,这个模式专门用于宿主机和虚拟机之间的私有通信,完全隔离外部网络:
- 打开VirtualBox,选中你的Ubuntu 8.04虚拟机,点击顶部的「设置」按钮
- 切换到「网络」标签页,在「网络适配器1」的下拉菜单里选择「仅主机适配器」
- 点击右侧的「高级」按钮,把「混杂模式」设置为「允许所有」(避免网络权限问题)
- 点击「确定」保存配置
第二步:确认宿主机和虚拟机的网络连通性
配置完网络后,先确保两者能互相 ping 通:
- 查看宿主机的Host-Only网卡IP:在Debian 9宿主机的终端里执行:
你会看到类似ip addr show vboxnet0inet 192.168.56.1/24的输出,这个192.168.56.1就是宿主机在私有网络里的IP。 - 查看虚拟机的IP:启动Ubuntu 8.04虚拟机,在终端里执行:
找到对应网卡(一般是eth0)的IP,应该是ifconfig192.168.56.x的网段(比如192.168.56.101)。 - 测试连通性:在虚拟机终端里ping宿主机IP:
如果能收到回包,说明网络已经通了。ping 192.168.56.1
第三步:确保宿主机的SSH服务正常运行
Debian 9默认应该预装了openssh-server,但还是确认一下:
- 在宿主机终端执行,查看SSH服务状态:
如果显示systemctl status sshactive (running)就没问题;如果没装,因为没有外网,你得用Debian 9的安装镜像配置本地源来安装(本地源配置方法可以参考系统文档,这里就不展开了)。 - (可选)调整SSH配置适配老系统:编辑
/etc/ssh/sshd_config文件,确保以下配置(方便Ubuntu 8.04的老SSH客户端连接):
修改完后重启SSH服务:PermitRootLogin yes # 如果你想用root账户登录,或者设为prohibit-password用密钥登录 PasswordAuthentication yes # 允许密码登录,老客户端可能默认需要这个sudo systemctl restart ssh - (可选)防火墙放行:如果宿主机开了ufw防火墙,允许Host-Only网段的SSH访问:
sudo ufw allow from 192.168.56.0/24 to any port 22
第四步:从虚拟机通过SSH访问宿主机
现在直接在Ubuntu 8.04的终端里执行连接命令就行:
ssh 宿主机用户名@宿主机Host-OnlyIP
比如你的宿主机用户是debian_user,IP是192.168.56.1,就输:
ssh debian_user@192.168.56.1
第一次连接会提示确认主机指纹,输入yes,然后输入宿主机用户的密码,就能成功登录宿主机了!
第五步:用SSHFS挂载宿主机目录到虚拟机
如果要直接访问宿主机的文件目录,用SSHFS挂载更方便:
- 在虚拟机里安装SSHFS:因为没有外网,得用Ubuntu 8.04的安装ISO配置本地源来安装。挂载ISO后,编辑
/etc/apt/sources.list添加本地源,然后执行:sudo apt-get update && sudo apt-get install sshfs - 创建挂载点:在虚拟机里建一个目录用来挂载宿主机目录:
mkdir ~/host_shared - 执行挂载命令:
比如要挂载宿主机的sshfs 宿主机用户名@宿主机Host-OnlyIP:/宿主机目标目录 ~/host_shared/home/debian_user/Documents目录,就输:
输入密码后,你就能在虚拟机的sshfs debian_user@192.168.56.1:/home/debian_user/Documents ~/host_shared~/host_shared里直接操作宿主机的文件了! - 卸载挂载:不用的时候可以卸载:
fusermount -u ~/host_shared
额外优化:免密码登录
不想每次输密码的话,可以配置SSH密钥登录:
- 在虚拟机终端生成密钥对:
一路按回车默认生成就行。ssh-keygen - 把虚拟机的公钥复制到宿主机:
输入一次密码后,下次再用SSH或SSHFS连接就不用输密码了。ssh-copy-id 宿主机用户名@宿主机Host-OnlyIP
内容的提问来源于stack exchange,提问作者Mephisto
相关产品推荐
相关产品推荐

