最近在学习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地址为192.168.172.168,下面有两种连接模式,第一种:通过Linux系统的IP地址进行访问;第二种:通过宿主机的IP地址端口转发进行连接。(两种运用场景不一样,笔者推荐第二种方法,为什么推荐第二种,下面就细细道来)

  场景一:

  如果一台PC机上安装了虚拟机,我们要通过SSH访问这个虚拟机的Linux的时候(即:宿主机直接访问虚拟机),直接通过虚拟机的Linux主机IP地址进行访问(就是上面提到的192.168.172.168),这个时候我们只需要到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为192.168.172.168(如果场景一的话就是我们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

SSH安装篇之——SecureCRT连接(内网和外网)虚拟机中的Linux系统(Ubuntu)的更多相关文章

  1. SecureCRT连接(内网和外网)虚拟机中的Linux系统(Ubuntu)

    最近在学习Linux,看了网上很多SecureCRT连接本地虚拟机当中的Linux系统,很多都是需要设置Linux的配置文件,有点繁琐,所以自己就摸索了一下,把相关操作贴出来分享一下. SecureC ...

  2. SecureCRT连接虚拟机中的Linux系统(Ubuntu)

    最近在学习Linux,看了网上很多SecureCRT连接本地虚拟机当中的Linux系统,很多都是需要设置Linux的配置文件,有点繁琐,所以自己就摸索了一下,把相关操作贴出来分享一下. SecureC ...

  3. 用SecureCRT连接虚拟机中的Linux系统(Ubuntu)

    今天突然练习linux命令行的时候,想在window中联系linux命令行.经过一番dudu找到了一个不错的的工具(SecureCRT--意思安全)就是用SSH链接linux主机.推荐大家使用.毕竟w ...

  4. SecureCRT连接虚拟机中的Linux系统(Ubuntu)_Linux教程

    有道云笔记链接地址: https://note.youdao.com/share/?id=826781e7ca1fd1223f6a43f4dc2c9b5d&type=note#/

  5. 配置SecureCRT连接本地虚拟机中的Linux系统

    转自:http://www.pythoner.com/196.html 由于平时公司开发时都是使用SecureCRT连接的Linux服务器,所以也想使用SecureCRT在自己电脑上连接本地虚拟机中的 ...

  6. SSH实现在WIN7系统下访问虚拟机中的Linux系统

    使用的是centos6.4进行练习的,安装的是vmware8虚拟机.以下是总结的一些步骤: 一.确保vmware使用NAT的连接方式,如做地址.端口映射 首先查看vmware的中网络连接的一些方式:E ...

  7. Hyper-V 配置虚拟机内网及外网环境

    一.为Hyper-V虚拟机准备内外网环境 1.内网环境——虚拟机与虚拟机及主机可以互通

  8. UNIX网络编程——内网与外网间通信

    QQ是一个基于TCP/UDP协议的通讯软件 发送消息的时候是UDP打洞,登陆的时候使用HTTP~因为登陆服务器其实就是一个HTTP服务器,只不过不是常用的那些,那个服务器是腾讯自行开发的!!! 一.登 ...

  9. 内网IP外网IP的关联及访问互联网原理

    首先解释一下“内网”与“外网”的概念: 内网:即所说的局域网,比如学校的局域网,局域网内每台计算机的IP地址在本局域网内具有互异性,是不可重复的.但两个局域网内的内网IP可以有相同的. 外网:即互联网 ...

随机推荐

  1. linq where in 排序

    List<INGREDIENT> selectedIngredients = db.INGREDIENT .Where(i => model.SelectedIngredients. ...

  2. C# int转string 每三位加一个逗号

    ; Console.WriteLine(aaaa.ToString("N0")); Console.WriteLine()); Console.WriteLine("架构 ...

  3. Java对象的序列化与反序列化-Json篇

    说到Java对象的序列化与反序列化,我们首先想到的应该是Java的Serializable接口,这玩意在两个系统之间的DTO对象里面可能会用到,用于系统之间的数据传输.或者在RPC(远程方法调用)时可 ...

  4. Java多线程——Lock&Condition

    Lock比传统线程模型中的synchronized方式更加面向对象,与生活中的锁类似,锁本身也应该是一个对象.两个线程执行的代码片段要实现同步互斥的效果,它们必须用同一个Lock对象. package ...

  5. xshell使用xftp传输文件 使用pure-ftpd搭建ftp服务

    xshell使用xftp传输文件 下载xftp5 https://www.baidu.com/link?url=8rtxgX3JRIbUFO1Samzv5aXhfwRG7Cf8i4vi573QexoH ...

  6. 给zTree添加onSelect callback

    由于jquery ui没有集成tree控件,所以在网上找到了zTree v3.zTree无疑是功能非常强大的一款jquery的插件,而且是国人作品,zTree的文档写得也非常好,效果很炫.但是我在使用 ...

  7. Thinkphp5模板继承

    代码 application\index\controller\index.php <?php namespace app\index\controller; use app\index\con ...

  8. Lua中用Split函数分割字符串

    function Split(szFullString, szSeparator) local nFindStartIndex = local nSplitIndex = local nSplitAr ...

  9. 【转】Java中的多线程学习大总结

    多线程作为Java中很重要的一个知识点,在此还是有必要总结一下的. 一.线程的生命周期及五种基本状态 关于Java中线程的生命周期,首先看一下下面这张较为经典的图: 上图中基本上囊括了Java中多线程 ...

  10. 泛泰A870K去掉相机快门声音的方法

    首先ROOT手机,挂载读写,/system/media/audio/ui里面哈,把camera-click.ogg改成camera-click.ogg.bak就可以了 转载自:http://bbs.9 ...