ssh登陆虚拟机和分享目录¶
ssh登陆虚拟主机¶
VBoxManage modifyvm ubuntu --natpf1 "ssh,tcp,,3022,,22"
# virtualbox -> setting -> port forwading
VBoxManage showvminfo myserver | grep 'Rule'
# check the port forwarding
sudo apt-get install openssh-server
# make sure installed openssh-server in the virtual system
ssh -p 3022 user@127.0.0.1
# user is the name in virtualbox
cd shared
watch -d -n 1 ls -l
# 使用watch监控
link: how to ssh to a virtual guest externally through a host
分享目录¶
- 方法一
# 本机操作
sudo apt install sshfs
mkdir shared # 同时在虚拟机创建shared_vm
sshfs user_vm@127.0.0.1:/home/user_vm/shared_vm ~/shared -p 3022
# 测试可以使用watch监测
watch -d -n 1 ls -al
- 方法二
# 设置virtualbox
## device -> shared folder setting -> 添加分享文件
## device -> insert guest additions CD Images -> 添加镜像
- 方法三
# 设置virtualbox
# device -> shared folder setting -> 添加分享文件“shared”
sudo adduser user vboxsf # 将user加到vboxsf组中
mount shared # 虚拟机mount
sudo mount -t vboxsf -o uid=1000,gid=1000 shared /home/user_vm/shared # 虚拟机终端
- 自动挂载
- 可以在virtualebox分享文件设置,直接设置成自动挂载
- 也可以修改“/etc/fstab/”
# /etc/fstab
<file system> <mount point> <type> <options> <dump> <pass>
<name_of_share> /path/to/mountpoint vboxsf <options> 0 0
link:
端口转发¶
端口转发(port forwarding)是网络地址转换(network address translation--NAT)的一个应用,它在请求信息通过路由时,重定向了地址+端口。
比如“ssh登陆虚拟机”中,将虚拟机的22端口转发到宿主机的3022端口,实现宿主机和虚拟机之间的通信。
端口转发一般常常用于虚拟机与宿主机之间通信时使用。
link: