SSH安装篇之——SecureCRT连接(内网和外网)虚拟机中的Linux系统(Ubuntu)
最近在学习Linux,看了网上很多SecureCRT连接本地虚拟机当中的Linux系统,很多都是需要设置Linux的配置文件,有点繁琐,所以自己就摸索了一下,把相关操作贴出来分享一下。
SecureCRT是一款支持SSH(SSH1和SSH2)的终端仿真程序,简单地说是Windows下登录UNIX或Linux服务器主机的软件。这样操作的时候不必进入到linux桌面,可以更方便的在命令行下进行操作。
1、环境
宿主机OS:Windows 8.1 64bits
虚拟机OS:Ubuntu 15.04 64bits
VMWare:11.1.0
SecureCRT: 7.1.1.264 64bits
2、配置过程
VMware的网络连接我们要选择NAT模式,还有一种方式就是选择桥接模式(这里就不做说明,不推荐这个方式,由于每次路由器动态分配给虚拟机的IP地址不一样,导致每次通过SecureCRT连接的时候host地址要更改)。
进入到Ubuntu下,先查看Ubuntu虚拟机的IP配置,打开终端(Ctrl+Alt+T),通过ifconfig命令查看,可以看到Ubuntu下的IP地址信息。
可以看出,该IP地址为xxx.xxx.xxx.xxx,下面有两种连接模式,第一种:通过Linux系统的IP地址进行访问;第二种:通过宿主机的IP地址端口转发进行连接。(两种运用场景不一样,笔者推荐第二种方法,为什么推荐第二种,下面就细细道来)
场景一:
如果一台PC机上安装了虚拟机,我们要通过SSH访问这个虚拟机的Linux的时候(即:宿主机直接访问虚拟机),直接通过虚拟机的Linux主机IP地址进行访问(就是上面提到的xxx.xxx.xxx.xxx),这个时候我们只需要到Windows下设置VMware Network Adapter VMnet8,其中VMnet8的IP地址和默认网关和虚拟机要相同(保持和虚拟机IP保持在同一个网段)
根据Ubuntu下的信息,设置如上图所示即可。
场景二:
下面这个场景其实实际运用中是最多的,当你需要用一台PC机,远程访问(内网或者外网都可以)另一台PC机下的虚拟机里的Linux,这个时候场景一所说的在同一个网段就不适用了。实际我们可能只能访问到那台宿主的PC机,但是不能访问宿主里面的虚拟机,相信这个运用场景在现实中特别常见,所有这个时候我们需要用到端口转发模式了,即:通过宿主PC机转发虚拟机对应的端口号,间接的访问到虚拟机的Linux。
那么如何转发,虚拟机提供了NAT的转发功能,如图所示:
如图:编辑=》首选项
如图:NAT转发设置
设置好转发,在浏览器输入宿主PC机的IP地址和刚刚设置的外部Port,如果Linux已经安装了SSH,就能看到如图所示,不能的话说明Linux还没有安装SSH服务,后面介绍如何安装SSH服务
前期工作已经做好,接下来就是要在Ubuntu下安装SSH服务了,打开终端,先检查一下,是否已经安装了SSH服务。
输入命令:ssh uname@localhost。如果出现了ssh: connect to host localhost port 22: Connection refused
一般都是没有安装SSH,这个时候需要安装SSH。
(1)安装SSH服务
打开Ubuntu的终端,输入: sudo apt-get install openssh-server
安装完毕后ssh默认已启动。可以使用下述命令查看是否有进程在22端口上监听,即是否已启动: netstat -nat | grep 22
如果连接不了,则我们需要关闭掉防火墙
(2)关闭掉防火墙
sudo ufw disable
关闭防火墙之后,netstat -nat | grep 22一下,就能看出SSH服务了
(3)划重点的温馨提示(允许root用户远程登录)
大家可能有种需求是:我们通过第三方的SSH连接工具,我们希望直接使用root账户进行登录(因为普通用户总是请求权限,有点受不了,这种频率还是蛮高的),所有呢~我们在SSH服务的时候,应该主要切换到root账号,使用root账户去安装SSH服务,不过我们安装完SSH服务,还需要设置SSH配置文件(sshd_config),不设置的话,在使用SSH工具连接root账户,会提示被拒绝的。下面是讲解下怎么配置SSH文件~
1、终端输入命令 sudo vim /etc/ssh/sshd_config ,修改ssh服务配置文件,如图所示:
2、找到PermitRootLogin,将参数prohibit-password改为yes,如图所示:
改成后,如图所示:
3、设置完需ssh配置文件,我们需要要重启ssh服务,命令 service sshd restart 或者 /etc/initd.d/sshd restart
打开SecureCRT软件,进行配置。ProtoCol模式选为SSH2,Port为22,HostName为xxx.xxx.xxx.xxx(如果场景一的话就是我们Ubuntu的IP地址,如果是场景二,那就是我们宿主PC机的IP地址),UserName为我们Ubuntu的登录账户。
PassWord为我们Ubuntu的登录密码
然后就是见证奇迹的时候到了~~~
我们随便输入常见命令:ls
说明已经连接成功了。
4、常见问题
大家发现上面ls的时候,返回的数据是乱码。因为SecureCRT中文显示乱码
解决办法Options->Session Options->Terminal->Appearance,Character选择UTF-8。
然后再输入ls试试看,亲切的界面回来了
。
然后就尽情享受coding的乐趣吧。——转载请注明出处。
PS:如有问题,请留言,未经允许不得私自转载,转载请注明出处:http://www.cnblogs.com/xuliangxing/p/4462929.html