Что означает ошибка проверки ключа хоста?

What Does Host Key Verification Failed Mean



При использовании ssh-сервера вы можете столкнуться с одной из распространенных ошибок: Ошибка проверки ключа хоста . Чтобы понять, почему возникает эта ошибка, давайте сначала разберемся, как ssh устанавливает соединение.

Когда вы пытаетесь подключиться к удаленному серверу, сервер просит вас подтвердить, пытаетесь ли вы установить соединение с правильным сервером.









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



Вы не получите никаких предупреждений, если ключ присутствует в known_hosts файл. Сервер будет подключен сразу.





Почему не удалось проверить ключ хоста Ошибка возникает

Основная причина, которая вызывает ошибку проверки ключа хоста, заключается в том, что ключ удаленного хоста был изменен и больше не тот, который хранится в known_hosts файл. Ключ обычно меняется, когда серверы перестраиваются, и вы получаете сообщение об ошибке, как показано ниже:



Как исправить Ошибка проверки ключа хоста Ошибка

Чтобы исправить эту ошибку, нам нужно удалить проблемный ключ из known_hosts файл присутствует в нашей системе в .ssh каталог. Ошибка дает вам IP-адрес удаленного сервера и номер строки, в которой хранится ключ в known_hosts файл.

В приведенной выше ошибке /home/user/.ssh/known_hosts:7 , то : 7 номер строки с нарушением. Ниже перечислены несколько подходов к исправлению этой ошибки:

Способ 1:

Первый способ исправить эту ошибку - использовать sed команда. В sed Команда используется для изменения текстовых файлов для поиска, добавления или удаления чего-либо из файлов. Мы используем его для удаления хоста-нарушителя:

$sed '7d'~ .ssh/known_hosts

Где 7 это номер строки, указанный в приведенной выше ошибке, ваш номер строки может быть другим; убедитесь, что вы используете правильный номер строки. Команда удалит неправильную строку из known_hosts файл и устраните проблему.

Способ 2:

Второй подход - открытие known_hosts файл в любом редакторе:

$нано.ssh/known_hosts

И вручную удалите оскорбительную строку и сохраните файл.

Способ 3:

Третий метод - удаление сервера с помощью ssh-keygen команда. Следуйте синтаксису, указанному ниже:

$ssh-keygen [АЙПИ АДРЕС]

Например, чтобы удалить ключ хоста из 192.168.10.116 , использовать:

$ssh-keygen 192.168.10.116

Заключение

Ошибка проверки ключа хоста возникает, когда ключ удаленного сервера изменяется, а клиент не проверяет его по сохраненным ключам. Ключи сервера хранятся в known_hosts файл на стороне клиента, и после установления соединения клиент проверяет ключ, сравнивая его с ключами, хранящимися в известный_хост файл, и в случае неудачи вы получите Ошибка проверки ключа хоста ошибка.

Чтобы исправить это, удалите хост-нарушитель из known_hosts файл. В этом руководстве упоминаются три различных метода удаления вредоносного хоста, и любой метод может использоваться для устранения этой ошибки.