Ubuntu-ssh - - ПРЕДУПРЕЖДЕНИЕ: ИДЕНТИФИКАЦИЯ REMOTE HOST ИЗМЕНЕНА

Я не могу использовать ssh и rysnc для удаленной системы. Он продолжает выдавать это сообщение об ошибке:

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 RSA key sent by the remote host is
a3:8f:7c:07:c9:12:d8:aa:cd:c2:ba:b3:27:68:bc:c2.
Please contact your system administrator.
Add correct host key in /root/.ssh/known_hosts to get rid of this message.
Offending RSA key in /root/.ssh/known_hosts:8
RSA host key for xxx.xxx.xxx.xxx has changed and you have requested strict checking.
Host key verification failed.
rsync: connection unexpectedly closed (0 bytes received so far) [sender]
rsync error: unexplained error (code 255) at io.c(601) [sender=3.0.8]

Я удалил файл authorized_keys из /home/user/.ssh.

Ответ 1

В сообщении указано "/root/.ssh/known_hosts" not authorized_keys. Удалите из него этот файл (или, по крайней мере, соответствующий ключ), и вы можете вернуться снова! Но имейте в виду, что: должна быть причина, по которой ключ изменился. Была ли система переустановлена? Убедитесь, что вы проверяете, что или вся идея ssh недействительна.

Кстати: есть ли причина, по которой вы ssh как root?

Ответ 2

используйте следующую команду, которая удаляет старые ключи из файла .ssh/known_hosts

ssh-keygen -R <host>

Ответ 3

Сообщение действительно объясняет:

  • Удаленный хост идентифицировал себя с ключом
  • Ваша предыдущая копия ключа для этого хоста отличается
  • Таким образом, есть вероятность, что удаленный хост не тот, кто говорит, что он

Если вы доверяете удаленному хосту, вы можете удалить строку 8 из /root/.ssh/known_hosts, и ssh спросит вас, может ли он добавить новый ключ при следующем подключении

Если вы не доверяете удаленному хосту, вам нужно обратиться к администраторам хоста, чтобы узнать, изменили ли они и почему они изменили ключи ssh. Если это не означает, что ваш трафик перехвачен

С другой стороны, если вы действительно доверяете удаленному хосту (например, он находится в интрасети), вы можете запустить ssh с помощью

-oBatchMode=yes -oStrictHostKeyChecking=no

Ответ 4

Вы можете использовать sed для удаления оскорбительного ключа в строке 8 из файла known_hosts:

sed -i -e 8d /root/.ssh/known_hosts

Ответ 5

Просто сделайте следующее:

mv .ssh/known_hosts .ssh/known_hosts_old