认证后对SSH安全性的困惑

时间:2014-04-23 10:22:28

标签: security networking encryption ssh key

我一直在阅读有关SSH及其如何使用公钥密码术来验证客户端的信息。我理解了所有的概念但有疑问:

从ArchLinux Wiki页面引用:

"当SSH服务器将您的公钥存档并看到您请求连接时,它会使用您的公钥构建并向您发送质询。此挑战类似于编码消息,在服务器授予您访问权限之前必须满足相应的响应。使这种编码信息特别安全的原因是只有具有私钥的人才能理解它。虽然公钥可用于加密消息,但它不能用于解密该消息。只有您(私钥的持有者)才能正确理解挑战并产生正确的响应。"

在此身份验证发生且服务器允许我访问之后,如何加密其他邮件?我在服务器上运行的所有命令,如何确保所有这些命令的响应确实有效/正版?

1 个答案:

答案 0 :(得分:1)

短版本:在密钥交换阶段,选择对称密码并生成新的对称密钥。此点之后的所有通信都是加密的,并且由于(良好)密钥交换协议的属性,会话密钥仅为该特定客户端和服务器所知,这意味着没有其他人可以读取或修改流量。

从高层的角度来看,在SSL / TLS和其他类似协议中使用相同的方案:双方以非对称加密(慢速)开始,使用密钥交换协议生成新的对称密钥(有时称为会话密钥) )并使用对称加密(快速)加密实际通信。

RFC 4253和相关的RFC包含SSH协议的详细说明。