通常我们使用Xshell登录ssh时,有两种方式:

一、密码口令(类似于账号密码登录)

1.客户端连接上服务器,服务器把公钥发给客户端。

2.客户端用服务器公钥加密,上传密码。

3.服务器用私钥解密,如果匹配,则连接。

二、密钥登录

一般使用RSA公钥私钥技术。

1.生成密钥对。

2.将公钥信息写入目标用户的密钥验证文件。

3.客户端请求登录。

4.服务器发送一段随机字符串,并使用公钥加密。

5.客户端使用私钥解密,并返回解密后的信息。

6.服务器进行信息对比,如果验证成功,则允许连接。
%title插图%num

这就可以解释为什么我用Xshell软件,只有一个私钥文件,却可以登录两台云端服务器的问题

答:(个人理解,有可能是错误的)那两台云端服务器都事先写入公钥信息,该公钥和我的私钥是一个密钥对,因此,理论上只要有N台主机都事先写入我的公钥信息,我就可以连接N台主机。

补充:通常来说,公钥有拓展名,私钥没有拓展名,下图为私钥。公钥应该传到服务器上。

%title插图%num