Dlaczego powinienem używać „HashKnownHosts yes” w ssh_config?

19

Mam kilka serwerów z tak, niektóre z nie tutaj (odkryłem tę opcję tylko dzisiaj).

Zaletą HashKnownHosts nie jest to, że mogę łatwiej zarządzać plikiem znane_hosty.

Jakie są faktyczne zalety korzystania z HashKnownHosts tak?

Thibaut Barrère
źródło

Odpowiedzi:

8

Plik znane_hosty stanowi niewielkie zagrożenie bezpieczeństwa. Zawiera wygodną listę wszystkich serwerów, z którymi się łączysz. Osoba atakująca, która uzyskała dostęp do Twojego hasła lub niezaszyfrowanego klucza prywatnego, musiałaby po prostu iterować listę do momentu zaakceptowania poświadczeń. Hashowanie rozwiązuje ten problem lub przynajmniej zaciemnia listę.

oneodd1
źródło
5
Wydaje się, że ta odpowiedź została skopiowana bez podania źródła
Martey
22

Za pomocą czystego tekstu osoby known_hostsatakujące z łatwością będą wiedziały, z którymi serwerami się łączysz. Jest artykuł i artykuł MIT o potencjalnym robaku ssh korzystającym z czytelnego known_hosts. Oczywiście zwykle istnieją inne, ale bardziej uciążliwe sposoby określania codziennych logowań ssh, takie jak historia powłoki, z których może skorzystać osoba atakująca.

Pamiętaj, że nadal możesz pracować z hashem known_hostsza pomocą ssh-keygenprogramu narzędziowego:

ssh-keygen -F myhost         # shows myhosts's line in the known_hosts file
ssh-keygen -l -F myhost      # additionally shows myhost's fingerprint
ssh-keygen -R myhost         # remove myhost's line from known_hosts

To, zwłaszcza ostatnie polecenie, powinno wystarczyć w 99% przypadków, do których użytkownicy naprawdę potrzebują dostępu known_hosts. Oczywiście stracisz ukończenie zakładki hosta ssh.

Należy również pamiętać, że w opcjach wiersza polecenia ssh-keygenrozróżniana jest wielkość liter

W unix.SE jest także istotne pytanie.

quazgar
źródło