Wie SSH-Schlüsselpaare konvertieren PuTTYgen (Windows) in Keypairs von ssh-agent und Schlüsselanhänger (Linux) verwendet erzeugt mit
Frage
Ich habe Schlüsselpaare mit PuTTYgen erzeugt und sich mit der Festzug wurde angemeldet haben, so dass ich nur meine Passphrase eingeben müssen einmal, wenn mein System bootet.
Wie erreiche ich dies in Linux? Ich habe von keychain
gehört, aber ich höre, dass es ein anderes Schlüsselpaar-Format verwendet. - Ich will nicht meine Windows-Tasten ändern, und es wäre schön, wenn ich nahtlos auf die gleiche Weise in Windows und Linux verbinden könnte
Lösung
puttygen
unterstützt Ihren privaten Schlüssel zu einem OpenSSH-kompatibles Format zu exportieren. Anschließend können Sie OpenSSH-Tools verwenden, um die öffentlichen Schlüssel neu zu erstellen.
- Öffnen PuTTYgen
- Klicken Sie auf Load
- Laden Sie Ihren privaten Schlüssel
- Zum
Conversions->Export OpenSSH
und exportieren Sie Ihre privaten Schlüssel - Kopieren Sie Ihren privaten Schlüssel zu
~/.ssh/id_dsa
(oderid_rsa
). -
Erstellen Sie die RFC 4716-Version des öffentlichen Schlüssels
ssh-keygen
ssh-keygen -e -f ~/.ssh/id_dsa > ~/.ssh/id_dsa_com.pub
-
die RFC 4716-Version des öffentlichen Schlüssels zum OpenSSH-Format konvertieren:
ssh-keygen -i -f ~/.ssh/id_dsa_com.pub > ~/.ssh/id_dsa.pub
Andere Tipps
Wenn alles, was Sie haben ein öffentlicher Schlüssel von einem Benutzer in PuTTY-Stil-Format ist, können Sie es auf Standard-OpenSSH-Format wie so umwandeln können:
ssh-keygen -i -f keyfile.pub > newkeyfile.pub
Referenzen
- Quelle:
http://www.treslervania.com/node/408 - Mirror: https: // web. archive.org/web/20120414040727/http://www.treslervania.com/node/408 .
Kopie des Artikels
Ich vergesse immer wieder, dies so bin ich werde schreiben sie hier. Nicht-Geeks, nur halten zu Fuß.
Die gängigste Methode einen Schlüssel auf Windows zu machen, ist mit Putty / Puttygen herunter. Puttygen sorgt für eine aufgeräumte Dienstprogramm einen Linux privaten Schlüssel zu konvertieren Putty-Format. Was jedoch adressiert ist nicht der Fall, dass, wenn Sie mit der Speicherung Public-Key-puttygen es verwendet, wird auf einem Linux-Server nicht funktionieren. Windows stellt einige Daten in verschiedenen Bereichen und fügt Zeilenumbrüche.
Die Lösung: Wenn Sie mit dem öffentlichen Schlüssel Bildschirm erhalten bei der Erstellung Ihres Schlüsselpaar in puttygen, kopieren Sie den öffentlichen Schlüssel und es in einen Text einfügen Datei mit der Endung .pub. Sie werden Sie Stunden sysadmin speichern von Frustration Beiträge wie diese zu lesen.
JEDOCH sysadmins, erhalten Sie immer die wonky Schlüsseldatei, die wirft keine Fehlermeldung in dem Auth-Protokoll ausgenommen, fand kein Schlüssel, versucht Passwort; obwohl die alle anderen Tasten arbeiten gut, und Sie haben diesen Schlüssel zurück an den Benutzer 15-mal gesendet.
ssh-keygen -i -f keyfile.pub > newkeyfile.pub
Wenn Sie eine vorhandene puttygen öffentlichen Schlüssel OpenSSH-Format konvertieren.
Neuere Versionen von PuTTYgen (Mine ist 0,64) sind in der Lage, die OpenSSH öffentlichen Schlüssel werden eingefügt in dem linux-System in der .ssh/authorized_keys
Datei zu zeigen, wie in der folgenden Abbildung dargestellt:
Alternativ, wenn Sie die privaten und öffentlichen Schlüssel von einer PuTTY formated Schlüsseldatei packen wollen Sie puttygen
auf * nix-Systemen nutzen können. Für die meisten apt-basierte Systeme ist puttygen
Teil des putty-tools
Paket.
Ausgabe einen privaten Schlüssel aus einem PuTTY formated keyfile:
$ puttygen keyfile.pem -O private-openssh -o avdev.pvk
Für die öffentlichen Schlüssel:
$ puttygen keyfile.pem -L
sudo apt-get install putty
Dies wird das puttygen Tool automatisch installiert werden.
Sie nun die PPK-Datei konvertieren mit SSH-Befehl auszuführen, die folgenden in Terminal verwendet werden
puttygen mykey.ppk -O private-openssh -o my-openssh-key
Dann können Sie über SSH eine Verbindung mit:
ssh -v user@example.com -i my-openssh-key
http://www.graphicmist.in/use-your-putty-ppk-file-to-ssh-remote-server-in-ubuntu/#comment-28603
Vor kurzem hatte ich dieses Problem, da ich von Putty für Linux Remmina für Linux bewegte. So habe ich eine Menge von PPK-Dateien für Putty in meinem .putty
Verzeichnis wie ich es seit 8 Jahren verwendet habe. Dazu habe ich einen einfachen for
Befehl für Bash-Shell alle Dateien zu tun:
cd ~/.putty
for X in *.ppk; do puttygen $X -L > ~/.ssh/$(echo $X | sed 's,./,,' | sed 's/.ppk//g').pub; puttygen $X -O private-openssh -o ~/.ssh/$(echo $X | sed 's,./,,' | sed 's/.ppk//g').pvk; done;
Sehr schnell und auf den Punkt, bekam den Job für alle Dateien durchgeführt, die Kitt hatte. Wenn es einen Schlüssel mit einem Passwort findet, wird es zunächst für das Passwort für diesen Schlüssel zu stoppen und fragt und dann weiter.
Es ist wahrscheinlich einfacher, um Ihre Schlüssel unter Linux zu erstellen und PuTTYgen verwenden, um die Schlüssel zu PuTTY Format zu konvertieren.
Ich denke, was TCSgrad versucht zu fragen (vor ein paar Jahren) wurde, wie man Linux verhält sich wie sein Windows-Rechner. Das heißt, es ist ein Agent (Festzug), die eine entschlüsselte Kopie eines privaten Schlüssels hält, so dass das Passwort nur einmal setzte in werden. Dann wird der SSH-Client, Kitt, können in Maschinen einzuloggen, wo seine öffentlichen Schlüssel als „autorisiert“ ohne Passwortabfrage aufgeführt wird.
Die Analog hierfür ist, dass Linux, , die als ein SSH-Client , einen Agenten hat einen entschlüsselten privaten Schlüssel, so dass, wenn TCSgrad Typen „ssh host“ der Befehl ssh seinen privaten Schlüssel bekommen und gehen, ohne nach einem Passwort gefragt werden. Gastgeber wäre natürlich, haben die öffentlichen Schlüssel in ~ / .ssh / authorized_keys zu halten.
Das Linux-Analog diesem Szenario wird unter Verwendung von ssh-agent (der Festzug analog) und ssh-add (das analoge einen privaten Schlüssel zum Hinzufügen Pageant).
Die Methode, die für mich gearbeitet wurde zu verwenden: $ Ssh-agent $ SHELL Den $ SHELL der magische Trick war brauchte ich die Agenten laufen zu lassen und laufen bleiben. Ich fand, dass irgendwo auf dem ‚Netz und es endete ein paar Stunden meinen Kopf gegen die Wand zu schlagen.
Jetzt haben wir das Analogon von Festzug Laufen, ein Agent ohne Schlüssel geladen.
Typing $ Ssh-add allein wird (standardmäßig) die privaten Schlüssel hinzufügen in den Standardidentitätsdateien aufgelistet in ~ / .ssh.
Ein Web-Artikel mit viel mehr Details hier werden kann