SSH登录方式主要分为两种:

1. 用户名密码验证方式

说明:

  (1) 当客户端发起ssh请求,服务器会把自己的公钥发送给用户;

  (2) 用户会根据服务器发来的公钥对密码进行加密;

  (3) 加密后的信息回传给服务器,服务器用自己的私钥解密,如果密码正确,则用户登录成功。

2. 基于密钥的登录方式

说明:

  (1) 首先在客户端生成一对密钥(ssh-keygen);

  (2) 并将客户端的公钥ssh-copy-id 拷贝到服务端;

  (3) 当客户端再次发送一个连接请求,包括ip、用户名;

  (4) 服务端得到客户端的请求后,会到authorized_keys中查找,如果有响应的IP和用户,就会随机生成一个字符串,例如:qwer;

  (5) 服务端将使用客户端拷贝过来的公钥进行加密,然后发送给客户端;

  (6) 得到服务端发来的消息后,客户端会使用私钥进行解密,然后将解密后的字符串发送给服务端;

  (7) 服务端接受到客户端发来的字符串后,跟之前的字符串进行对比,如果一致,就允许免密码登录。

最新文章

  1. JS原型链
  2. C#进阶系列——WebApi 异常处理解决方案
  3. Dom编程
  4. checkbox
  5. IOS开发UI基础UITableView的属性
  6. 为 Virtual Box 中的 CentOS 6.6 配置本地DVD光盘做yum软件源
  7. 问题:如何在固定大小的DIV层插入N多个图片
  8. iOS runloop 资源汇总-b
  9. clang和gcc消除警告
  10. Maven构建SSM架构,并分离层次,使用Maven 组织多项目
  11. [转]链接分析算法之:主题敏感PageRank
  12. java程序在没有java环境的电脑上执行的方法(关键词jar,exe)
  13. Python 中的 if __name__ == '__main__' 该如何理解
  14. select 下拉选择自动到textarea框
  15. linux系统版本大全
  16. Process和ProcessBuilder入门【原】
  17. MybatisPlus使用介绍
  18. 766. Toeplitz Matrix
  19. SQL删除重复数据只保留一条数据
  20. Python数据模型

热门文章

  1. 微软企业库验证 Validations
  2. Twitter的RPC框架Finagle简介
  3. Shell正则表达式和文本处理工具
  4. windows 键盘全局钩子
  5. vc判断当前用户是否具有administrator 权限代码
  6. Django框架错误处理
  7. linux下Pl353 NAND Flash驱动分析
  8. pandas(三)汇总和计算描述统计
  9. ImageMagick来处理图片,缩放,调整高度等操作
  10. LeetCode:前K个高频单词【692】