SSH(SecureShell),是建立在应用层基础上的安全协议,其SSH客户端适用于多种平台,可以有效防止远程管理过程中的信息泄露问题。
1.SSH发展历史
-
SSH1.x
SSH是1995年由芬兰赫尔辛基大学研究员Tatu Ylönen提出用于替代Telnet等非安全协议的远程Shell协议。SSH1.x通过CRC-32避免数据被篡改,后来逐步演化为私有软件。
-
SSH2.x
由IETF工作小组发布SSH-2标准。采用MD5和SHA-1实现通信的完整性,安全性优于SSH-1。
-
OpenSSH
目前最流行的SSH实现的开源版本,具有可移植性,一直维护并支持SSH-2协议,目前很多操作系统中默认安装的版本。
2.SSH加密原理
互联网上的数据传输,若未经加密,请求可能会被其他恶意拦截轻松获取账号密码等信息,可通过数据加密的方式进行避免。加密的方式主要有两种:
-
对称加密(秘钥加密),即客户端和服务端使用同一套秘钥对数据进行加密和解密,如下图1所示。对称加密的加密强度高,破解难度大。但是在多个客户端和服务端安全的保存秘钥是一个比较困难的操作,一个秘钥被泄露,则整个系统会失去安全性。
-
非对称加密(公钥加密),为解决一个秘钥的问题,非对称加密应运而生。非对称加密有一个公钥和一个私钥,公钥