SSH的免密码登录原理

SSH的免密码登录原理
大致流程:

  1. 首先有两台server, 第一台名为A, 第二台位B。
  2. 首先在A中生成一对**, 一个是公钥,一个是私钥。
  3. 在A中使用指令将公钥拷贝到B中,并在authorized_keys文件中进行授权。
  4. A向B发送了一个连接请求, 信息包括用户名,ip…等。
  5. B得到了A的信息后, 回到authorzied_keys文件中查找,如果有相对应的用户名和ip, B就会随机生成一个随机字符串。B使用公钥对字符串进行加密, 底层使用某种算法进行加密过,并不会把简单的字符串发送给A。 加密后发送给A。
  6. A中得到了B发来的消息,会使用私钥进行解密, 然后将解码后的字符串发送给B,
  7. B接受到了A发送过来的解密后的字符串,然后解码后的字符串和之前随机生成的字符串进行比较,如果相同, A和B之间就可以免密码登录。