Ich habe Schlüsselpaare mit PuTTYgen generiert und mich mit Pageant angemeldet, sodass ich meine Passphrase beim Systemstart nur einmal eingeben muss.
Wie erreiche ich das unter Linux? Ich habe gehört, keychain
aber ich höre, dass es ein anderes Schlüsselpaarformat verwendet - ich möchte meine Windows-Schlüssel nicht ändern und es wäre schön, wenn ich sowohl unter Windows als auch unter Linux auf dieselbe Weise nahtlos eine Verbindung herstellen könnte.
Antworten:
puttygen
unterstützt den Export Ihres privaten Schlüssels in ein OpenSSH-kompatibles Format. Sie können dann OpenSSH-Tools verwenden, um den öffentlichen Schlüssel neu zu erstellen.Conversions->Export OpenSSH
und exportieren Sie Ihren privaten Schlüssel~/.ssh/id_dsa
(oderid_rsa
).Erstellen Sie die RFC 4716-Version des öffentlichen Schlüssels mit
ssh-keygen
Konvertieren Sie die RFC 4716-Version des öffentlichen Schlüssels in das OpenSSH-Format:
Sehen Sie diese und diese für weitere Informationen.
quelle
It is required that your private key files are NOT accessible by others
Fehler bekommen , wie ich gelaufen warcd ~/.ssh
undchmod 700 id_rsa
Wenn Sie nur einen öffentlichen Schlüssel eines Benutzers im PuTTY-Format haben, können Sie ihn wie folgt in das Standard-OpenSSh-Format konvertieren:
Verweise
http://www.treslervania.com/node/408Kopie des Artikels
quelle
Comment:
Zeile kopieren und in dieselbe Zeile wie der neue Schlüssel einfügen, die durch ein Leerzeichen getrennt ist. Ich weiß nicht, warum ssh-keygen dies nicht standardmäßig tut.decode blob failed: invalid format
Neuere Versionen von PuTTYgen (meins ist 0.64) können den öffentlichen OpenSSH-Schlüssel anzeigen, der im Linux-System in die
.ssh/authorized_keys
Datei eingefügt werden soll, wie in der folgenden Abbildung dargestellt:quelle
Wenn Sie die privaten und öffentlichen Schlüssel aus einer PuTTY-formatierten Schlüsseldatei abrufen möchten, können Sie sie auch
puttygen
auf * nix-Systemen verwenden. Für die meisten apt-basierten Systemeputtygen
ist dies Teil desputty-tools
Pakets.Ausgabe eines privaten Schlüssels aus einer PuTTY-formatierten Schlüsseldatei:
$ puttygen keyfile.pem -O private-openssh -o avdev.pvk
Für den öffentlichen Schlüssel:
$ puttygen keyfile.pem -L
quelle
brew install putty
puttygen inppk -O private-openssh -o outpem
undputtygen inppk -L
(oderssh-keygen -y -f outpem
)Dadurch wird das Puttygen-Tool automatisch installiert.
Führen Sie nun die folgenden Schritte im Terminal aus, um die mit dem SSH-Befehl zu verwendende PPK-Datei zu konvertieren
Dann können Sie über SSH eine Verbindung herstellen mit:
http://www.graphicmist.in/use-your-putty-ppk-file-to-ssh-remote-server-in-ubuntu/#comment-28603
quelle
Ich hatte kürzlich dieses Problem, als ich von Putty für Linux zu Remmina für Linux wechselte. Ich habe also viele PPK-Dateien für Putty in meinem
.putty
Verzeichnis, da ich es seit 8 Jahren benutze. Dafür habe ich einen einfachenfor
Befehl für die Bash-Shell verwendet, um alle Dateien zu erstellen:Sehr schnell und auf den Punkt gebracht, erledigte die Arbeit für alle Dateien, die Kitt hatte. Wenn ein Schlüssel mit einem Kennwort gefunden wird, wird er angehalten und zuerst nach dem Kennwort für diesen Schlüssel gefragt und dann fortgefahren.
quelle
Es ist wahrscheinlich einfacher, Ihre Schlüssel unter Linux zu erstellen und PuTTYgen zu verwenden, um die Schlüssel in das PuTTY-Format zu konvertieren.
PuTTY FAQ: A.2.2
quelle
Ich denke, TCSgrad wollte (vor einigen Jahren) fragen, wie man Linux dazu bringt, sich so zu verhalten, wie es sein Windows-Computer tut. Das heißt, es gibt einen Agenten (Festzug), der eine entschlüsselte Kopie eines privaten Schlüssels enthält, sodass die Passphrase nur einmal eingegeben werden muss. Anschließend kann sich der ssh-Client putty ohne Eingabe von Kennwörtern bei Computern anmelden, auf denen sein öffentlicher Schlüssel als "autorisiert" aufgeführt ist.
Das Analoge dazu ist, dass Linux als SSH-Client einen Agenten hat, der einen entschlüsselten privaten Schlüssel besitzt, sodass der Befehl ssh, wenn TCSgrad "ssh host" eingibt, seinen privaten Schlüssel erhält und ohne Aufforderung zur Eingabe eines Kennworts fortfährt. Der Host müsste natürlich den öffentlichen Schlüssel in ~ / .ssh / authorized_keys halten.
Das Linux-Analogon zu diesem Szenario wird mit ssh-agent (dem Festzug-Analogon) und ssh-add (dem Analogon zum Hinzufügen eines privaten Schlüssels zum Festzug) ausgeführt.
Die Methode, die für mich funktioniert hat, war: $ ssh-agent $ SHELL Diese $ SHELL war der Zaubertrick, den ich brauchte, um den Agenten zum Laufen zu bringen und weiterzulaufen. Ich fand das irgendwo im Netz und es endete ein paar Stunden damit, meinen Kopf gegen die Wand zu schlagen.
Jetzt läuft das Analogon eines Festzuges, ein Agent ohne Schlüssel.
Wenn Sie $ ssh-add selbst eingeben, werden (standardmäßig) die privaten Schlüssel hinzugefügt, die in den Standardidentitätsdateien in ~ / .ssh aufgeführt sind.
Einen Webartikel mit viel mehr Details finden Sie hier
quelle
PPK → OpenSSH RSA mit PuttyGen & Docker.
Privat Schlüssel:
Öffentlicher Schlüssel:
Siehe auch https://hub.docker.com/r/zinuzoid/puttygen
quelle