Converti PEM in formato file PPK


126

C'è un modo per convertire i file PEM in file PPK? (puoi immaginare che Amazon EC2 mi fornisce un file PEM e ho bisogno di utilizzare il formato PPK per la connettività SSH).


1
mai sentito parlare del formato ppk, ma dubito che ci sia qualcosa in .NET per questo.
Presidente James K. Polk

6
PPK è il formato client Putty. Non penso che .NET abbia nulla a che fare con questo.
Borealid

2
Ok, non me ne rendevo conto ... Quindi PPK è solo un formato proprietario / strano che esiste solo in Putty-land?
LoneRanger

1
È anche inutilmente l'unico formato che FileZilla accetta.
Ryder

E il formato predefinito in cui AmazonWebServices distribuisce le chiavi.
Kzqai

Risposte:


230

Usa PuTTYGen

Creazione e utilizzo di chiavi SSH

Panoramica

vCloud Express ora ha la possibilità di creare chiavi SSH per server Linux. Questa funzione consentirà all'utente di creare più chiavi personalizzate selezionando l'opzione "Account personale / Gestione chiavi". Una volta che la chiave è stata creata, all'utente verrà richiesto di selezionare la chiave SSH desiderata durante il processo "Crea server" per Linux.

Crea e usa chiavi SSH

  1. Crea chiavi
    • Vai a "Il mio account"
    • Seleziona "Gestione chiavi"
    • Crea nuova chiave.
      • Durante il processo di creazione della chiave ti verrà chiesto di scaricare il file della chiave privata in formato .PEM. Non sarà possibile scaricare di nuovo la chiave privata poiché non è archiviata in vCloud Express.
      • La casella di controllo "Default" viene utilizzata per l'API.
  2. Distribuisci il server e seleziona la chiave
  3. Collegare

    • SSH (Mac / Linux)
      • Copia il file .PEM sulla macchina da cui ti connetti.
      • Assicurati che i permessi sul file .PEM siano appropriati (chmod 600 file.pem)
      • Connettiti con il comando ssh: ssh vcloud @ ipaddress –i privkey.pem
    • Putty (Windows)
      • Scarica Putty e puttygen da - qui
      • Usa puttygen per convertire il file .PEM in file .PPK.
      • Avvia puttygen e seleziona "Carica"
      • Seleziona il tuo file .PEM.
      • Putty convertirà il formato .PEM in formato .PPK. inserisci qui la descrizione dell'immagine
      • Selezionare "Salva chiave privata". Una passphrase non è richiesta ma può essere utilizzata se è richiesta una sicurezza aggiuntiva.
    • Connettiti con Putty.

      • Avvia Putty e inserisci l'indirizzo IP dell'host. Se ti connetti all'indirizzo privato 10.X devi prima stabilire una connessione SSL VPN.
      • Vai a Connessione / SSH / Autenticazione
      • Fare clic su "Sfoglia" e selezionare il file .PPK esportato da puttygen. inserisci qui la descrizione dell'immagine

      • Fai clic su "Apri". Quando viene avviata la connessione, immettere il nome utente (il valore predefinito è vcloud).

Istruzioni copiate da qui


Grazie, l'ho fatto e ha funzionato! LoneRanger, penso che tu possa contrassegnare questa come la risposta corretta :-)
Kevin P.

65

Sono piuttosto scioccato dal fatto che non sia stata data risposta poiché la soluzione è molto semplice.

Come accennato nei post precedenti, non vorresti convertirlo usando C #, ma solo una volta. Questo è facile da fare con PuTTYGen.

  1. Scarica il tuo .pem da AWS
  2. Apri PuTTYgen
  3. Fare clic su "Carica" ​​sul lato destro di circa 3/4 in basso
  4. Imposta il tipo di file su *. *
  5. Sfoglia e apri il tuo file .pem
  6. PuTTY rileverà automaticamente tutto ciò di cui ha bisogno e devi solo fare clic su "Salva chiave privata" per salvare la tua chiave ppk per utilizzarla con PuTTY

Godere!


2
Per chi questa soluzione non funziona, aggiorna il tuo puttygen da chiark.greenend.org.uk/~sgtatham/putty/download.html . Il mio era il 2005 e non riuscivo ad aprire i PEM
mistika il

31
È davvero divertente quando stai cercando come fare qualcosa che non hai da molto tempo e trovi la risposta di stackoverflow che hai dato 2,5 anni prima.
trex005

2
@ trex005 beh, stackoverflow ora sembra essere un'estensione della nostra memoria, non abbiamo bisogno di ricordare tutto nella nostra testa.
Paramvir Singh Karwal

@ParamvirSinghKarwal hai ragione ... Probabilmente uso questo post ogni anno o due per il mio memroy, ma non commento più perché sarebbe fastidioso!
trex005

16
  1. Scarica puttygen
  2. Quindi apri puttygen
  3. fare clic su carica
  4. Imposta il tipo di file su . tutti i files
  5. Salva PrivateKey
  6. e poi puoi semplicemente salvare qualsiasi nome quel file è diventato un file ppk

5

Per la connettività SSH all'istanza AWS EC2, non è necessario convertire il file .PEM in file PPK anche su computer Windows, SSH semplice utilizzando lo strumento "git bash". Non è necessario scaricare e convertire questi software - Spero che questo ti farà risparmiare tempo per il download e la conversione delle chiavi e ti darà più tempo per le cose di EC2.


1
Oppure, in Windows 10, "Bash su Ubuntu su Windows"
andrew lorien

Hai bisogno di ppk per fare ssh usando putty
sudip

La risposta è corretta ma non affronta la domanda nel titolo
Oliver Dungey

5

Se hai una macchina Linux, installa puttygen nel tuo sistema e usa il comando seguente per convertire la chiave

pem a ppk usa il comando seguente:

puttygen keyname -o keyname.ppk

Il comando seguente viene utilizzato per convertire ppk in pem non pem in ppk

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


E puoi installare stucco sulla maggior parte delle distribuzioni Linux - c'è una bella lista qui: command-not-found.com/puttygen
Oliver Dungey

Cosa c'è di sbagliato in seguito elogia per convertire pem in ppk puttygen keyname -o keyname.ppk
Deepak Sharma

hai modificato e menzionato il comando utilizzato per convertire ppk in pem
Deepak Sharma

3
  1. Salva YourPEMFILE.pem nella tua directory .ssh
  2. Esegui puttygen dal prompt dei comandi

    un. Fare clic sul pulsante "Carica" ​​per "caricare un file di chiave privata esistente"
    b. Modificare il filtro dei file in "Tutti i file ( . )
    C. Seleziona YourPEMFILE.pem
    d. Fare clic su Apri
    e. Puttygen mostra un avviso dicendo che è stata importata con successo la chiave esterna. Fare clic su OK.
    f. Fare clic sul pulsante "Salva chiave privata"
    g. Quando ti viene chiesto se sei sicuro di voler salvare senza inserire una passphrase, rispondi "Sì".
    h. Immettere il nome del file YourPEMFILE.ppk
    i. Fai clic su "Salva"


2

Converti file .pem in .ppk per Windows 10

Devi fare quanto segue:


1. Scarica PuTTYGen con Pageant .
2. Premere il pulsante "carica" e selezionare il file ".pem" .
3. Premere il pulsante "salva chiave privata" e salvare il file ".ppk" .
4. Apri Pageant e premi il pulsante "aggiungi chiave" . Proprio tutto. Continua a eseguire Pageant in background .
5. Ora accedi tramite SSH o SFTP senza selezionare il campo della password.


inserisci qui la descrizione dell'immagine


inserisci qui la descrizione dell'immagine


inserisci qui la descrizione dell'immagine


1

PuTTYgen per Ubuntu / Linux e PEM su PPK

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

0

Ho usato una versione di prova di ZOC Terminal Emulator e ha funzionato. Accetta prontamente i file * .pem di Amazon.

Il trucco è però che devi specificare "ec2-user" invece di "root" per il nome utente - nonostante l'esempio mostrato nella console EC2, che è sbagliato! ;-)


0

Ho avuto lo stesso problema con PuttyGen che non voleva importare una chiave privata openSSH. Ho provato di tutto e quello che ho scoperto è che la vecchia versione di PuttyGen non supportava l'importazione di OpenSSH. Una volta scaricato l'ultimo Putty, puttygen gli ha permesso di importare la chiave privata openssh senza problemi. Ora ho un buco sul lato della scrivania per sbatterci contro la testa nell'ultima ora.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.