为什么要使用密码保护的SSH密钥文件进行远程访问?

我正在考虑使用密钥文件来远程SSH访问我的服务器,而不是在login时手动input帐户的密码。 在互联网上,我find了几个关于如何为腻子使用的教程。 他们都推荐使用密码保护私钥文件。 这是非常有意义的,因为我不希望任何人可能访问该私钥文件访问我的服务器没有密码。

然而,我自问:如果我每次用它连接到服务器时都需要input密钥的密码,为什么还要使用密钥文件呢? 我可以直接继续input用户的密码。

不幸的是我无法在网上find这个问题的一个很好的答案。

所以我想在这里问你。 使用密码保护密钥文件进行SSH身份validation的原因是什么,而不是直接input用户密码?

快速的答案是,使用密钥validation,您永远不会通过networking发送您的密码(它本地input以validation密钥),所以networking上的某个人没有机会拦截任何密码尝试。 这更安全。

为了不断input密码,有一些代理(PuTTY的pagent最为显着)会将密钥caching在内存中,所以你只需input一次密码即可。 这很方便。

如果某人以某种方式窃取了您的密钥,那么您将被入侵。

Putty包含了一些(如果您使用安装程序)称为Pagent,您可以加载密钥文件,并只input一次密码。 密钥增加了另一层安全性,因为简单地强制密码也不会有什么好处,因为他们也需要密钥。