将公钥添加到服务器的authorized_keys文件后,是否应将其删除?

时间:2012-12-27 22:24:11

标签: linux security ssh cryptography openssh

我已经使用公钥/私钥对设置了ssh登录。我在id_rsa目录中有~/.ssh(私钥),并且在同一目录中仍然有id_rsa.pub(公钥)。我不是安全专家,但有些东西告诉我将两个密钥保存在同一个目录中不是一个好主意吗?

将公钥文件添加到服务器的authorized_keys文件后,删除公钥文件是一个好习惯吗?如果保持公钥不会有害,我应该把它移到另一个目录吗?

我能想到的一个缺点是,如果我想要进入不同的服务器,我将不得不重新生成公钥/私钥对。为不同的服务器生成新的公钥/私钥对是一个好习惯吗?

2 个答案:

答案 0 :(得分:3)

您的密钥的“秘密”部分需要保持安全 - 在您的主目录中是通常的位置。公共密钥是值得共享的,这是公开的全部意义。

因此,请确保您的.ssh目录始终受到安全保护。

公钥并不是秘密,所以虽然你可以删除它,但它没有多大帮助,因为任何可以阅读authorized_keys的人都可以得到它......它就在那里。

显然,删除您的私钥意味着您必须制作一对新的私钥。但只有拥有私钥的人才能进入您的帐户 - 只有当它位于该计算机上的authorized_keys中时[当然,可以从一个地方复制到另一个地方!]

总结:如果您想保存磁盘空间,请删除公钥。但这并不重要 - 它就在那条线的另一端。

答案 1 :(得分:0)

这可能不是这个问题的相关答案,但您可以通过使用iptables过滤来允许特定客户端的SSH访问(如果他们的IP保持固定)。因此,如果密钥被盗,防火墙可以为您提供帮助。