揭秘SSH的神奇工作原理:从连接到加密的全流程解析!

这张图详细展示了SSH(Secure Shell)协议的工作流程:

1. 建立TCP连接:SSH客户端和服务器首先建立一个TCP连接。

2. 版本协商:双方协商支持的SSH版本。

3. 算法协商:选择加密和认证算法。

4. 生成密钥对:客户端生成公钥和私钥对。

5. 发送公钥:客户端将公钥发送给服务器。

6. 发起登录请求:客户端请求登录服务器。

7. 匹配公钥并加密消息:服务器在`~/.ssh/authorized_keys`中找到匹配的公钥,并用它加密消息。

8. 返回加密的随机数:服务器返回一个加密的随机数,供客户端验证。

9. 使用私钥解密数据:客户端用私钥解密收到的数据。

10. 发送解密后的数据:客户端发送解密后的数据给服务器。

11. 验证客户端解密正确性:服务器验证客户端解密是否正确。

12. 会话请求和响应:建立会话并进行响应交流。

13. 发送加密命令:客户端发送加密后的命令给服务器执行。

14. 使用会话密钥解密命令:服务器用会话密钥解密命令并执行。

15. 发送加密结果:服务器返回执行结果,并进行加密处理。

16. 使用会话密钥解密结果:客户端用会话密钥解密收到的结果。

此外,图中还展示了SSH本地转发(Local Forwarding),用于通过安全隧道将本地端口流量转发到远程服务器,提供安全的数据传输通道。

Reply to this note

Please Login to reply.

Discussion

No replies yet.