Ich kann mich nicht mit generierten ssh-Schlüsseln bei github anmelden. Ich bin diesem Handbuch gefolgt: Ссылка , aber bei Schritt:
Ich bekomme:
Der Agent gab zu, dass er nicht signiert hat der Schlüssel. Erlaubnis verweigert (publickey).
Was ist los? Und natürlich füge ich meine eigene Benutzer-E-Mail hinzu.
Versuchte dsa-Schlüssel, die gleiche Sache.
Aus dem Leitfaden zur Fehlerbehebung :
Berechtigung verweigert (publickey)
Dies wird normalerweise verursacht, wenn ssh nicht kann finde deine Schlüssel. Stellen Sie sicher, dass Ihr Schlüssel ist im Standardspeicherort ~ / .ssh. Ob Sie laufen ssh-keygen wieder und einfach Drücken Sie die Eingabetaste, um alle 3 Eingabeaufforderungen anzuzeigen hier automatisch platziert werden. Dann Sie kann den Inhalt von id_rsa.pub hinzufügen meine GitHub-Tasten. Wenn id_rsa.pub nicht Arbeit versuchen Sie id_dsa..pub. Möglicherweise müssen Sie das tun Erzeugen Sie einen neuen DSA-Schlüssel mit ssh-keygen -t DSA, wenn Sie nur einen RSA-Schlüssel haben.
Wenn Sie immer noch Probleme haben und keiner der oben genannten funktioniert, haben Sie vielleicht ein Blacklist-Schlüssel von einem Debian Open-SSH-Fehler. Sie sollten aktualisieren Open-SSH und generieren Sie Ihre Schlüssel neu.
Also, nur um zu überprüfen - sind Ihre Schlüssel unter ~ / .ssh / als id_rsa und id_rsa.pub oder anders, geben Sie ihre Verwendung an?
Dank dieses Threads konnte ich Gitlab zum Laufen bringen (ich weiß, das ist kein Github).
Ich fand auch die Antwort von @jamesw als richtig.
Ich musste meine known_hosts
-Datei löschen und meinen ssh-Schlüssel mit dem gleichen Passwort wie meinen gitlab-Account neu erstellen.
Dann habe ich das ssh-add
gemacht und ein git push -u origin master
. Erfolg!
Danke für die Hilfe alle.
UPDATE:
Ich beschloss, meinen ssh-Schlüssel ohne ein Kennwort neu zu erstellen und diesen Fehler erneut zu finden.
Diesmal konnte ich meine alte known_hosts
in die neue .ssh/
kopieren und einfach die ssh-add
ausführen.
Dieses Problem tritt hauptsächlich aus folgenden Gründen auf:
Wenn Sie sicher sind, dass Ihr öffentlicher Schlüssel korrekt ist, überprüfen Sie das Format des öffentlichen Schlüssels in Ihrem ~ / .ssh-Ordner auf Ihrem Computer. Für openssh können Sie keinen öffentlichen Schlüssel im Puttygen-Format und umgekehrt verwenden. Um das Format zu ändern, können Sie den folgenden Befehl mit Ihrem privaten Schlüssel verwenden
$ ssh-keygen -e -f ~ / .ssh / id_rsa & gt; ~ / .ssh / id_rsa_com.pub
$ ssh-keygen -i -f ~ / .ssh / id_rsa_com.pub & gt; ~ / .ssh / id_rsa.pub
Überprüfen Sie abschließend, ob Sie Ihre Schlüssel dem ssh-Client in Ihrem System hinzugefügt haben. Sie können dies mit den folgenden Befehlen tun
$ eval "$ (ssh-agent -s)"
$ ssh-add
Beachten Sie, dass ssh-agent
pro Sitzung (pro Terminal) gilt. Verwenden Sie den ssh-Agenten-Manager wie keychain (Informationen dazu finden Sie in der Dokumentation zur Einrichtung), um Zugriff zu erhalten über jede Sitzung (von jedem Begriff).