0
点赞
收藏
分享

微信扫一扫

Linux服务篇之SSH服务

fbd4ffd0717b 2022-03-23 阅读 51

文章目录

一、什么是SSH

SSH,全称 Secure Shell,安全外壳协议。

它由 IETF 的网络小组所制定,SSH 是建立在应用层基础上的安全协议。SSH 是较可靠的、高安全性的协议。利用 SSH 协议可以有效防止远程管理过程中的信息泄露问题

SSH最初是UNIX系统上的一个程序,后来又迅速扩展到其他操作平台。SSH客户端适用于多种平台。几乎所有UNIX平台都可运行SSH。

传统的网络服务程序(ftp、pop、telnet 等)在本质上都是不安全的,因为它们在网络上用明文传送口令和数据,别有用心的人非常容易就可以截获这些口令和数据。通过使用SSH,你可以把所有传输的数据进行加密,这样"中间人"这种攻击方式就不可能实现了,而且也能够防止DNS欺骗和IP欺骗。

在这里插入图片描述

在这里插入图片描述
从客户端来看,SSH提供两种级别的安全验证。

第一种级别(基于口令(密码)的安全验证)
只要你知道自己帐号和口令,就可以登录到远程主机。所有传输的数据都会被加密,但是不能保证你正在连接的服务器就是你想连接的服务器。可能会有别的服务器在冒充真正的服务器,也就是受到“中间人”这种方式的攻击。

第二种级别(基于密匙的安全验证)
需要依靠密匙,也就是你必须为自己创建一对密匙,并把公用密匙放在需要访问的服务器上。如果你要连接到SSH服务器上,客户端软件就会向服务器发出请求,请求用你的密匙进行安全验证。服务器收到请求之后,先在该服务器上你的主目录下寻找你的公用密匙,然后把它和你发送过来的公用密匙进行比较。如果两个密匙一致,服务器就用公用密匙加密“质询”(challenge)并把它发送给客户端软件。客户端软件收到“质询”之后就可以用你的私人密匙解密再把它发送给服务器。

使用第二种级别,你必须知道自己密匙的口令。但是,与第一种级别相比,第二种级别不需要在网络上传送口令。
第二种级别不仅加密所有传送的数据,而且“中间人”这种攻击方式也是不可能的(因为他没有你的私人密匙)。

二、实验

1.基于口令的ssh连接

  1. 首先开启两台虚拟机
    在这里插入图片描述
  2. 在服务器端安装openssh(yum install -y openssh
    其实,ssh服务在我们安装系统的时候就已经安装好了,不然我们的远程软件(xshell等)也不会能连上去了,因为这些软件就是基于ssh连接的。
    在这里插入图片描述
  3. 开启ssh服务,建立连接(ssh服务是默认开启的,我们可以使用 systemctl status sshd 命令查看状态)
    在这里插入图片描述
    在这里插入图片描述
  4. 安全加固(编辑 /etc/ssh/sshd_conf 文件)
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.基于密匙的ssh连接(密钥连接可完成免密码登录)

  1. 首先在服务端的配置文件中将公钥验证开启
    在这里插入图片描述

  2. 在客户端创建密钥文件
    在这里插入图片描述

  3. 将私钥发送给服务端
    在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
4. 建立连接
在这里插入图片描述

三、补充

1.scp命令

scp命令用于拷贝文件到其他机器

格式1(将本地文件拷贝到其他机器):scp [-r] 文件名 其他机器的用户名@IP地址:想拷贝的到的目录
(注:-r 表示拷贝文件夹,文件不用-r)

在这里插入图片描述
在这里插入图片描述
格式2(将其他机器的文件拷贝到本机):scp [-r] 其他机器的用户名@IP地址:像拷贝的文件 本地存放位置
在这里插入图片描述
在这里插入图片描述

2.sftp命令

使用了加密/解密技术,所以传输效率比普通的FTP要低,但安全性更高。操作语法与ftp几乎一样。

get(下载):
在这里插入图片描述

put(上传):
在这里插入图片描述
在这里插入图片描述

举报

相关推荐

0 条评论