为什么我的服务器的 SSH 密钥会在 apt-get 升级时重新生成?

为什么我的服务器的 SSH 密钥会在 apt-get 升级时重新生成?

我在 DigitalOcean 管理一些服务器,并且多次升级过计算机,从未遇到过问题。

今天,我按照通常的升级顺序进行:

sudo apt-get update
sudo apt-get upgrade
sudo apt-get dist-upgrade

升级过程非常顺利。我没有注意到任何特殊情况。安装的文件如下:

apache2 apache2-bin apache2-data apache2-utils libfreetype6  librtmp1

在我的 3 台计算机升级后,我使用以下命令重新启动:

sudo init 6

重新启动后,我尝试使用 SSH 连接,但出现错误,提示我计算机可能已被黑客入侵:

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that a host key has just been changed.
The fingerprint for the ECDSA key sent by the remote host is
SHA256:lkAyAr1g1aym6K3tNV0jEYSLejJcGmK/7tEBgApVbck.
Please contact your system administrator.
Add correct host key in /home/alexis/.ssh/known_hosts to get rid of this message.
Offending ECDSA key in /home/alexis/.ssh/known_hosts:100
remove with:
ssh-keygen -f "/home/alexis/.ssh/known_hosts" -R 45.55.5.185
ECDSA host key for 45.55.5.185 has changed and you have requested strict checking.
Host key verification failed.

查看/etc/ssh文件夹,我注意到所有密钥均在我升级计算机时更新......

为什么会发生这种情况?

答案1

我实际上与 DigitalOcean 的某个人交谈过,他们解释说,当升级发生时,节点可能会从一个主管跳转到另一个主管。

为了使节点正常运行,他们需要访问正在运行的节点,并使用那些密钥。每个主管将使用不同的密钥。因此,只需一次跳跃即可强制重新生成新密钥。

因此,就我们而言,密钥改变的事实是无害的,但当您拥有依赖这些密钥永不改变的自动流程时,就会出现问题。

相关内容