Ich habe für eine neue Server - Installation SSH - Schlüssel erzeugt nach dem Verfahren skizziert hier . Wenn ich jedoch den Inhalt von id_rsa.pub
in meine Schlüsselliste auf GitHub kopiere , wird die Fehlermeldung "Schlüssel ist ungültig. Stellen Sie sicher, dass Sie die Datei korrekt kopiert haben." Angezeigt.
Der generierte Schlüssel ist gültig und ich kopiere ihn genau so wie er ist (alles in einer Zeile ohne Leerzeichen am Anfang / Ende).
Hat jemand eine Idee, was los sein könnte?
ssh-rsa
, das vor dem Schlüssel selbst steht, ja?Antworten:
Ich bin hierher gekommen, weil ich das gleiche Problem hatte. Aufgrund Ihrer Frage wurde mir klar, dass ich den Inhalt ohne die
.pub
Erweiterung aus der falschen Datei kopierte (es war mein privater Schlüssel, dh dieid_rsa
Datei, die jederzeit privat gehalten werden sollte!).Von einem MAC:
Kopieren Sie genau vom Ende (mit dem letzten Buchstaben Ihrer E-Mail-Domain-Endung) des Zeichenblocks bis zum Anfang, der mit ssh-rs beginnt ...
Wenn es nicht funktioniert, kopieren Sie sicherlich nicht richtig.
Es funktionierte.
Wenn Sie unter Windows arbeiten , verwenden Sie den Editor und kopieren Sie ihn wie oben beschrieben.
Ich hoffe das hat geholfen.
quelle
vi
habe den Trick gemacht, ich habe Nano verwendet, das die Datei mit$
Symbol abgeschnitten wirdHier sind einige Schritte, die beim Kopieren / Einfügen Ihres öffentlichen Schlüssels überhaupt nicht klar sind. (Für die Aufzeichnung habe ich Putty Key Generator für meine Schlüssel verwendet.)
Beachten Sie, dass in diesem Screenshot nach ssh-rsa ein Leerzeichen steht (siehe Cursor). Der Text des öffentlichen Schlüssels enthält außerdem drei \ n Zeichen, sodass Sie den Text des öffentlichen Schlüssels dreimal in der nächsten Zeile im Textfeld sehen können.
quelle
ssh-rsa
und nicht .Ich versuche verschiedene Möglichkeiten, aber keine davon hilft (mein Betriebssystem ist Ubuntu). Dann überlegte ich, ob ich den Inhalt von ~ / .ssh / id_rsa.pub mit dem Befehl "more" drucken kann.
Es tut mir leid, als ich keinen Ruf habe, Bilder zu posten! wenn ich habe, werde ich es posten!
Hier ist eine URL, unter der Sie das Bild sehen können:
Ich habe den Inhalt von der Kommandozeile kopiert und es hat funktioniert !!!
quelle
Ich weiß, dass diese Frage jetzt ein cpl Jahre alt ist, aber wenn jemand im Jahr 2018 darauf stößt:
dann ist unten ein Kinderspiel:
Mein Problem war, dass ich versucht habe, den privaten Schlüssel zu kopieren
anstelle von Inhalten mit öffentlichem Schlüssel
als mein SSH-Gitlab-Repository-Schlüssel, also nach Ihnen:
Bitte denken Sie an die .pub- Dateierweiterung, von der kopiert werden soll:
pbcopy <~ / .ssh / id_rsa. Kneipe
xclip -sel clip <~ / .ssh / id_rsa. Kneipe
cat ~ / .ssh / id_rsa. Kneipe | Clip
Fügen Sie es dann als SSH-Schlüssel in Ihr Gitlab / Github oder ein anderes Repository ein
Das ist absolut sinnvoll, da Sie immer nur Ihren öffentlichen Schlüssel teilen sollten, nicht den privaten :)
quelle
Empfohlen von GitHub
Kopieren der
SSH-KEY
:Ich habe mit gearbeitet,
xclip
um denid_rsa.pub
Schlüssel wie folgt zu kopieren :1. Installieren
xclip
sudo apt-get install xclip
2. Kopieren mit
xclip
xclip -sel clip < ~/.ssh/id_rsa.pub
Viel Glück.
quelle
In Fenstern,
Kopieren Sie einfach die nackten Schlüsseldaten aus der Schlüsseldatei und entfernen Sie neue Zeilen. Schreiben Sie dies unten in das Dialogfeld, um Ihr Problem zu lösen. ssh-rsa Schlüssel
HINWEIS: Zwischen ssh-rsa und key ist Platz
Und du bist fertig.
quelle
Jemand schlug vor, es zu verwenden,
$ vi ~/.ssh/id_rsa.pub
aber es funktionierte nicht für mich.Stattdessen habe ich den
$ cat ~/.ssh/id_rsa.pub
Befehl auf dem Windows-Computer verwendet, um auf dem Terminal auszudrucken und ihn dann zu kopieren.quelle
Nur für diejenigen, die in die Zukunft schauen, ist ein weiteres häufiges Problem das Umschließen von Wörtern. Wenn Sie beispielsweise ausführen
cat ~/.ssh/id_rsa.pub
, können Zeilen umbrochen werden, wodurch\
bei jedem Zeilenumbruch zusätzliche Zeichen hinzugefügt werden . Entfernen Sie diese und Ihr Schlüssel sollte gut funktionieren.quelle
Wenn Sie tatsächlich den Inhalt Ihres
id_rsa.pub
Schlüssels kopiert haben (in einer durchgehenden Zeile), sollte das Ergebnis folgendermaßen aussehen (von der Hilfeseite von The GitHub ssh ):Der OP-Louismus bestätigt ein Problem beim Kopieren und Einfügen:
quelle
Ich hatte das gleiche Problem, obwohl ich den öffentlichen Schlüssel von der
cat
Ausgabe direkt vom Terminal (Cmder / ConEmu) kopiert habe. Es scheint, dass die Methode, mit der Sie den öffentlichen Schlüssel kopieren, einen Unterschied macht. Hier ist eine Möglichkeit zu überprüfen:Fügen Sie dann den fehlgeschlagenen Schlüssel in eine neue Datei ein und versuchen Sie Folgendes zu überprüfen:
In meinem Fall hatte ich den Schlüssel von der Terminalausgabe mit kopiert
cat
; stattdessen den Schlüssel vonvim
funktioniert bekommen. So öffnen Sie den Schlüssel in vim mit aktiviertem Zeilenumbruch:Ich vermute , dass der Terminal - Emulator kann etwas damit zu tun haben , wie ich dieses Problem nicht mit Terminal.app gehabt haben.
quelle
Wenn Sie Sublime verwenden, können Sie ssh-key korrekt sehen. Überprüfen Sie, ob id_rsa.pub vorhanden ist
Wenn es vorhanden ist, öffnen Sie es mit erhabenem Text
Kopieren Sie dann Ihren öffentlichen SSH-Schlüssel und fügen Sie ihn ein.
quelle
In meinem Fall musste ich nach meiner E-Mail (nach der gesamten Schlüsselzeichenfolge) eine zusätzliche weiße Regel hinzufügen, bevor sie akzeptiert wurde. Ich habe dies zufällig herausgefunden, nachdem ich versucht hatte, meinen SSH-Schlüssel wie auf Gitlab eingegeben zu kopieren.
pbcopy von meinem Pub-Schlüssel direkt aus der Kommandozeile hat nicht funktioniert. Die Kopie von gitlab mit der zusätzlichen weißen Regel am Ende hat es geschafft.
quelle
Ich hatte gerade dieses Problem. Super frustrierend. Ich nahm an, dass meine Situation den Fall des Problems beeinflusst haben könnte. Ich verwende ein Tablet und versuche, den Schlüssel auf der Githubs-Website über meinen Tablet-Browser (Chrome) einzurichten. Ich kopiere den Schlüssel von einer SSH-App, die mit meinem Remote-Linux-Server verbunden ist.
Was am Ende passierte, war, dass beim Kopieren des Schlüssels in den Browser eine Reihe von Zeilenumbrüchen eingeführt wurden. Darüber hinaus wurde an jedem Punkt, an dem eine neue Linie eingefügt wurde, ein Zeichen entfernt.
Damit es funktioniert, musste ich jeden neuen Zeilenumbruch manuell finden und dann nach diesem Teil des Schlüssels suchen, um das fehlende Zeichen zu finden. Ich habe dann das Zeichen hinzugefügt und die neue Zeile entfernt. Nachdem ich jede Änderung aufgespürt hatte, funktionierte der Schlüssel einwandfrei.
Übrigens habe ich selbst keine neuen Zeilenumbrüche hinzugefügt, wie sie von anderen nach dem ssh-rsa erwähnt wurden.
Hoffentlich hilft das anderen. Ich habe keine Ahnung, warum es passiert ist. Dumm, dass das Kopieren in die Zwischenablage den kopierten Text verändern würde. Oh, ich habe es auch direkt aus Vim kopiert.
quelle
Wenn Sie Bash für Windows als Terminal verwenden und über Umschalt + Hervorheben + Strg-C kopieren, funktioniert diese Lösung möglicherweise für Sie:
quelle
Es ist ein häufiges Problem, mit dem wir beim Generieren des Schlüssels konfrontiert sind. Während der SSH-Generierung erhalten wir zwei Diff-Dateien, eine ist id_rsa und id_rsa.pub. Hier ist die Datei mit der Pub-Erweiterung die öffentliche Schlüsselhalterdatei. Sie müssen den Inhalt aus dieser Datei kopieren und zum Github hinzufügen.
HINWEISE: 1. Der Inhalt der öffentlichen Schlüsseldatei beginnt mit 'SSH-RSA'. 2. endet mit Ihrer Github-E-Mail-ID. Beispiel: Wenn Sie Github bei @ gmail.com registriert haben, hat die Pub-Datei zuletzt die angegebene E-Mail-ID
quelle
bei Verwendung von vs Code
code ~/.ssh/id_rsa.pub
öffnet die.pub
Datei, kopiere sie nach Githubquelle
So kopieren Sie den gesamten Inhalt von id_rsa.pub in die Zwischenablage:
Führen Sie> aus
pbcopy ~/.ssh/id_rsa.pub
quelle
Ich habe versucht, meinen öffentlichen Schlüssel hochzuladen, und die Meldung "Ungültiger Schlüssel" wurde angezeigt. Mein Format war nicht korrekt, da am Ende des Schlüssels zusätzliche Leerzeichen vorhanden waren. Es sollte im Format sein:
ssh-rsa <public-key>
quelle