1

Я переустановил ОС моего удаленного сервера, и теперь, когда я пытаюсь выполнить ssh root@myserverIP с моей локальной машины, я получаю:

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@    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:xxxxxxxxxxx.
Please contact your system administrator.
Add correct host key in /var/root/.ssh/known_hosts to get rid of this message.
Offending ECDSA key in /var/root/.ssh/known_hosts:3
ECDSA host key for xxx.xxx.xxx.xxx has changed and you have requested strict checking.
Host key verification failed.

(xxx это просто чтобы скрыть реальную информацию)

Вместо того, чтобы менять ключ, я выбрал полное удаление всего содержимого в .ssh/known_hosts , надеясь, что мне предложат добавить ключ снова. Но вместо этого я все еще получаю ту же ошибку.

Итак, я даже попытался удалить один ключ вручную:

ssh-keygen -R xxx.xxx.xxx.xxx

И, конечно, его там нет, так как known_hosts теперь пуст:

Host xxx.xxx.xxx.xxx not found in /Users/xxx/.ssh/known_hosts

Тем не менее, я все еще получаю ту же ошибку снова и снова. Это озадачивает - откуда ssh получает информацию, если known_hosts пуст?

Конечно, я перезапустил свой Mac и даже очистил кеш. Может быть, ssh использует другой known_hosts? Но где это? Я пытался locate его, но не могу найти какой-либо другой файл known_hosts на моем диске.

Что я делаю неправильно? Как я могу решить это?

1 ответ1

2

У вас есть более одного файла known_hosts

Судя по вашему описанию, вы удалили ключ из вашего файла known_hosts :

Host xxx.xxx.xxx.xxx not found in /Users/xxx/.ssh/known_hosts

Где /Users/xxx/ предположительно ваш домашний каталог. Тем не менее, оригинальное сообщение об ошибке жалуется:

Offending ECDSA key in /var/root/.ssh/known_hosts:3

Итак, удалите ключ из /var/root/.ssh/known_hosts и сообщение об ошибке исчезнет.

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