ich habe gerade ein Git-Tutorial gestartet und komme zu einem Deadend: Ich versuche, einen RSA-Key-Part zu generieren und es schlägt fehl ...
ssh-keygen -t rsa -C "[email protected]"
Und ich habe das bekommen:
Generating public/private rsa key pair.
Enter file in which to save the key (/c/Users/Eva/.ssh/id_rsa):
enter passphrase:
enter same passphrase again:
open /c/Users/Eva/.ssh/id_rsa failed: no such file or directory.
Saving the key failed:/c/Users/Eva/.ssh/id_rsa.
Ich habe versucht, in einem anderen Ordner zu speichern, und es ging OK. aber jetzt mache ich den Befehl ssh -T [email protected]
und es gibt mir den Fehler permisson denied (publickey).
Wenn Sie es vorziehen, eine GUI zum Erstellen der Schlüssel zu verwenden
Eine exemplarische Vorgehensweise zu den oben genannten Schritten finden Sie unter http://ask-leo.com/how_do_i_create_and_use_public_keys_with_ssh.html
Wenn Sie Windows verwenden, ist der Standardpfad im Unix-Stil von ssh-keygen fehlerhaft.
In Zeile 2 heißt es Enter file in which to save the key (/c/Users/Eva/.ssh/id_rsa):
. Dieser vollständige Dateiname in den Klammern ist der Standard, offensichtlich kann Windows nicht auf eine solche Datei zugreifen. Wenn Sie das Windows-Äquivalent (c:\Users\Eva\.ssh\id_rsa
) eingeben, sollte es funktionieren.
c:\Users\Administrator\.ssh>ssh-keygen -t rsa -C "[email protected]"
Generating public/private rsa key pair.
Enter file in which to save the key (/home/Administrator/.ssh/id_rsa): C:\Users\Administrator\.ssh\id_rsa
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in C:\Users\Administrator\.ssh\id_rsa.
Your public key has been saved in C:\Users\Administrator\.ssh\id_rsa.pub.
The key fingerprint is:
... [email protected]
The key's randomart image is:...`
Ich weiß, dass dies ein alter Thread ist, aber ich dachte, die Antwort könnte anderen helfen.
Es sieht so aus, als würden Sie diesen Befehl von einer DOS-Sitzung aus ausführen (siehe diesen Thread ). Das bedeutet, dass Sie vor diesem Befehl das Verzeichnis .ssh
erstellen müssen.
Oder Sie können es aus der bash-Sitzung (Teil der msysgit-Distribution) ausführen, und es sollte funktionieren.
Ich hatte das gleiche Problem. Ich musste den vollständigen Pfad mit Windows-Konventionen angeben. In diesem Schritt:
Enter file in which to save the key (/c/Users/Eva/.ssh/id_rsa):
Geben Sie den folgenden Wert an:
c:\users\eva\.ssh\id_rsa
Sie müssen den .ssh-Ordner selbst erstellen, um die ssh-Schlüssel zu speichern.
Übrigens habe ich diesen Pfadstil verwendet: C:/Users/you/.ssh/id_rsa
Ich hatte gerade eine Weile mit dem gleichen Problem zu kämpfen (mit Mac). Folgendes habe ich getan und es hat endlich funktioniert:
(1) Vergewissern Sie sich, dass das Verzeichnis .ssh vorhanden ist:
#show all files including hidden
ls -a
(2) Übernehmen Sie alle Standardwerte, indem Sie nur an der Eingabeaufforderung die Eingabetaste drücken
Enter file in which to save the key (/Users/username/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Sie sollten eine Nachricht erhalten:
Your identification has been saved in /Users/username/.ssh/id_rsa.
Your public key has been saved in /Users/username/.ssh/id_rsa.pub.
The key fingerprint is:
BZA156:HVhsjsdhfdkjfdfhdX+BundfOytLezXvbx831/s [email protected]
The key's randomart image is:XXXXX
PS Wenn Sie Git für Rails konfigurieren, gehen Sie wie folgt vor ( source ):
git config --global color.ui true
git config --global user.name "yourusername"
git config --global user.email "[email protected]"
ssh-keygen -t rsa -C "[email protected]"
(Übernehmen Sie dann alle Standardeinstellungen, indem Sie die Eingabetaste drücken.)
In Windows musste ich zuerst die Umgebungsvariable HOME
erstellen, die auf mein Benutzerprofil (C:\Users\<name>)
oder auf ein beliebiges Verzeichnis zeigt.
Starten Sie dann ein neues Befehlszeilenfenster, erstellen Sie ein .ssh
-Verzeichnis in Ihrem Benutzerprofil oder wählen Sie das Verzeichnis mit dem Befehl mkdir ".ssh"
aus.
Danach konnte ich das ssh-keygen ohne Pfadprobleme verwenden.
Ich hatte das gleiche Problem. Lösung unter Windows:
mkdir .ssh
Dadurch wird ein SSH-Ordner erstellt.
Ich benutzte bash an Fenstern, die mit git kamen. Das Problem war, ich nahm an, dass die Tilde (~), die ich benutzte, um meinen Heimatpfad anzuzeigen, sich richtig ausdehnen würde. Es funktioniert zwar bei der Verwendung von cd, aber um diesen Fehler zu beheben, musste ich nur den absoluten Pfad angeben.
Ihre Methode sollte auf einem Mac problemlos funktionieren, unter Windows sind jedoch zwei zusätzliche Schritte erforderlich.
Das Speichern des id_rsa-Schlüssels an diesem Ort sollte den Berechtigungsfehler beheben.