832 Stimmen

SSH-Schlüssel - Bittet immer noch nach Passwort und Passphrase

Ich habe Github immer wieder nach meinem Benutzernamen und Passwort gefragt, wenn ich ein Repository klone. Ich möchte diesen Schritt umgehen, weil er mich bei meiner Arbeit stört.

Ich habe versucht, einen SSH-Schlüssel einzurichten (was mir erfolgreich gelang) mithilfe dieses Leitfadens. https://help.github.com/articles/generating-ssh-keys und es hat funktioniert.

Mein Problem ist, dass ich immer noch nach meinem Github-Passwort und Passphrase gefragt werde, wenn ich ein Repository (mit SSH) klonen will. Mein Verständnis war, dass ich nach Einrichtung dieses SSH-Schlüssels das nicht mehr tun müsste.

Ich bin mir etwas unsicher, was ich fragen soll, also werde ich einfach mein Ziel nennen.

Ich möchte in der Lage sein, Repositories zu klonen, ohne jedes Mal meine Github-Informationen eingeben zu müssen.

Was fehlt mir bei meinem SSH-Schlüssel? Wenn jemand Anleitung oder Ressourcen anbieten kann, wäre ich dankbar, denn ich habe mich immer etwas verloren gefühlt, wenn es um die SSH-Authentifizierung in GitHub ging.

Nach meinem Wissen ist dies ein Befehl, der prüft, ob alles ordnungsgemäß funktioniert, hier ist die Ausgabe von meiner Konsole:

~ $ ssh -T git@github.com
Saving password to keychain failed
Enter passphrase for key '/Users/MYNAME/.ssh/id_rsa':
Hi MYNAME! You've successfully authenticated, but GitHub does not provide shell access.

Sollte mein Passwort zuerst fehlschlagen, wenn ich es eingebe? Dann, wenn ich mein Passphrase eingebe, erfolgt die Authentifizierung.

20voto

Marina Punkte 1536

Wenn Sie Windows verwenden, hat das bei mir funktioniert:

eval `ssh-agent -s`
ssh-add ~/.ssh/*_rsa

Bei dem zweiten Befehl wird nach dem Passwort gefragt, und das war es.

Fügen Sie diese Zeilen zu Ihrem Bash-Profil, $HOME/.bash_profile oder $HOME/.bashrc hinzu.

14voto

possumkeys Punkte 539

Verwenden Sie den Befehl ssh-add, um Ihren öffentlichen Schlüssel dem ssh-agent hinzuzufügen.

ssh-add

Stellen Sie sicher, dass der ssh-public key z.B. ~/.ssh/id_rsa.pub mit dem übereinstimmt, den Sie in Ihren Repo-Einstellungen haben.

Stellen Sie sicher, dass Sie tatsächlich eine SSH-Verbindung zum Server herstellen können. Z.B. für Bitbucket:

ssh -T git@bitbucket.org

Aktualisieren Sie die URL, um von https auf ssh umzusteigen. Sie können überprüfen, welche Sie verwenden, indem Sie die Ausgabe von folgendem Befehl überprüfen:

git remote -v

Wenn Sie ein https:// in den URLs sehen, verwenden Sie immer noch https. Um es zu aktualisieren: Nehmen Sie die URL und ersetzen Sie einfach https:// durch ssh:// z.B.

https://git@bitbucket.org/../..

Zu:

ssh://git@bitbucket.org/../..

Referenziert: https://docs.github.com/en/github/using-git/changing-a-remotes-url#switching-remote-urls-from-https-to-ssh

11voto

Versuchen Sie ssh-agent, wie dort erklärt: https://help.github.com/articles/working-with-ssh-key-passphrases

9voto

daniel sp Punkte 907

Das hat bei mir funktioniert:

git config --global core.sshCommand "'C:\Windows\System32\OpenSSH\ssh.exe'"

8voto

DhineshYes Punkte 921

Habe in LinuxMint/Ubuntu gearbeitet

Führen Sie die folgenden Schritte aus

Schritt 1:

Gehen Sie zu Datei => /.ssh/config

Speichern Sie die folgenden Zeilen in die Datei

Host bitbucket.org
    HostName bitbucket.org
    User git
    IdentityFile /home/apple/myssh-privatekey
    AddKeysToAgent yes

Vergessen Sie nicht, diese Zeile hinzuzufügen AddKeysToAgent yes

Schritt 2:

Öffnen Sie das Terminal und fügen Sie den Schlüsselsatz zur ssh-add hinzu

$ ssh-add -k /home/apple/myssh-privatekey

Geben Sie das Passwort ein.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X