Co oznacza weryfikacja klucza hosta nie powiodła się?

What Does Host Key Verification Failed Mean



Podczas korzystania z serwera ssh jednym z typowych błędów, które napotkasz, jest: Weryfikacja klucza hosta nie powiodła się . Aby zrozumieć, dlaczego występuje ten błąd, najpierw zrozummy, jak ssh nawiązuje połączenie.

Gdy próbujesz połączyć się ze zdalnym serwerem, serwer prosi o potwierdzenie, czy próbujesz nawiązać połączenie z właściwym serwerem.









Jeśli wpiszesz tak , klient doda publiczny klucz hosta do .ssh/znane_hosty plik. Po dodaniu klucza zdalnego serwera przy kolejnej próbie połączenia z tym samym serwerem klient porówna klucze z kluczami przechowywanymi w znani_hosty plik.



Nie pojawi się monit z żadnym ostrzeżeniem, jeśli klucz jest obecny w znani_hosty plik. Serwer zostanie natychmiast połączony.





Dlaczego weryfikacja klucza hosta nie powiodła się Wystąpił błąd

Głównym powodem błędu weryfikacji klucza hosta jest to, że klucz zdalnego hosta został zmieniony i nie jest już taki sam, jak zapisany w znani_hosty plik. Klucz zwykle zmienia się, gdy serwery są przebudowywane i pojawia się błąd, jak pokazano poniżej:



Jak naprawić Weryfikacja klucza hosta nie powiodła się Błąd

Aby naprawić ten błąd, musimy usunąć naruszający klucz z znani_hosty plik obecny w naszym systemie w .ssh informator. Błąd podaje adres IP zdalnego serwera i numer linii, w której klucz jest przechowywany w znani_hosty plik.

W powyższym błędzie, /home/użytkownik/.ssh/znani_hosty:7 , ten : 7 to naruszający numer wiersza. Poniżej wymieniono różne podejścia do naprawienia tego błędu:

Metoda 1:

Pierwszą metodą naprawienia tego błędu jest użycie sed Komenda. ten sed Polecenie służy do modyfikowania plików tekstowych w celu wyszukiwania, dodawania lub usuwania czegoś z plików. Używamy go do usunięcia naruszającego hosta:

$sed -i „7d”~.ssh/znani_hosty

Gdzie 7 to numer linii pokazany w powyższym błędzie, numer linii może być inny; upewnij się, że używasz prawidłowego numeru linii. Polecenie usunie obraźliwą linię z znani_hosty plik i rozwiązać problem.

Metoda 2:

Drugie podejście to otwarcie znani_hosty plik w dowolnym edytorze:

$nano.ssh/znani_hosty

I ręcznie usuń obraźliwą linię i zapisz plik.

Metoda 3:

Trzecią metodą jest usunięcie serwera za pomocą ssh-keygen Komenda. Postępuj zgodnie ze składnią wymienioną poniżej:

$ssh-keygen -R [ADRES IP]

Na przykład, aby usunąć klucz hosta z 192.168.10.116 , posługiwać się:

$ssh-keygen -R192.168.10.116

Wniosek

Błąd weryfikacji klucza hosta występuje, gdy klucz zdalnego serwera zmienia się, a klient nie weryfikuje go na podstawie przechowywanych kluczy. Klucze serwera są przechowywane w znani_hosty po stronie klienta, a po nawiązaniu połączenia klient weryfikuje klucz porównując go z kluczami przechowywanymi w znany_host pliku, a po niepowodzeniu otrzymujesz Weryfikacja klucza hosta nie powiodła się błąd.

Aby to naprawić, usuń naruszającego hosta z znani_hosty plik. W tym przewodniku wymieniono trzy różne metody usuwania naruszającego hosta, a do rozwiązania tego błędu można użyć dowolnej metody.