5

Я знаю, что подобные вопросы задавались много раз, но здесь есть разница:

При попытке 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.

Наиболее актуальный вопрос, который я нашел, здесь, который закрыт как дубликат этого, который сам закрыт как не по теме. Но они не одинаковы в любом случае. Другой связанный вопрос задается здесь.

В большинстве случаев, как мы знаем, вы можете решить проблему, заменив ключ сервера, например, запустив:

ssh-keygen -R <host>

Но ни это решение, ни удаление нарушающего ключа из файла /var/lib/sss/pubconf/known_hosts не решили мою проблему.

Как только я удаляю весь этот файл или удаляю поврежденный ключ, ключ возвращается.

Обратите внимание, что все мои системы являются членами сервера freeipa, который сам по себе является LDAP/Kerberos на серверной части.

1 ответ1

8

Как видно из опубликованного журнала, нарушающий ключ находится не в своем обычном месте, то есть в $HOME/.ssh/known_hosts , но он скорее находится в /var/lib/sss/pubconf/known_hosts . Это говорит о том, что демон System Security Services Daemon, также известный как sssd, извлекает поврежденный ключ из другого источника.

Вот почему удаление ключа из файла не имеет никакого эффекта, потому что его снова и снова выбирают с сервера.

В этом случае сервер является бесплатным сервером ipa . Поэтому, чтобы решить проблему, необходимо заменить изменяющий ключ, отправленный сервером ipa .

Это можно сделать, вручную изменив ключ на сервере, или полностью удалив информацию о хосте с сервера, и снова установив клиент (через ipa-client-install).

Моя проблема произошла после переустановки ОС на клиенте. Поэтому для меня разумным вариантом является удаление информации о хосте с сервера и повторная установка ipa-клиента.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .