![为什么 Google 建议出于安全考虑从 GCE 中删除 SSH 密钥?](https://linux22.com/image/640645/%E4%B8%BA%E4%BB%80%E4%B9%88%20Google%20%E5%BB%BA%E8%AE%AE%E5%87%BA%E4%BA%8E%E5%AE%89%E5%85%A8%E8%80%83%E8%99%91%E4%BB%8E%20GCE%20%E4%B8%AD%E5%88%A0%E9%99%A4%20SSH%20%E5%AF%86%E9%92%A5%EF%BC%9F.png)
以下对 Google 文档的引用不再正确。
Google 建议从 GCE 实例中删除 SSH 密钥以保护 SSH。这对我来说毫无意义。密钥是为了安全,对吧?当我删除密钥时,SSHD 停止工作。我可能错过了他们的意思。有人能解释一下这是什么意思吗:
删除 ssh 主机密钥
不要在您的实例中使用 ssh 主机密钥。请按如下方式删除它们:
rm /etc/ssh/ssh_host_key rm /etc/ssh/ssh_host_rsa_key* rm /etc/ssh/ssh_host_dsa_key* rm /etc/ssh/ssh_host_ecdsa_key*
答案1
关键细节是,您引用的页面是关于创建新的 Compute Engine 机器映像的。具体来说,当您创建新的虚拟机映像时,您需要确保它不包含任何主机密钥。这样,当映像被克隆并重新构建到实际的 VM 中时,sshd 启动脚本将识别出没有主机密钥,并自动生成新的主机密钥。这是可取的,因为让多台机器使用相同的主机密钥是一个非常糟糕的主意。
因此,在一般情况下,请不要删除您的主机密钥,但如果您正在创建新图像,这是一个重要的步骤,以确保主机密钥和机器之间存在一一对应关系。
答案2
我能想到的唯一可能原因是他们想强迫你重新生成新密钥。
由于这些密钥是在你有访问权限之前生成的,所以它们可能不可信。
删除它们并重新启动sshd
将为你重新生成密钥。
然而文档并没有真正说明这一点。
这纯粹是猜测,最好联系他们并澄清此事。