宝塔服务器面板,一键全能部署及管理,送你10850元礼包,点我领取

文章目录

  • 一、什么是SSH
  • 二、SSH的原理
  • 三、SSH的安全性
    • 中间人攻击
    • 解决
  • 四、SSH的使用
    • Linux
    • Windows
    • SSH工具的总结
  • 五、Tabby
    • 1. 根据自己的系统下载相应的Tabby安装包
    • 2. 双击开始安装
    • 3. Tabby 简单使用
  • 参考链接

一、什么是SSH

SSH是一种网络协议,用于计算机之间的加密登录。如果一个用户从本地计算机,使用SSH协议登录另一台远程计算机,我们就可以认为,这种登录是安全的,即使被中途截获,密码也不会泄露。
最早的时候,互联网通信都是明文通信,一旦被截获,内容就暴露无疑。1995年,芬兰学者Tatu Ylonen设计了SSH协议,将登录信息全部加密,成为互联网安全的一个基本解决方案,迅速在全世界获得推广,目前已经成为Linux系统的标准配置。

Secure Shell(SSH) 是由 IETF(The Internet Engineering Task Force) 制定的建立在应用层基础上的安全网络协议。它是专为远程登录会话(甚至可以用Windows远程登录Linux服务器进行文件互传)和其他网络服务提供安全性的协议,可有效弥补网络中的漏洞。通过SSH,可以把所有传输的数据进行加密,也能够防止DNS欺骗和IP欺骗。还有一个额外的好处就是传输的数据是经过压缩的,所以可以加快传输的速度。目前已经成为Linux系统的标准配置。

SSH只是一种协议,存在多种实现,既有商业实现,也有开源实现。


二、SSH的原理

SSH之所以能够保证安全,原因在于它采用了 公钥加密
整个过程是这样的:
(1)远程主机收到用户的登录请求,把自己的公钥发给用户。
(2)用户使用这个公钥,将自己的登录密码加密后,发送回来。
(3)远程主机用自己的私钥,解密用户的登录密码,如果密码正确,就同意用户登录。

SSH之所以能够保证安全,原因在于它采用了非对称加密技术(RSA)加密了所有传输的数据。


三、SSH的安全性

中间人攻击

SSH通信过程本身是安全的,但是实施的时候存在一个风险:如果有人截获了登录请求,然后冒充远程主机,将伪造的公钥发给用户,那么用户很难辨别真伪。因为不像https协议,SSH协议的公钥是没有证书中心(CA)公证的,也就是说,都是自己签发的。
可以设想,如果攻击者插在用户与远程主机之间(比如在公共的wifi区域),用伪造的公钥,获取用户的登录密码。再用这个密码登录远程主机,那么SSH的安全机制就荡然无存了。这种风险就是著名的"中间人攻击"(Man-in-the-middle attack)。

解决

由于存在中间人攻击,所以SSH提供了两种级别的验证方法:

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

第二种级别(基于密钥的安全验证):你必须为自己创建一对密钥,并把公钥放在需要访问的服务器上。如果你要连接到SSH服务器上,客户端软件就会向服务器发出请求,请求用你的密钥进行安全验证。服务器收到请求之后,先在该服务器上你的主目录下寻找你的公钥,然后把它和你发送过来的公钥进行比较。如果两个密钥一致,服务器就用公钥加密“质询”(challenge)并把它发送给客户端软件。客户端软件收到“质询”之后就可以用你的私钥在本地解密再把它发送给服务器完成登录。与第一种级别相比,第二种级别不仅加密所有传输的数据,也不需要在网络上传送口令,因此安全性更高,可以有效防止中间人攻击。


四、SSH的使用

SSH只是一种协议,存在多种实现。

Ubuntu中有免费开源的SSH实现:OpenSSH
Windows上的SSH实现:PuTTY软件

SSH的实体分为客户端client和服务器端server,客户端是请求连接的一方,客户端是被连接的一方。

Linux

  1. 文章 SSH简介及两种远程登录的方法 介绍了 OpenSSH 的安装和使用方法

Windows

  1. 文章 win10开启ssh服务远程连接 介绍了如何开启win10 系统上的SSH服务
  2. 文章 Windows 下的免费 SSH 客户端工具 推荐了一些 Windows上的免费 SSH 客户端软件
  3. 文章 PuTTY的下载安装和基本使用方法教程 介绍了Windows上的免费 SSH 客户端软件之一的 PuTTY 的下载安装和基本使用方法

SSH工具的总结

请参考大佬的文章:12种SSH工具的基本特性总结


五、Tabby

说到SSH软件,在这里推荐Tabby。它能实现SSH又不止于此,功能很强大。
Tabby 是市面上少见的既好用又好看还免费开源的远程终端工具。

Tabby是一个高度可配置的终端模拟器、SSH 和串行客户端,适用于 Windows、macOS 和 Linux。

Tabby安装与使用教程:

  1. 找XShell替代品,用Tabby
  2. Tabby 使用指南:一个高度可配置的现代化终端模拟器
  3. 工程师神器-终端-Tabby
  4. linux远程管理工具之tabby
  5. Linux – Xshell 扔了,烦,用这个终端工具

如果大家不想读教程,看大佬的视频也行:【科研利器】开源终端工具tabby,强烈推荐!

1. 根据自己的系统下载相应的Tabby安装包

官网:https://tabby.sh/
点击“Download”,进入下载地址:https://github.com/Eugeny/tabby/releases/tag/v1.0.187(需要科学上网)
根据自己的系统选择适合自己的安装包:
SSH介绍与神器Tabby-风君子博客
我是Windows系统,下载的是 tabby-1.0.169-setup.exe

2. 双击开始安装

安装过程非常简单,请参考以上四个教程。
安装完成后将看到这个界面:
SSH介绍与神器Tabby-风君子博客
点击 close and never show again 按钮后进入主页:
SSH介绍与神器Tabby-风君子博客
然后就可以通过 Settings 配置你的 Tabby 啦。
配置很简单,具体方法可以参考我贴在上面的链接或者自己上网搜教程。
最主要的是如何通过配置 Settings 中的 Profiles&connections 来实现 SSH 连接。

3. Tabby 简单使用

我是在 Windows 系统上安装的 Tabby ,用它来 SSH 连接 Linux 系统。
连接上之后,就可以使用 Linux 命令来操作系统啦。

  1. Tabby 的复制与粘贴
    选中命令,点击 回车键 ,就是复制。
    在其他地方复制好命令,点击 右键 ,就是粘贴。
  2. Tabby 也支持使用 ctrl+c 进行内容复制

参考链接

  1. 什么是SSH 以及常见的ssh 功能
  2. SSH简介及两种远程登录的方法