SSH
- SSH 为建立在应用层基础上的安全协议。SSH 是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议
- 监听22端口
建立SSH连接
-
第一阶段:协议版本协商
- 如果能一起工作,进入下一阶段,如不能,服务器断开 TCP 连接,会话结束
- 明文传输
-
第二阶段:算法协商
- 公钥算法列表、加密算法列表、消息验证码算法列表、压缩算法列表等
- 通过DH秘钥交换算法生成并传递会话秘钥,以后的通信数据都通过该秘钥使用对称加密算法加密(例如AES算法)
- DH算法虽然也是非对称算法,但是专门用来交换秘钥,不用于加密
- 使用DH算法而不是RSA算法的原因是DH算法每隔一段时间需要重新re-key,re-key就是重新协商双方共享密钥M,所以通信双方的共享密钥是周期性变更的
- 从保密原则来说,越少暴露越安全,私钥更换的成本是相当大的,反复用私钥加密会增加私钥暴露的风险。而DH的私钥是每次都不同的,保证了一次一钥
-
此后的通信都已经被加密了
-
第三阶段: