Wie konvertiert man die SSH-Schlüsselpaare generiert mit PuTTYgen (Windows) in Schlüsselpaare verwendet, die von ssh-agent und Keychain (Linux)
Habe ich erzeugt Schlüssel-Paare mit PuTTYgen und wurde bei der Anmeldung Festzug, so dass ich zur Eingabe meiner Passphrase nur einmal, wenn mein system hochfährt.
Wie kann ich erreichen, das in Linux? Ich habe gehört, der keychain
aber ich höre, dass es verwendet einen anderen Schlüssel-paar-format, das möchte ich nicht ändern, meine Windows-Tasten und es wäre schön, wenn ich könnte nahtlos zu verbinden in der gleichen Weise, in Windows und Linux.
- Es sollte keine Probleme mit den Tasten in linux sowie... einfach kopieren und fügen Sie den pub, um autorisierten keys... obwohl zugegebenermaßen ich nicht ganz verstehe Ihre Frage.
- Nein , es ist - ich weiß so viel, dass die wichtigsten Formate, die von PuttyGen und ssh-agent sind Verschieden , und Sie müssen umgewandelt werden - siehe Kaleb die ausführliche Antwort weiter unten.
Du musst angemeldet sein, um einen Kommentar abzugeben.
puttygen
unterstützt das exportieren Sie Ihren privaten Schlüssel, um einen OpenSSH-kompatiblen format. Sie können dann mit OpenSSH-tools erstellen Sie die öffentlichen Schlüssel.Conversions->Export OpenSSH
und exportieren Sie Ihren privaten key~/.ssh/id_dsa
(oderid_rsa
).Anlegen der RFC 4716-version des public-key mit
ssh-keygen
Konvertieren Sie die RFC 4716-version des public-key für OpenSSH-format:
Sehen diese und diese für weitere Informationen.
It is required that your private key files are NOT accessible by others
Fehler wie ich laufen hattecd ~/.ssh
undchmod 700 id_rsa
Wenn alles, was Sie haben, ist der öffentliche Schlüssel von einem Benutzer in PuTTY-format, können Sie es konvertieren zu standard-openssh-format etwa so:
Referenzen
http://www.treslervania.com/node/408Kopie des Artikels
Comment:
Zeile und fügen Sie es auf die gleiche Linie wie den neuen Schlüssel, getrennt durch ein Leerzeichen. Ich weiß nicht, warum ssh-keygen wird nicht tun dies standardmäßig.decode blob failed: invalid format
Neuere Versionen von PuTTYgen (bei mir ist 0.64) in der Lage sind, den OpenSSH public-key eingefügt werden in das linux-system in der
.ssh/authorized_keys
- Datei, wie in der folgenden Abbildung dargestellt:Alternativ, wenn Sie möchten, schnappen Sie sich die privaten und öffentlichen Schlüssel aus einer PuTTY formatierte key-Datei, die Sie verwenden können
puttygen
auf *nix-Systemen. Für die meisten apt-basierten Systemeputtygen
ist Teil derputty-tools
Paket.Ausgabe einen privaten Schlüssel aus einem PuTTY formatierte keyfile:
$ puttygen keyfile.pem -O private-openssh -o avdev.pvk
Für den öffentlichen Schlüssel:
$ puttygen keyfile.pem -L
brew install putty
puttygen inppk -O private-openssh -o outpem
undputtygen inppk -L
(oderssh-keygen -y -f outpem
)Diese wird automatisch installieren Sie das tool puttygen.
Nun konvertieren Sie die PPK-Datei verwendet werden, mit SSH-Befehl führen Sie den folgenden in der Klemme
Dann können Sie eine Verbindung über SSH mit:
http://www.graphicmist.in/use-your-putty-ppk-file-to-ssh-remote-server-in-ubuntu/#comment-28603
Ich hatte vor kurzem dieses problem, da war ich bewegt von Putty für Linux zu Remmina für Linux. Also ich habe eine Menge von PPK-Dateien für Wachs in meinen
.putty
Verzeichnis, wie ich habe gewesen benutze es seit 8 Jahren. Dafür habe ich eine einfachefor
Befehl für die bash-shell zu tun, Sie alle Dateien:Sehr schnell und auf den Punkt, bekam den job zu erledigen für Sie alle Dateien, putty hatte. Wenn es feststellt, dass ein Schlüssel mit einem Passwort, wird es anhalten und Fragen Sie nach dem Passwort für diesen Schlüssel zuerst und dann weiter.
Es ist wahrscheinlich einfacher zu erstellen Sie Ihre Schlüssel unter linux und verwenden Sie PuTTYgen zum konvertieren der Schlüssel für PuTTY-format.
PuTTY Faq: A. 2.2
Ich denke, was TCSgrad war versucht zu Fragen, (vor ein paar Jahren) war es, den Linux Verhalten sich wie seine Windows-Maschine funktioniert. Das heißt, es ist ein agent (Festzug) enthält eine verschlüsselte Kopie des privaten Schlüssels, so dass die passphrase nur braucht eingerichtet werden, sobald. Dann, den ssh-client putty, können sich in Maschinen, wo seine öffentlichen Schlüssel als "berechtigt", ohne ein Passwort.
Den analogen HIERFÜR ist, dass Linux, als ssh-client, hat ein agent hält einen entschlüsselten privaten Schlüssel, so dass, wenn TCSgrad Typen "ssh host" den ssh Befehl erhalten, mit seinem privaten Schlüssel und gehen, ohne dass nach einem Passwort gefragt. host wäre natürlich, haben halt den öffentlichen Schlüssel in ~/.ssh/authorized_keys.
Das Linux-analog zu diesem Szenario erfolgt mit ssh-agent (der Festzug analog) und ssh-add (analog zum hinzufügen eines privaten Schlüssels zu pageant).
Die Methode, die für mich gearbeitet wurde, zu verwenden:
$ ssh-agent $SHELL
Die $SHELL war der Magische trick, den ich brauchte, um den agent ausführen und alles läuft. Ich fand, dass irgendwo auf der 'net, und es endete ein paar Stunden zu schlagen, meinen Kopf gegen die Wand.
Nun haben wir die analog der Festzug läuft, wird ein agent mit keine Schlüssel geladen.
Eingeben
$ ssh-add
von selbst wird Hinzugefügt (standardmäßig) die private keys aufgelistet, die in der Standard-Identität-Dateien in ~/.ssh .
Einen web-Artikel mit viel mehr details finden Sie hier