Window下使用Xshell连接VirtualBox中CentOS SSH最佳实践

来源:互联网 发布:linux怎么退出全屏 编辑:程序博客网 时间:2024/04/30 12:26

网上已经有很多讲如何连接VMware的文章,但是针对一些可能遇到的细节没有讲全。这里会有一个非常
实际的例子,附带所有软件的链接,保证成功。最佳实践什么的都是骗人的。

1.安装VirtualBox

事实上VMware会有更全面的虚拟化支持,比如cuda,这里选择VirtualBox更容易上手一些,对一个开发环境来说够用。
VirtualBox直接去官网下载最新版,然后记得下载VirtualBox Extension Pack,当前版本的VirtualBox对应的VirtualBox Extension Pack是官网All supported platforms 指向的链接。

2.安装CentOS

  1. 去CentOS官网选择CentOS 6.7 x64_86,具体链接可以到 Mirror List里查找。
    比如,新浪的mirror,下载最小化版本CentOS-6.7-x86_64-minimal.iso即可。

  2. 在VirtualBox里安装CentOS,这里不必赘述,但是所有的check提示都选择skip,另外选择安装过程的语言,安好之后就也会是这种语言。这里默认US。

3.VirtualBox端口转发配置

  1. 关闭虚拟机

  2. 右键虚拟机->设置->网络,连接方式选择NAT,如下图:
    虚拟机端口转发方式
    转发设置

  3. 在上图界面选择端口转发,添加一项,客户端也就是虚拟机填写ssh默认的22,填写一个你想转发给主机的端口号,比如9023。NAT网络地址转换,客户端虚拟机的所有网络包都会由主机也就是你正在用的机器转发,所以这里设定端口转发后,你连接本机的9023端口就相当于连接客户机的22端口。
    比如,主机上

ssh root@127.0.0.1 -p 9023

就相当于连接客户机的22端口。
如果你有两个以上虚拟机的话,要把每个22端口转发到不同的主机端口上,比如9022和9023。

4.检查客户机能否联网

1.确定客户机可以联网

ping baidu.com

2.如果没有连接成功,很可能是网卡没有默认启动。
检查一下,

ip link show

3.如果没有开启,临时开启一下,然后ping一下。

临时开启网卡

4.要每次开机都自动配置网卡,则需要更改配置文件。

vi /etc/sysconfig/network-scripts/ifcfg-eth0

然后将onboot设置为yes。如果低版本的CentOs如6.2出现ifup eth0失败的情况,很可能是由于没有设置dhcp自动获取网络地址,将上述文件改为下图内容即可。具体操作见注脚。1

DEVICE=eth0HWADDR=08:00:27:07:C6:6DTYPE=EthernetUUID=e61ceb6d-9a50-483b-a9cd-9b36bef9853dONBOOT=yesNM_CONTROLLED=yesBOOTPROTO=dhcp

eth0配置文件
5. 如果开web 80 443端口,注意要把防火墙加白或者直接关掉。否则会出现外面web访问一直连接没有返回任何状态的现象。

/etc/init.d/iptables stop

5.主机用xshell连接centos

1.下载xshell5,安装时选择个人和家庭使用即可免序列号。
2.用xshell连接centos

ssh root@127.0.0.1 9023

xshell连接客户机

6.另外一种实现:Host Only双网卡模式

这里VirtualBox除了第一块网卡NAT可以实现访问外放,还可以增加第二块网卡实现HOST ONLY。
相当于给虚拟机添加了一块只跟主机通信的网卡,这样就不需要设置端口转发了,主机直接访问这个虚拟机HostOnly网卡的网址即可。
详见:http://my.oschina.net/duangr/blog/182541



  1. 按i或者a进入插入模式,改完之后按esc退出编辑模式,输入:wq写入并退出。 ↩
1 0