Frage Warum sollte ich "HashKnownHosts yes" in ssh_config verwenden?


Ich habe einige Server mit Ja, einige andere mit Nein hier (ich habe diese Option erst heute entdeckt).

Die Vorteile von HashKnownHosts nein sind, dass ich die known_hosts-Datei leichter pflegen kann.

Was sind die tatsächlichen Vorteile der Verwendung von HashKnownHosts?


18
2018-02-10 14:05


Ursprung




Antworten:


Die Datei "known_hosts" stellt ein kleines Sicherheitsrisiko dar. Es enthält eine praktische Liste aller Server, zu denen Sie eine Verbindung herstellen. Ein Angreifer, der Zugriff auf Ihr Kennwort oder den unverschlüsselten privaten Schlüssel erlangt hat, müsste die Liste einfach durchlaufen, bis Ihre Anmeldeinformationen akzeptiert wurden. Hashing löst dies oder verschleiert die Liste zumindest.


8
2018-02-10 14:20



Diese Antwort scheint ohne Zuordnung kopiert worden zu sein vitalvector.com/blog/2009/02/ssh-tip-hash-known-hosts.html - Martey


Mit einem Klartext known_hostsAngreifer würden leicht wissen, mit welchen Servern sie verbunden sind. Da ist ein Artikel und ein MIT-Papier über einen potenziellen ssh-Wurm, der ein lesbares verwendet known_hosts. Natürlich gibt es normalerweise andere, aber schwerfälligere Methoden, um Ihre täglichen ssh-Logins zu ermitteln, wie beispielsweise Ihre Shell-Historie, die ein Angreifer verwenden könnte.

Beachten Sie, dass Sie weiterhin mit Ihrem Hash arbeiten können known_hosts Verwendung der ssh-keygen Dienstprogramm:

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

Dies, insbesondere der letzte Befehl, sollte für 99% der Fälle ausreichen, auf die Benutzer wirklich zugreifen müssen known_hosts. Sie werden natürlich ssh host tab completion verlieren.

Beachten Sie auch, dass die Befehlszeilenoptionen zu ssh-keygen Groß-und Kleinschreibung

Es gibt auch ein relevante Frage bei unix.SE.


19
2017-08-08 18:40