Dlaczego mam dwa wpisy na serwer w pliku znane_hosty?

9

Na moim komputerze Mac mam 1 wpis na serwer w ~/.ssh/known_hostspliku, w Ubuntu zauważyłem, że są dwa utworzone na serwer. Dlaczego?

Format to:

|1|wwwwwwwwwwwwwww=|wwwwwwwwww= ecdsa-sha2-nistp256 AAAAAAAAAA+AAAAA=
|1|vvvvvvvvvvvvvvv=|vvvvvvvvvv= ecdsa-sha2-nistp256 AAAAAAAAAA+AAAAA=

W obu wpisach pierwsza sekcja przed ecdsa-sha2-nistp256 jest inna. Po ecdsa-sha2-nistp256 jest tak samo (wyobrażam sobie klucz do pubu).

Ssh na serwer A, a stamtąd ssh na serwer B. Nie dodam ręcznie wpisów, widzę ostrzeżenie ubuntu i pozwalam mu dodać do pliku znane_hosty.

W tym teście wyczyściłem plik znane_hosty.

Mam uzasadnione wątpliwości, że dodatkowy wpis dotyczy adresu IPv6, mimo że nie użyłem go do połączenia. Czy ubuntu dodaje go automatycznie, jeśli jest dostępny?


źródło
Jak dodajesz wpisy do pliku? Czy może logujesz się na serwerze z wieloma użytkownikami? Proszę edytować swoje pytanie i podać konkretne polecenia używane do tworzenia wpisów.
terdon
@terdon Nie dodam wpisów ręcznie. Po prostu ssh na serwer, sprawdzam ostrzeżenie i akceptuję je.
Jeśli rozumiem stronę podręczną ssh , sekcja „FORMAT PLIKU SSH_KNOWN_HOSTS” pierwszą wartością jest zaszyfrowana nazwa hosta ... ale to jest jeszcze bardziej mylące, ponieważ nie powinny mieć tego samego klucza pub.
PythoNic
@PhohoNic Też to przeczytałem i byłem bardziej zdezorientowany. Ale testuję ssh ze zdalnego serwera. Więc w zasadzie ssh na serwer A i ssh stamtąd na serwer B. Czy to może być przyczyna? Czy może to być wpis IPv6? Jestem bardzo zmieszany.

Odpowiedzi:

11

Masz dwa wpisy, ponieważ jeden jest według domeny, a drugi według adresu IP, więc twój przykład:

|1|wwwwwwwwwwwwwww=|wwwwwwwwww= ecdsa-sha2-nistp256 AAAAAAAAAA+AAAAA=
|1|vvvvvvvvvvvvvvv=|vvvvvvvvvv= ecdsa-sha2-nistp256 AAAAAAAAAA+AAAAA=

może w efekcie przeczytać:

[example.com] ecdsa-sha2-nistp256 AAAAAAAAAA+AAAAA=
[192.168.6.8] ecdsa-sha2-nistp256 AAAAAAAAAA+AAAAA=

Jeśli wyłączysz znane haszowanie hosta (dodaj HashKnownHosts nodo pliku ~ / .ssh / config), możesz zobaczyć, co się dzieje, ale w nieszyfrowanym pliku znanego hosta zarówno domena, jak i adres IP mogą pojawić się w tym samym wierszu, więc wyglądałbym tak:

[example.com],[192.168.6.8] ecdsa-sha2-nistp256 AAAAAAAAAA+AAAAA=

Tutaj jest nieco więcej dyskusji na temat formatu pliku znane_hosty.

Peter Ryan
źródło
1

Powinieneś mieć jeden klucz dla każdego serwera, z którym się połączyłeś. Albo łączyłeś się z dwoma serwerami w różnych momentach, albo klucz na twoim pojedynczym serwerze został zmieniony.

Podczas pierwszego połączenia z serwerem ssh pojawia się pytanie, czy chcesz dodać klucz do znanych hostów.

Wygląda mniej więcej tak:

wprowadź opis zdjęcia tutaj

W pewnym momencie zaakceptowałeś klucze ze swoim klientem.

Przy każdym kolejnym połączeniu, gdy łączysz się z serwerem, klucze są porównywane i pojawia się ostrzeżenie, jeśli zostaną zmienione.

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ OSTRZEŻENIE: ZDALNA IDENTYFIKACJA HOSTA ZOSTAŁA ZMIENIONA! @ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ JEST MOŻLIWE, ŻE KTOŚ KORZYSTA Z NIESAMOWITEJ! Ktoś może cię teraz podsłuchiwać (atak człowieka w środku)! Możliwe jest również, że klucz hosta RSA został właśnie zmieniony. Odcisk palca dla klucza RSA wysłanego przez zdalny host to f2: 92: 1d: da: 81: 2a: d7: 16: 0a: 48: f0: 43: 20: 1c: f4: b5. Skontaktuj się z administratorem systemu. Dodaj poprawny klucz hosta w /home/bodhi/.ssh/known_hosts, aby pozbyć się tej wiadomości. Obrażający klucz w /home/bodhi/.ssh/known_hosts:1

Zobacz: http://bodhizazen.com/Tutorials/SSH_overview#Security

Pantera
źródło
1
Usunąłem plik znane_hosty. Łączę się z serwerem. Widzę ostrzeżenie i pozwalam mu dodać wpis do znanych_hostów. Tworzy dwa wpisy.
Wklej plik znanego hosta i zrób zrzut ekranu lub pokaż swoje wyniki.
Panther
Czy może to być adres IPv6?
Nie mogę powiedzieć z tego, co niewiele napisałeś.
Panther