So etwas macht mich verrückt – hoffentlich gibt es offensichtliche Lösungen. Ich habe Schlüssel auf einem Win 10-Laptop und auf einem meiner Linux-Server. Wenn ich puTTY verwende, wo ich explizit zur Schlüsseldatei auf dem Laptop navigieren kann, funktioniert es perfekt.
Aber ich hatte überhaupt kein Glück mit SSH von CL mit Schlüsselaustausch. Und hier stecke ich fest ...
1\ Linux-Server, der einen nicht standardmäßigen Port verwendet (z. B. 1234). Angenommen, der Benutzername auf dem Linux-Server ist bob.
2\ wenn ich eine einfache Passwortauthentifizierung verwende und keinen Schlüsselaustausch, dann
ssh -p 1234 [email protected]
funktioniert perfekt.
3\, aber wenn ich versuche, von der Befehlszeile aus per SSH auf die Schlüsseldatei zu verweisen, habe ich kein Glück. Das Benutzerverzeichnis auf dem Laptop hat ein Leerzeichen (sagen wir, c:\users\Bob Jones...), das Teil des Problems sein könnte (oder auch nicht). Die PPK (die ich server.ppk nennen werde) befindet sich in c:\users\Bob Jones.ssh
Theoretisch sollte also Folgendes funktionieren (noch einmal, theoretisch …)
ssh -i "C:\Users\Bob Jones/.ssh/server" [email protected] -p 1234
Aber ... kein Glück. Das Vorhergehende (und die verschiedenen Permutationen, die ich versucht habe) werfen Fehler wie:
Warning: Identity file C:\Users\Bob Jones/.ssh/server' not accessible: No such file or directory.
[email protected]: Permission denied (publickey,gssapi-keyex,gssapi-with-mic).
Also, was habe ich offensichtlich übersehen? Keyfile ist da und funktioniertperfektmit puTTY, wo ich die GUI verwenden kann, um explizit auf den Schlüssel zu zeigen. Aber ich kann einfach nicht herausfinden, wie ich die Dinge mit der CL zum Laufen bekomme.
Dank im Voraus...
Antwort1
Versteht Windows „C:\Benutzer\Bob Jones/.ssh/server“ im Vergleich zu „C:\Benutzer\Bob Jones.ssh\server.ppk“?