大家知道,公私玥是一种不对称的加密方法。
举个例子:假设有甲和乙两台服务器,如果各自都有一对公私玥,并且甲乙都给对方分享了自己的公钥,这样当甲乙之间通信时,就有两种选择:
1、甲使用乙的公钥加密数据并发送给乙,乙使用自己的私钥并且也只能使用自己的私钥解密。如果别人没有乙的私钥,即使的截取到了甲发给乙的数据也无法解密。
2、甲使用自己的私钥加密数据并发送给乙,因为甲的私钥只有它自己有,所有乙可以通过甲的公钥对数据进行解密同时确认发送信息的就是甲,不是别人冒充的。这第二个就是ssh通过公钥验证用户身份的原理。
根据如上第2条,我们在客户端生成自己的公私玥对(或者服务器生成后发给客户端也行),并将公钥上传给服务器,服务器将其加入信任列表,这样客户端登录服务器时就可以不使用用户名、密码的组合,而是使用用户名+私钥+passphrase 的组合了,如果passphrase为空,那就避免了输入密码的过程。