Linux初学之SSHD服务

今天刚刚看了SSHD服务,在windows下安装了一个SecureCRT来作为连接Linux的客户端,安好之后试着连了一下作为服务器端的虚拟机的ip,相当于远程连接吧,我的天,对于我这种电脑配置比较低的虚拟机用户真是太有用了,之前只要一开启虚拟机,卡个十几分钟都是比较可观的了,每次真是心累死我,但是用了SecureCRT之后,那可真是舒爽,虚拟机再卡,只要连上它的ip,就可以在客户端进行一些操作,可真是我的福音呀,嘻嘻嘻。。。下来就对于我的理解对SSHD服务进行一些介绍。
一、SSH是什么?
SSH 是 Secure Shell。由 IETF 的网络工作小组(Network Working Group)所制定。
SSH 是建立在应用层和传输层基础上的一种安全协议。
SSH传输数据是加密的,可以有效防止传输过程被截取数据保障安全。
SSH的数据是经过压缩的,所以可以加快传输的速度。

二、SSH的用处是什么?
可以让远程主机通过网络访问sshd服务,开始一个安全shell,并对其进行操控。

通过SSH连接可以远程管理Linux等设备,默认linuxssh端口是22端口。但这个端口是可以改变的。

三、SSHD是什么?

 通过网络在主机中开启shell的服务。(一般在Linux下有个不成文的规定就是后缀为-D的命令基本上都是服务的意思)

一般来说我们用到协议就会想到有客户端和服务器端,在这里客户端我用的是windows下安装SecureCRT,服务器端是在Linux主机安装SSHD。

四、客户端的安装及**---SecureCRT

 1、安装包及***的下载   

     链接:https://pan.baidu.com/s/1XJz3KHe9re9Thf9fbbSWzg 
     提取码:pc4z 
     我这里安装的是SecureCRT8.1.0 64位的版本,如果想安装其他版本的可自行百度。

2、安装SecureCRT

     下载完成后,你会在自己设置的路径下看到如下两个文件:

Linux初学之SSHD服务

Linux初学之SSHD服务

这个是我解压后的,如图示,第一个是**时需要的***,第二个是我们需要安装的应用,,双击该应用程序,一直next,直到出现如下页面:

Linux初学之SSHD服务

Complete是系统默认安装,但一般都会安装到C盘,因此需要点击Custom自定义安装。之后继续next,到如下页面更改安装路径。

Linux初学之SSHD服务

接下来我勾选生成桌面快捷方式,点击next ->install。

Linux初学之SSHD服务

安装完成后,先不要运行,取消默认勾选,点击finish 。

Linux初学之SSHD服务

此时在桌面会看到一个快捷方式的图标,如下图:

Linux初学之SSHD服务                        至此,SecureCRT的安装已经大功告成,下来就是**了。

3、**SecureCRT

   双击打开SecureCRT ******.exe,如下图,点击patch

   Linux初学之SSHD服务 

点击patch后会自动找到以下文件位置,接下来选择文件即可,选择完成后点击generate,生成*** ,同时Issue Date被更新为安装当天的日期。

Linux初学之SSHD服务                         Linux初学之SSHD服务

接着回到桌面双击执行SecureCRT程序,选择文件数据存储位置,点击OK

Linux初学之SSHD服务

接下来按照以下步骤即可

Linux初学之SSHD服务       Linux初学之SSHD服务

Linux初学之SSHD服务      

将***生成的信息按照提示复制粘贴过去,因为我已经安装完成了,这些图片都是按照网上步骤来的,步骤都是一致的,只是每个人生成的信息不同,复制时根据自己***生成的信息按照如下步骤进行**。

Linux初学之SSHD服务

Linux初学之SSHD服务

Linux初学之SSHD服务

完成后会让你填写登陆SecureCRT的账号密码,填写后每次打开SecureCRT需要登陆账号密码,这里我选择不填写 。

Linux初学之SSHD服务

到这里SecureCRT**已经完成了,接下来就是主机服务器端的搭建。

五、服务器端的搭建--主机为Linux系统

 Linux一般不会自带SSHD服务,需要自己安装。 打开Linux的终端,在root用户下输入apt-get install openssh 或者在普通用户下输入sudo apt-get install openssh 进行服务器端的搭建。

当主机中开启openssh服务,那么就对外开放了远程连接的接口,即让客户端可以通过IP访问主机sshd服务,开始一个安全shell。

这一系列的配置昨天晚上已经全部完成了,网上的资料说的是服务端不需配置就可自行运行,今天写博客时我重新打开虚拟机与客户端连接,根据网上的资料然后我对服务端的理解就是只要开启虚拟机,服务器端就可开启,但事实并不是我想的那样,直接那样,客户端根本连不上服务器端,经过多次尝试之后,我找到了服务器端开启服务的命令,在终端输入命令之后,,,诶,,它就那样好了,客户端和服务器端已经连接的妥妥的。

下面我整理出一些服务端常用的命令:

 systemctl list-units ##列出当前系统服务的状态

 systemctl list-units-files ##列出服务的开机状态

 systemctl status sshd ##查看指定服务的状态

 systemctl stop sshd ##关闭指定服务

 systemctl start sshd ##开启指定服务

 systemctl restart sshd ##重新启动服务

我就是在linux终端输入systemctl restart sshd ##重新启动服务命令,然后按照要求输入密码,再打开SecureCRT,连上了,嘻嘻,一切都那么完美。

六、客户端与服务器端的远程连接(SSH协议)

1、客户端的配置

 双击打开桌面SecureCRT程序,如果是第一次打开,会弹出以下页面

 Linux初学之SSHD服务

以上列出的所有选择都是远程连接的协议,我们用的是SSH协议,但又发现SSH有两个协议,一般我们默认的是SSH2,因为SSH1协议据说现在已经可以**密码,那么对于一些加密性比较高的用户就不适用,肯定不太安全。

2、客户端与服务器端的网口配置

1步骤完成后next进入下一个页面,此页面需要配置服务器端的ip,页面如下:

Linux初学之SSHD服务

在配置ip之前,我们先要检查虚拟机的网络设置。打开虚拟机—>设置—>网络适配器,这里我们要用的是NAT模式(共享主机ip地址)。

Linux初学之SSHD服务

然后打开虚拟机终端,通过ifconfig命令查看虚拟机的ip地址,如下图:

Linux初学之SSHD服务

虽然我们已经找到了虚拟机的ip,但是虚拟机的ip是否和windows的ip是否一致呢?我们需要打开控制面板—>网络和Internet—>网络和共享中心—>更改适配器设置 会出现如下页面:

Linux初学之SSHD服务

看到这儿不知道小伙伴们是不是也想到为什么一个虚拟机却出现了两个VMnet。

VMnet1,这是一个Host-Only网络模式,虚拟网卡VMnet1作为虚拟机的网关接口,为虚拟机提供服务。在虚拟机启动之后,如果用ifconfig命令,会很清楚的看到,默认网关就是指向 VMnet1网卡的地址的。

VMnet8,这是一个NAT方式,是创建虚拟机时它自创的一个网卡,虚拟机的网关即是VMnet8网卡所在的机器,即就是你的Host机器。同样,用ifconfig也可以看出来,虚拟机的默认网关也指向了VMnet8虚拟网卡地址。

总的来说,host-only与wmnet1虚拟网卡进行通信
                  NAT模式与VMnet8虚拟网卡进行通信    

我们前面已经配置好了虚拟机的网络适配器为NAT模式,因此鼠标右键点击VMnet8打开属性,出现如下界面:

Linux初学之SSHD服务

VMnet8的ip地址位于IPv4,打开IPv4的属性,可以看到ip地址和子网掩码和虚拟机里ifconfig得到的是同一个局域网,因此windows和linux之间的访问就可以在同一个组里面。但我一开始打开以下界面的时候,默认选择的是自动获得IP地址,,在网上查了资料后,我将ip地址改为ifconfig得到的那个ip。我的理解是,客户端要和服务器端进行通信,那么服务器必须要有一个固定的ip供客户端访问,但之前我在虚拟机里设置静态ip总是出错,于是我就在下图手动设置了一下。(我的理解不一定正确,希望能给我指正)

Linux初学之SSHD服务

完成以上几步之后,就到了配置SecureCRT的步骤:

1、Hostname:虚拟机里ifconfig后的ip地址

     Username:虚拟机的用户名(比如我的就是:fanrong),14.04及以上的版本必须用普通用户名,其他版本可用root。

Linux初学之SSHD服务

2、设置完之后一直默认下一步,完成->connect后到如下页面点击接受并保存。(这个是询问是否要有加密运算等,一般都选接受并保存)

Linux初学之SSHD服务

这样客户端也就配置好了,客户端就可直接远程连接服务器端的终端进行有关操作,以下是客户端的界面:

Linux初学之SSHD服务

七、体会

第一次接触网络协议这种东西,功能确实强大,分类也有很多种,我现在只了解了客户端和服务器端的远程连接,SSH协议主要应用于远程登录,它极大的解决了虚拟机卡顿但又需要用虚拟机的问题。emmmmm,就说这么多吧。。