Konvertieren Sie PEM in das PPK-Dateiformat

125

Gibt es eine Möglichkeit, PEM-Dateien in PPK-Dateien zu konvertieren? (Sie können sich vorstellen, dass Amazon EC2 mir eine PEM-Datei zur Verfügung stellt und ich das PPK-Format für die SSH-Konnektivität verwenden muss.)

LoneRanger
quelle
1
Ich habe noch nie vom ppk-Format gehört, aber ich bezweifle, dass es in .NET etwas dafür gibt.
Präsident James K. Polk
6
PPK ist das Putty-Client-Format. Ich glaube nicht, dass .NET etwas damit zu tun hat.
Borealid
2
Ok, das habe ich nicht bemerkt ... Also ist PPK nur ein proprietäres / seltsames Format, das nur in Putty-Land existiert?
LoneRanger
1
Es ist auch das einzige Format, das FileZilla akzeptiert.
Ryder
Und das Standardformat, in dem AmazonWebServices ihre Schlüssel ausgibt.
Kzqai

Antworten:

229

Verwenden Sie PuTTYGen

Erstellen und Verwenden von SSH-Schlüsseln

Überblick

vCloud Express kann jetzt SSH-Schlüssel für Linux-Server erstellen. Mit dieser Funktion kann der Benutzer mehrere benutzerdefinierte Schlüssel erstellen, indem er die Option "Mein Konto / Schlüsselverwaltung" auswählt. Sobald der Schlüssel erstellt wurde, muss der Benutzer den gewünschten SSH-Schlüssel während des Prozesses "Server erstellen" für Linux auswählen.

Erstellen und Verwenden von SSH-Schlüsseln

  1. Schlüssel erstellen
    • Navigieren Sie zu "Mein Konto".
    • Wählen Sie "Schlüsselverwaltung".
    • Neuen Schlüssel erstellen.
      • Während des Schlüsselerstellungsprozesses werden Sie aufgefordert, Ihre private Schlüsseldatei im PEM-Format herunterzuladen. Sie können den privaten Schlüssel nicht erneut herunterladen, da er nicht in vCloud Express gespeichert ist.
      • Das Kontrollkästchen "Standard" wird für die API verwendet.
  2. Stellen Sie den Server bereit und wählen Sie den Schlüssel aus
  3. Verbinden

    • SSH (Mac / Linux)
      • Kopieren Sie die PEM-Datei auf den Computer, von dem aus Sie eine Verbindung herstellen möchten.
      • Stellen Sie sicher, dass die Berechtigungen für die PEM-Datei angemessen sind (chmod 600 file.pem).
      • Stellen Sie eine Verbindung mit dem Befehl ssh her: ssh vcloud @ ipaddress –i privkey.pem
    • Kitt (Windows)
      • Laden Sie Putty und Puttygen von hier herunter
      • Verwenden Sie puttygen, um die .PEM-Datei in die .PPK-Datei zu konvertieren.
      • Starten Sie puttygen und wählen Sie "Laden"
      • Wählen Sie Ihre .PEM-Datei aus.
      • Putty konvertiert das .PEM-Format in das .PPK-Format. Geben Sie hier die Bildbeschreibung ein
      • Wählen Sie "Privaten Schlüssel speichern". Eine Passphrase ist nicht erforderlich, kann jedoch verwendet werden, wenn zusätzliche Sicherheit erforderlich ist.
    • Verbinde dich mit Putty.

      • Starten Sie Putty und geben Sie die Host-IP-Adresse ein. Wenn Sie eine Verbindung zur privaten 10.X-Adresse herstellen, müssen Sie zuerst eine SSL-VPN-Verbindung herstellen.
      • Navigieren Sie zu Verbindung / SSH / Authentifizierung
      • Klicken Sie auf "Durchsuchen" und wählen Sie die aus puttygen exportierte .PPK-Datei aus. Geben Sie hier die Bildbeschreibung ein

      • Klicken Sie auf "Öffnen". Wenn die Verbindung hergestellt ist, geben Sie den Benutzernamen ein (Standard ist vcloud).

Anweisungen von hier kopiert

Ryan Kinal
quelle
Danke, ich habe das gemacht und es hat funktioniert! LoneRanger, ich denke, Sie können dies als die richtige Antwort markieren :-)
Kevin P.
65

Ich bin ziemlich schockiert, dass dies nicht beantwortet wurde, da die Lösung sehr einfach ist.

Wie bereits in früheren Beiträgen erwähnt, möchten Sie es nicht mit C # konvertieren, sondern nur einmal. Dies ist mit PuTTYGen einfach zu bewerkstelligen.

  1. Laden Sie Ihre .pem von AWS herunter
  2. Öffnen Sie PuTTYgen
  3. Klicken Sie auf der rechten Seite etwa 3/4 nach unten auf "Laden"
  4. Stellen Sie den Dateityp auf *. *
  5. Navigieren Sie zu und öffnen Sie Ihre PEM-Datei
  6. PuTTY erkennt automatisch alles, was es benötigt. Sie müssen nur auf "Privaten Schlüssel speichern" klicken und können Ihren ppk-Schlüssel zur Verwendung mit PuTTY speichern

Genießen!

trex005
quelle
2
Für wen diese Lösung nicht funktioniert, aktualisieren Sie Ihren Puttygen von chiark.greenend.org.uk/~sgtatham/putty/download.html . Mein war 2005 und konnte
PEMs
31
Es ist wirklich lustig, wenn Sie suchen, wie Sie etwas tun können, was Sie seit langem nicht mehr getan haben, und Sie finden die Stackoverflow-Antwort, die Sie vor 2,5 Jahren gegeben haben.
Trex005
2
@ trex005 Nun, Stackoverflow scheint nun eine Erweiterung unseres Gedächtnisses zu sein. Wir müssen uns nicht an alles in unserem Kopf erinnern.
Paramvir Singh Karwal
@ParamvirSinghKarwal du hast so recht ... Ich benutze diesen Beitrag wahrscheinlich jedes oder jedes zweite Jahr für mein eigenes Memroy, aber ich kommentiere nicht länger, da es nur nervig werden würde!
trex005
16
  1. Laden Sie puttygen herunter
  2. Dann Kitt öffnen
  3. Klicken Sie auf Laden
  4. Stellen Sie den Dateityp auf ein . alle Dateien
  5. Speichern Sie PrivateKey
  6. und dann können Sie einfach einen beliebigen Namen speichern, aus dem die Datei eine ppk-Datei wurde
user7757658
quelle
5

Für die SSH-Konnektivität zur AWS EC2-Instanz müssen Sie die .PEM-Datei auch auf einem Windows-Computer nicht konvertieren. Simple SSH mit dem Tool 'git bash'. Sie müssen diese Software nicht herunterladen und konvertieren. Wir hoffen, dass Sie dadurch Zeit für das Herunterladen und Konvertieren von Schlüsseln sparen und mehr Zeit für EC2-Dinge haben.

Rätsel
quelle
1
Oder in Windows 10 "Bash on Ubuntu on Windows"
Andrew Lorien
Sie benötigen ppk, um ssh mit
putty
Die Antwort ist richtig, geht aber nicht auf die Frage im Titel ein
Oliver Dungey
5

Wenn Sie einen Linux-Computer haben, installieren Sie einfach puttygen in Ihrem System und verwenden Sie den folgenden Befehl, um den Schlüssel zu konvertieren

pem to ppk benutze folgenden Befehl:

puttygen keyname -o keyname.ppk

Der folgende Befehl wird verwendet, um ppk in pem zu konvertieren, nicht pem in ppk

puttygen filename.ppk -O private-openssh -o filename.pem

Deepak Sharma
quelle
Und Sie können Putty auf den meisten Linux-Distributionen installieren - hier gibt es eine schöne Liste: command-not-found.com/puttygen
Oliver Dungey
Was unten falsch ist, empfehlen, pem in ppk puttygen zu konvertieren. Keyname -o keyname.ppk
Deepak Sharma
Sie haben den Befehl bearbeitet und erwähnt, der zum Konvertieren von ppk in pem verwendet wird
Deepak Sharma
3
  1. Speichern Sie YourPEMFILE.pem in Ihrem .ssh-Verzeichnis
  2. Führen Sie puttygen über die Eingabeaufforderung aus

    ein. Klicken Sie auf die Schaltfläche „Laden“, um eine vorhandene private Schlüsseldatei zu laden.
    B. Ändern Sie den Dateifilter in „Alle Dateien ( . )
    C. C. Wählen Sie YourPEMFILE.pem aus.
    D. Klicken Sie auf Öffnen
    e. Puttygen zeigt einen Hinweis an, dass der Fremdschlüssel erfolgreich importiert wurde. OK klicken.
    f. Klicken Sie auf „Save private key“ Taste
    g. Wenn Sie gefragt werden, ob Sie sicher sind, dass Sie ohne Eingabe einer Passphrase speichern möchten, antworten Sie mit "Ja".
    h. Geben Sie den Dateinamen YourPEMFILE.ppk
    i ein. Klicken Sie auf "Speichern".

Kartick Shaw
quelle
2

Konvertieren Sie die PEM-Datei in die PPK-Datei für Windows 10

Sie müssen Folgendes tun:


1. Laden Sie PuTTYGen with Pageant herunter .
2. Drücken Sie „load“ Taste und wählen Sie Ihre „.pem“ Datei.
3. Drücken Sie „Speichern privater Schlüssel“ Taste und speichern Sie Ihre „.ppk“ Datei.
4. Öffnen Sie Pageant und drücken Sie die Taste " Taste hinzufügen" . Einfach alles. Führen Sie Pageant im Hintergrund weiter .
5. Melden Sie sich jetzt über SSH oder SFTP an, ohne das Kennwortfeld auszuwählen.


Geben Sie hier die Bildbeschreibung ein


Geben Sie hier die Bildbeschreibung ein


Geben Sie hier die Bildbeschreibung ein

M. Hamza Rajput
quelle
1

PuTTYgen für Ubuntu / Linux und PEM zu PPK

sudo apt install putty-tools
puttygen -t rsa -b 2048 -C "user@host" -o keyfile.ppk
Administrator
quelle
0

Ich habe eine Testversion von ZOC Terminal Emulator verwendet und es hat funktioniert. Es akzeptiert leicht die * .pem-Dateien von Amazon.

Der Trick ist jedoch, dass Sie "ec2-user" anstelle von "root" für den Benutzernamen angeben müssen - trotz des Beispiels in der EC2-Konsole, das falsch ist! ;-);

Patalenski
quelle
0

Ich hatte das gleiche Problem mit PuttyGen, das keinen privaten openSSH-Schlüssel importieren wollte. Ich habe alles versucht und festgestellt, dass die alte Version von PuttyGen den Import von OpenSSH nicht unterstützt. Nachdem ich den neuesten Putty heruntergeladen hatte, erlaubte puttygen ihm, den privaten Schlüssel von openssh zu importieren. Ich habe jetzt ein Loch in der Seite meines Schreibtisches, weil ich in der letzten Stunde meinen Kopf dagegen geschlagen habe.

Peterlandis
quelle