什么是ssh
ssh 是一种标准协议,用于确保网络通信安全服务或加密。一个常见的应用场景是,如果你经常使用git,设置好ssh后应该就可以登录了。无需密码直接访问非常方便,但是ssh如何安全呢?
ssh加密
加密是确保通信链路安全的最重要方式,包括军事信息的传输,所有这些都由复杂的加密算法支持,确保只有正确的人才能访问正确的信息,JJ Lin 说。歌词完美的诠释了这个问题
我检查了眼睛,找到了合适的人。
对称加密
客户端对称加密流程
服务器端对称加密流程
对称加密是指通信双方使用相同的密钥来加密数据,但如果客户端的密钥被泄露,则整个系统的数据传输被泄露的风险相对较高。那就大了。因此,解决这个问题的方法就是非对称加密。
非对称加密
非对称加密使用公钥和私钥来加密和解密数据。使用公钥加密的数据只能使用相应的私钥进行解密,而仅使用公钥无法计算或猜测私钥。
以单次登录为例,非对称加密的基本流程如下:
0.客户端发起明文登录请求。
1. 服务器将公钥发送给客户端。
2. 客户端使用公钥对登录账号、密码等敏感数据进行加密。
3.发送加密数据到服务器
4. 服务器检索到数据后,使用相应的私钥对数据进行解密。
5. 验证您的数据的合法性
6.返回登录结果
它看起来是不是完美无缺?不不不!
中间人攻击
想象一下以下场景。黑客大师设置了一个假服务器,拦截了明文请求,并愚蠢地使用公钥将加密数据发送到假服务器。假冒服务器的下一步当然是使用私钥解密数据并获取明文密码。这意味着您的帐户已被盗。
中间人攻击信号
我们如何防止中间人攻击?这需要基于密码的身份验证。 SSH公钥和私钥由您生成,无法公证。公钥只能由客户端自己验证。通常,当您首次登录时,系统会显示以下提示信息:
无法确定主机“ssh-server.example.com (12.18.429.21)”的真实性。
RSA 密钥指纹为98:2e:d7:e0:de:9f:ac:67:28:c2:42:2d:37:16:58:4d。
您确定要继续连接吗?(是/否)。
如果您输入“是”,您将需要自己验证服务器的RSA 指纹。
警告: 'ssh-server.example.com,12.18.429.21' (RSA) 已永久添加到已知主机列表中。
密码:(输入密码)
下一步是遵循上述过程。
版权声明:本文由今日头条转载,如有侵犯您的版权,请联系本站编辑删除。