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

 2017年01月23日    3500     声明


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

1. 安装虚拟机

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

创建虚拟机

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

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

安装虚拟系统

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


2. SSH连接虚拟机

1. 确认使用NAT连接

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

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

如上所示,确保使用NAT网络连接方式,并点击端口转发(Port Forwarding),配置转发规则。


2. 配置端口转发规则

本机终端SSH连接VirtualBox中的Linux虚拟机-配置端口转发规则

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

3. 虚拟机开启22端口

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

$ sudo vi /etc/ssh/sshd_config 

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

Port 22

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

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

sudo /etc/init.d/ssh restart

4. SSH连接虚拟机

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

$ ssh -l itbilu -p 1111 127.0.0.1