SSH1 vs SSH2
SSH (Secure Shell)是一种用于保证网络数据通信安全性的协议。SSH是1995年由Tatu Ylonen (SSH通信安全公司)创立的。该协议为网络中的两台计算机之间的安全数据传输、远程命令执行和启用安全的网络服务提供基础设施。通信按照客户端-服务器(SSH client和SSH server)体系结构进行管理。SSH协议有两个版本,分别为SSH1和SSH2。
SSH1 (Secure Shell版本1)
SSH协议版本1出现于1995年,它包含三个主要协议,分别是SSH- trans、SSH- userauth和SSH- connect。
SSH-TRANS:它是传输层协议(TCP/IP),主要提供服务器认证、机密性和完整性。
SSH-USERAUTH:它是在通信建立时用于用户身份验证的协议。该协议对SSH服务器中的SSH客户端进行认证。该协议还在传输层上运行。
SSH-CONNECT:它是将加密数据多路复用到一些逻辑流的连接协议。该协议运行在SSH-USERAUTH协议之上。
为了启动安全连接,客户端将其认证信息以128位加密的方式发送给SSH服务器。每个服务器主机都有一个主机密钥,用于验证客户端服务器通信是否正确。此外,它应该具有相关SSH服务器的公钥。传输的每个数据段都采用加密算法(DES、3DES、IDEA、Blowfish)进行加密。
除了远程登录,SSH还可以用于隧道、X11连接、SFTP (SSH文件传输协议)、SCP(安全复制),以及TCP端口转发。SSH协议默认使用TCP端口22。SSH也支持数据压缩。当客户端-服务器链路带宽较低时,该特性非常有用,可以用来提高连接的吞吐量。
在SSH版本1.5中,开发人员发现了一些漏洞。该版本可能会在加密数据流中间插入未经授权的数据,对数据安全造成很高的风险。此外,2001年还发现了未经授权的恶意认证服务器将认证转发到另一个服务器的漏洞。
SSH2 (Secure Shell版本2)
SSH2于2006年引入,对SSH1进行了许多重大改进。尽管SSH2是SSH1的改进,但它与SSH1不兼容。重新编写了SSH2,增加了更多的防御机制以避免漏洞。
SSH2使用一组不同的改进和更强的算法进行加密和身份验证,如DSA(数字签名算法)。SSH2不再是SSH1那样的自由软件;SSH2的开发者限制了SSH2的自由使用。与SSH1不同,SFTP(安全文件传输)程序内置在SSH2包中,它使用与SSH2相同的加密协议来加密数据流。
SSH1和SSH2有什么区别? 许多基于UNIX的操作系统都有内置的SSH功能,也为windows系统开发了许多具有SSH功能的控制台(TeraTerm、Putty、OpenSSH、WinSCP等)。 •如上所述,SSH2是SSH1的改进版本。 •SSH1有一些已知的文档问题,在SSH2中进行了更正和重新编码。 •通常任何应用程序的最新版本都支持其旧版本,但SSH2不完全兼容SSH1,而且SSH2需要许可。 |
bkeza说
沉没你的朋友