Ich habe einen Heimserver, den ich mit einer Debian-Installation und einem Media Center-PC im Dual-Boot-Modus verwende.
- Ich habe beides als SSH-Server eingerichtet.
- Ich habe die Public-Key-Authentifizierung für den Debian-Server auf Basis der IP eingerichtet.
- Wenn ich anfange, die Verbindung zum Mediencenter einzurichten, warnt mich SSH, dass ich möglicherweise Ziel eines Man-In-The-Middle-Angriffs bin, da eine bekannte IP plötzlich eine andere Identität darstellt.
Ich möchte mich sowohl mit der Debian-Installation als auch mit dem Media Center verbinden können, indem ich unterschiedliche Einträge unter verwende ~/.ssh/config
. Aus der FrageWie bearbeite ich known_hosts, wenn mehrere Hosts dieselbe IP und denselben DNS-Namen haben?wurde mir klar, dass ich zwei Möglichkeiten hatte:
- Bringen Sie beide Installationen dazu, „dieselbe Identität“ zu haben, indem Sie auf beiden Computern dieselben privaten Schlüssel installieren.
- Bringen Sie meinen Client dazu, zu glauben, dass beide Remote-Computer "derselbe" sind, indem Sie Einträge für beide Computer hinzufügen in
~/.ssh/known_hosts
Die Antworten gehen auf meine Frage ein, mischen aber die SSH-Konfiguration für beide Server. Gibt es eine Möglichkeit, die Konfiguration für jeden Server separat zu halten, als separate Einträge unter ~/.ssh/config
, wo ich explizit angeben kann, mit welchem Server ich mich verbinden möchte, und so vermeiden kann, dass ich mich versehentlich mit der falschen Installation verbinde? Ich würde Lösungen akzeptieren, bei denen ich das Netzwerk konfigurieren muss, da dies für mich eine Lernerfahrung ist.
Danke!
Teodor
Antwort1
/etc/ssh/ssh_host_*_key
Sie können die Dateien von einem Host auf den anderen kopieren .
Eine andere Lösung besteht darin, die Datei zu bearbeiten/erstellen ~/.ssh/config
und zwei Einträge hinzuzufügen, wie:
Host debian
HostName 192.168.1.10
User mydebianuser
HashKnownHosts ....
Host mediacenter
HostName 192.168.1.10
User mymediacenteruser
HashKnownHosts ....