ssh免密码原理_只要看这个就懂了

众所周知, hadoop 以分布式系统这样的名头贯串整个Java生态体系.闲话不多说.熟悉搭建hadoop分布式框架的同学都很清楚ssh的作用,但是对于初学者来书,ssh似乎很神秘!更何况对没有接触过linux系统的同学而言.这篇文章就是想在学习hadoop的同时,对ssh的原理作本人认为更进一步的理解,同时能够熟练掌握ssh命令作的一些记录.

学习ssh之前,我尝试去百度搜索各种ssh通信方面的原理,有时候看着看着,自己都被一系列解密/通信握手给弄糊涂了.直到看到看到 https://www.cnblogs.com/kex1n/p/6017963.htmlutm_source=itdadaoutm_medium=referral,算是基本了解,但是这篇文章在有个地方讲得比较隐晦,也就是在第四步骤:serverB在接收到serverA的请求链接时候随机生成密码的讲得过于草率,在这一点上,也会对ssh的生成随机数字与解密的方式产生一定程度的误解.本人认为,serverB依靠其自身搭建的ssh服务,ssh服务通过serverA发送过来的一些信息(ip,用户名等),识别出是serverA,然后在自身的.ssh文件夹中获取到曾经serverA发给serverB的公钥,并通过该公钥结合rsa算法所产生的随机值作为serverA需要破解的字符或者信息,最后serverB再次确认从serverA中获取到的所谓的被破解的随机值才算是完成了一轮沟通,这也是为什么要三次握手的由来.

说了这么多,本人尝试用生活中的最简单的一个例子来代表ssh通信的一般原理.

需要手动输入密码的登录行为

最最原始的一种登录系统的行为,每次都需要输入账号和密码,这好比开门一样,账户名就是那扇门,密码就好比一把钥匙,

这最好理解,每次进入家(系统),我都需要找到门(用户名)[这个用户我并不理解成家的主人,而是理解成门或者门牌号],并且要用指定的钥匙(密码)才能打开门(用户),进入自己的家.随着时间的流逝,技术的更新迭代,家里面为了提高防盗手段,在各个通道(端口),已经安装了足够强悍的防盗系统(防火墙),而且防盗系统越来越智能,各种人脸识别/手纹识别(数学密码及破解算法)技术日益兴起.那么有些懒人就开始思考了,为啥每次进家还要钥匙呀?这不多此一举吗?bingo,接下来就是讲解免密手段,也就是不用明面上不用带钥匙的一种方法,而是通过家的智能防盗系统(ssh解密方式)来自动识别免密的登录行为。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20181110A073PG00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券