Ich kenne verschiedene Arten von SSH-Schlüsseln nicht. Sie würden jedoch den öffentlichen Schlüssel auf dem Zielcomputer ablegen, nicht Ihren privaten Schlüssel. Ihr privater Schlüssel bleibt privat.
Der öffentliche Schlüssel des Quellcomputers sollte auf dem Zielcomputer in platziert werden. ~/.ssh/authorized_keys
Dies kann manuell oder über den ssh-keygen
Befehl erfolgen.
Ich schlage vor, dass Sie mit dem öffentlichen Schlüssel auf dem Quellcomputer und mit den autorisierten Schlüsseln auf dem Zielcomputer katzen. Stellen Sie sicher, dass der Quellschlüssel so aussieht, als habe er dasselbe Format wie das in Authorized_keys
Die known_hosts-Datei wird automatisch angehängt. Sie müssen es nicht manuell bearbeiten. Sie können auch nach dem Löschen der known_hosts-Datei eine Verbindung herstellen.
BEARBEITEN-
Um einige Kommentare in die Antwort aufzunehmen. Der öffentliche Schlüssel stammt aus dem privaten Schlüssel. Normalerweise bleibt der private Schlüssel privat, aber das OP wurde mit einem privaten Schlüssel versehen. Dies ist ungewöhnlich. Dies ist jedoch eine interessante Methode, da der Zielcomputer dann bereits seinen öffentlichen Schlüssel haben kann. So konnte er sich anmelden, ohne etwas zu den Authorized_keys des Zielcomputers hinzufügen zu müssen. ssh -i nimmt immer einen privaten Schlüssel an. Er muss nur tun. ssh -i path/to/privatekeyfile user@dest
Das OP verwendet "openstack", einige Cloud-Dienste und, wie auf der openstack-Site angegeben ist, docs.openstack.org/user-guide/content/ssh-into-instance.html $ ssh -i MyKey.pem ubuntu@10.0.0.2
So wie der Name der privaten Schlüsseldatei lautet ist, und wo immer es gespeichert wird, geben Sie dies anssh -i