Linux——本机终端SSH连接VirtualBox中的Linux虚拟机

 

VirtualBox是一款开源的虚拟机软件,它遵循GNU许可,现属于Orcle公司旗下产品。VirtualBox号称是最强的免费虚拟机软件,笔者用其虚拟了Ubuntu、CentOS两个Linux系统,是否最强大不得而知,但是的确免费。由于要在本机及两个虚拟机之间进行切换,操作比较麻烦,还不支持命令粘贴,所以想配置一下,能够在本机的终端连接两台虚拟机。

1. 安装虚拟机

VirtualBox创建及安装虚拟机相对简单,分为:创建虚拟机、安装虚拟系统两步,简单介绍如下:

1)创建虚拟机

创建一个VirtualBox虚拟机包含以步骤:

  1. 命名及选择虚拟机类型
  2. 选择内存大小
  3. 创建或选择已存在的虚拟磁盘

2)安装虚拟系统

创建虚拟机后,start启动虚拟机。如果虚拟机还没有安装操作系统,会提示选择安装镜像。选择后,按提示一步步安装即可。

 

2. SSH连接虚拟机

1. 确认使用NAT连接

打开虚拟机,进入主界面:

右击所要设置的虚拟机,设置(Settings)->网络(Network):

如上所示,确保使用NAT网络连接方式;

 

2. 配置端口转发规则

在上图中点击高级,出现下图中下级菜单,点击端口转发(Port Forwarding):

在弹出的对话框中配置转发规则(如果没有「Rule」,点击右上角的「+」,按下图填写配置规则):

点击「OK」,完成配置。

如上所示,本地主机连接端口设置为1111(也可以是任意没有被系统占用的端口),而要连接的客户主机(虚拟机)端口设置为2222是SSH连接默认使用的端口,也可以设置为其它端口,设置后在客户主机中进行对应设置即可。设置完成后,NAT网络会通过设置的本地端口转发到虚拟机对应的端口。

3. 虚拟机开启22端口

VirtualBox完成配置后,还要确认虚拟机中对应的SSH端口已经开启。在虚拟机中开启终端,编辑以下文件:

$ sudo vi /etc/ssh/sshd_config 

确认以下监听端口已经开启: Port 22 

如图我的虚拟机中sshd_config文件显示 Port 22 未开启,删除 # 后保存并退出。

 


注意:SSH端口也可以有多个,添加多个Port行即可。

设置完成后,使用以下命令重启SSH

 sudo /etc/init.d/ssh restart 

4. SSH连接虚拟机

配置完成后,就可以在本机的命令行客户端,使用以下SSH命令连接虚拟机:

$ ssh -l [username] -p 1111 127.0.0.1

 

 
posted @ 2018-09-19 20:13  怪猫佐良  阅读(10649)  评论(2编辑  收藏  举报