我知道类似的问题已经被问过很多次了,但这里有所不同:
尝试通过 ssh 连接到我得到的服务器:
$ ssh cl11lx
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ 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
07:51:03:4e:5e:ba:e8:44:70:77:cb:57:78:57:59:35.
Please contact your system administrator.
Add correct host key in /nethome/ajalali/.ssh/known_hosts to get rid of this message.
Offending RSA key in /var/lib/sss/pubconf/known_hosts:8
remove with: ssh-keygen -f "/var/lib/sss/pubconf/known_hosts" -R cl11lx
ECDSA host key for cl11lx has changed and you have requested strict checking.
Host key verification failed.
Run Code Online (Sandbox Code Playgroud)
我发现的最相关的问题是here,它是作为这个问题的副本而关闭的,而这个问题本身是作为离题关闭的。但无论如何它们都不一样。另一个相关问题在这里问。
在大多数情况下,正如我们所知,您可以通过替换服务器密钥来解决问题,例如运行:
ssh-keygen -R <host>
Run Code Online (Sandbox Code Playgroud)
但是这个解决方案和从文件中删除有问题的密钥都/var/lib/sss/pubconf/known_hosts
没有解决我的问题。
一旦我删除了整个文件,或者删除了有问题的密钥,密钥就回来了。
请注意,我的所有系统都是 freeipa 服务器的成员,该服务器本身是后端的 LDAP/Kerberos。
adr*_*rin 10
正如在发布的日志中所见,有问题的密钥不在其正常位置,即$HOME/.ssh/known_hosts
,而是位于/var/lib/sss/pubconf/known_hosts
. 这表明系统安全服务守护进程又名sssd正在从另一个来源获取有问题的密钥。
这就是为什么从文件中删除密钥无效的原因,因为它会一遍又一遍地从服务器重新获取。
在这种情况下,服务器是 FreeIPA 服务器。因此,要解决此问题,必须更改 IPA 服务器发送的违规密钥。
这可以通过手动更改服务器上的密钥来完成,或者从服务器中完全删除主机信息,然后重新安装客户端(通过ipa-client-install
)。
在客户端上重新安装操作系统后,我的问题发生了。因此,从服务器中删除主机信息并重新安装 IPA 客户端对我来说是一个明智的选择。
归档时间: |
|
查看次数: |
21179 次 |
最近记录: |