Ist es möglich, dass der SSH-Client sich nicht darum kümmert, hinter welcher IP sich ein SSH-Server befindet (und ob früher ein anderer Server hinter dieser IP stand), sondern bestimmten Serverschlüsseln vertraut? (Und vielleicht diese Schlüssel mit einem Spitznamen versehen?) Ich verwende dynamisches DNS und habe auf einigen Computern IPv6-Datenschutzerweiterungen aktiviert. Ich werde immer gefragt, ob eine Verbindung sicher ist. Eine andere Möglichkeit besteht darin, dass von DHCP zugewiesene Adressen verschiedenen SSH-Servern zugewiesen werden und alle Arten von "Schlüssel stimmt nicht mit IP-Fehlern überein".
8
Antworten:
Fügen Sie einen Spitznamen für Ihren Server hinzu
~/.ssh/config
und deaktivieren SieCheckHostIP
diesen Server.Bevor Sie zum ersten Mal eine Verbindung zum Server herstellen, können Sie den öffentlichen Schlüssel außerhalb des Bandes kopieren:
/etc/ssh/ssh_host_rsa_key.pub
Vom Server greifen , denroot@hostname
Teil am Ende der Zeile entfernen ,example.dyndns.org
am Anfang hinzufügen und die Zeile an anhängen~/.ssh/known_hosts
. Optional können Siessh-keygen -H
den Hostnamen hashen (dies ist nur nützlich, wenn Sie sich Sorgen über die Privatsphäre dieses Eintrags machen, wenn jemand Ihre Festplatte oder Ihre Backups stiehlt, was für 99,99% der Benutzer nutzlos ist, da die Informationen in einem anderen in der Nähe vorhanden sind Lage sowieso).quelle
Host nickname
, dass ich es einfach schaffen kannssh nickname
? Wenn ja, ist das ziemlich ordentlich.In
/etc/ssh/ssh_config
die ZeileDies nimmt jedoch ein wenig von der Sicherheit in SSH weg , da sich jeder Computer hinter dem IP- oder DynDNS-Namen verstecken kann, mit dem Sie eine Verbindung herstellen.
quelle
CheckHostIP
, dann heißt das nicht, dass Sie keinen Schutz aufgeben. MitCheckHostIP no
muss der Spoofer immer noch den privaten Schlüssel des Servers erhalten, und wenn sie das kann, ist es unwahrscheinlich, dass sie seine IP-Adresse sowieso nicht fälschen kann.sudo
oder ähnliches.