SSH 提示主机密钥/指纹错误

SSH 提示主机密钥/指纹错误

使用 SSH 连接到我已设置的服务器(运行 Oracle Linux 7.9),我想用另一个密钥对替换我使用的原始密钥对。我能够使用新密钥对连接到服务器,没有任何明显问题;但是,每当我连接时(通过 Windows CMD 中的 OpenSSH),系统仍会提示我输入旧密钥的指纹/随机数:

Host key fingerprint is SHA256:RCVRSnN6hl97h8+UgNobAPK6WTeymGpKhYTtKYp1npU
+---[ECDSA 256]---+
|     . .*++      |
|..    oo.B  .    |
|...    .=.o...   |
|....  .o ++. ....|
|..+...EoS+.o. o.o|
|oo.o o* + . o. = |
|o.  o= .   .    o|
|.  ..            |
| .o.             |
+----[SHA256]-----+

我已经从服务器上所有我知道存在旧密钥对的位置删除了旧密钥对,检查了主机密钥文件/etc/ssh/(其中包含新密钥),尝试删除/刷新我的known_hosts文件和文件中的某些设置config,但每次连接时仍会提示输入旧密钥。我对 SSH 和 Linux 不熟悉,所以我肯定这里漏掉了一些东西。我怎样才能让它提示使用新密钥对进行连接?

答案1

您的 Windows 系统上的 %USERPROFILE%.ssh\ 文件夹“known_hosts”文件应该具有系统的已知主机密钥。 - 如果您连接到没有保存主机密钥的系统,您会收到提示。

id_rsa、id_dsa、id_ecdsa、id_ed25519 以及其他一些文件是您的密钥对的私钥文件,相应的 .pub 是该密钥对的公钥文件。- .pub 中的行需要转到目标系统中 ~/.ssh/ 文件夹中的 authorized_keys 文件。

看到您正在替换密钥对,您是否从目标系统 ~/.ssh/authorized_keys 文件中删除了旧密钥对的 pub 部分?

相关内容