一、什么是SSH?
<摘自百度>
安全外壳协议
SSH,即安全外壳协议(Secure Shell),是一种网络协议,用于在计算机网络上提供安全的远程登录和命令执行功能。
SSH通过加密通信通道来保护数据传输,防止敏感信息在传输过程中被窃听或篡改。SSH支持多种身份验证方法,包括密码、公钥和证书等,以确保只有授权用户能够访问系统。除了远程登录,SSH还支持文件传输和端口转发等功能,使得SSH成为一种广泛使用的安全远程管理工具。
SSH使用加密算法,通常包括对称加密(如AES)和非对称加密(如RSA),来保护传输的数据。SSH客户端和服务器都使用配置文件来定制各种参数和行为,以满足不同的安全需求。SSH默认使用22号端口,但可以通过配置更改,以提高系统的安全性。由于SSH是一种开放标准,并且得到广泛采用,因此几乎所有UNIX平台和许多其他操作系统和网络设备都支持SSH,使其成为跨平台远程访问的标准。
SSH是一种用于在通过本地连接远程设备(如交换机、防火墙、路由器、智能设备、服务器等) 时,为了让连接及通信过程(包括登录验证阶段)更加安全而采取的一系列的通信加密手段,同时其服务端内置了一些实用的扩展功能如SFTP文件传输/SSH隧道等功能。
形象的比喻:A(本端)需要找B(服务端/设备)交换一些信息,于是B就开着一道门,让A可以通过这道门与B进行通信。A和B之间的通信是可以被别人监听到的,所以B和A就协商了一些加密的方式,让外人即使监听到也无法得知通信内容。
二、为什么使用SSH?
A与B的连接一般可以通过以下几种方式:
近场连接:
1、A在B的本机上:B机本身自己提供了一套输入输出接口,A通过SHELL等终端程序与B进行通信;
2、A通过B的物理通信口进行连接;
远程连接:
3、B运行telnet服务端,A使用终端程序通过telnet协议与B进行通信;
4、B运行SSH服务端,A使用终端程序通过SSH协议与B进行通信;
最安全的远程连接通信:A与B之间的通信内容不但加密,B的开放端口同时也隐藏起来不被人发现。这一点需要通过IPSEC才能做到,这种方式下使用协议是telnet还是SSH都不重要。
单纯的使用SSH协议进行通信,仅能保证双方的通信内容不被监听解密,但不能防护B不被攻击。
为什么使用SSH?
1、SSH发展了几十年,其服务端程序和标准可以很简单的应用于各类服务端设备中,包括普通家用的智能设备如智能门锁、路由器、交换机、防火墙、服务器等;
2、它有一套成熟的加密体系,不需要外部的安全配置,就可以有效的保护双方的通信内容;
3、服务端程序还可以提供一套成熟的文件传输方式SFTP。其它的协议服务端如果要实现双方的文件传输都非常麻烦,而SSH服务端成熟的程序代码就已经提供了一套非常方便的SFTP协议;
4、由于SSH天然具有加密属性,所以它可以提供一套无需交换密码即可完成登录验证的过程,避免密码在传输过程中被窃取,实现安全的登录验证;
5、SSH同时还提供了更多的扩展功能,如SSH隧道等。
SFTP和SSH隧道并非SSH协议必备的功能模块,这些功能模块在一些Telnet服务端也可以提供支持,但几乎没有人这么做,所以这些主要的功能就成了SSH的主要功能了。
三、使用VxTerm终端仿真程序
VxTerm是一个非常优秀的终端仿真程序:真正国产的、安全的、使用门槛极低(完全免费无需授权无需注册、大小才7M单文件无需安装直接运行)、功能强大(同时支持通信串口连接、Telnet、SSH协议、多会话多线程多窗口不限会话数量、图形化SFTP支持文件夹直接上下传断线续传多任务等、支持SSH隧道等功能)
1、获得VxTerm:到VxTerm的官网 https://blog.forbs.cn/post/111.html 下载,放到桌面上即可直接运行,无需安装;
2、建立连接:可以通过多种方式建立与服务端的连接。
(1)在主界面的地址栏中直接输入服务端的 IP和端口(用空格或逗号、冒号隔开即可)、用户名和密码,点击连接即可:
(2)主界面地址栏并不提供串口的连接方式,可以点开“快速连接”窗口,通过快速连接窗口对串口设备发起连接。
在快速连接窗口界面中还可以选择编码、颜色主题等
更多的选项可以在打开的终端窗口中的“会话选项”界面中进行配置。
3、使用SFTP传输文件/文件夹:
连接SSH成功后,可以通过会话菜单或者是主界面工具栏中的SFTP图标打开SFTP界面
(1)支持文件/文件夹多任务同时进行传输
(2)支持断线/出错重连/续传:这在网络不太好的时候传输大文件时非常好用,能有效的最终保证能把文件传输完成。
(3)支持两端的目录跟随动作:在打开了多个SFTP界面的情况下,启用了”共用目录“功能后,多个SFTP窗口能同时切换到指定的目录下,在传输同一个本地目录下的文件时很有用;远程目录支持”跟随终端窗口“和”其它SFTP窗口“两种方式,跟随终端窗口时,在终端窗口中使用cd xxx方式切换目录时,SFTP可以跟着切换到指定的目录。
4、使用SSH隧道:实现双方的网络环境的机子之间的互访。
SSH隧道是SSH服务端提供的主要功能之一。
VxTerm实现了SSH隧道的各种功能,非常方便的使用,包括动态隧道。详细的使用可以参考:https://blog.forbs.cn/post/129.html
5、无密码登录:Private/Public Key登录
在登录验证阶段,此方式可以实现双方无需交换密码即可完成登录验证,有效的保护密码不会在交换过程中被窃:详情可以参考 https://blog.forbs.cn/post/140.html
其实现原理为:双方建立了连接到验证阶段时,客户端先通知服务端需要登录哪一个用户,服务端随机生成一串字符串,加密后发送到客户端,客户端使用己方的private key解密后再加密发送给服务端,服务端收到数据后解密并验证是否是自己发送的数据。在这过程中双方都不需要交换密码和密钥,所以被认定为最安全的一种登录验证方式。
6、VxTerm不限制设备数量、提供保护配置文件中的密码功能
很多管理人员管理设备的数量多达几十上百台,甚至成千上万台设备,VxTerm可以对设备进行分类管理,同时提供有效的保护密码的功能。
在管理多台设备时,管理人员一般都需要把设备的密码保存到配置文件中以方便登录管理。
由于把设备的密码保存在本地的配置文件中,会有安全隐患:客户端电脑因中毒、疏忽等原因造成会话配置文件中的密码信息被窃取/泄漏时,获得该配置文件信息的人就可以连接到远程设备中,造成信息泄漏。
VxTerm提供有效的保护密码的功能:在软件的全局选项中启用”保护密码“功能即可实现。
启用保护密码功能后,本机中的配置文件中的密码只能在本机中被正确解密,其保护范围包括设备的登录密码以及private key密钥。
此功能适用多种场景,包括公用客户机的场景(有时候需要提供公用机子给外单位人员临时登录运维,此场景可以在不提供密码给临时运维人员的情况下,还可以相对有效的保证储存在公用客户机上的配置文件不被拷贝到其它机子使用)等。
默认情况及自设的保护类型和保护密码的配置,都能有效的保护会话配置文件中的密码/密钥不会因泄漏的原因被非法使用进行登录。
7、更多的功能,包括脚本、宏按钮、自定义按键功能、颜色主题、会话编码、复制粘贴、仿真协议等,VxTerm均能支持,需使用人员自行参考帮助信息使用。
VxTerm同时也是一款全国产全中文的软件产品,所有代码全部由国人编写实现,所以对中文有很好的支持,在非中文环境下的Windows操作系统中也能有效的显示中文并使用。