ssh协议通信共有5个阶段

  • 版本协商
  • 算法协商
  • 密钥交换
  • 用户认证
  • 会话交互

    版本协商

  • 客户端和服务器交互SSH版本协商报文,确定V1或V2版本

image.png

算法协商

  • 客户端和服务器交互自己各自支持的算法列表,该列表包括四种算法的具体算法名称

image.png

密钥交换

  • 根据密钥交换算法,双方动态产生会话密钥用于后续会话加密,会话密钥无法被第三方截获,安全可靠

image.png

用户认证

  • 口令认证

image.png

  • 公钥认证:客户端发送携带数字签名的认证请求,服务器通过公钥解密进行认证

image.png

会话交互

  • 用户认证完成后,客户端向服务器发起建立通道请求,进行数据传输

image.png