Converti la chiave .pem di Amazon in chiave .ppk di Putty Linux


49

Ho generato e scaricato una .pemchiave privata da AWS. Tuttavia, per usare Putty per connettersi alla macchina virtuale, devo avere quella chiave in .ppkformato. Il processo di conversione è dettagliato in circa 20 righe qui:

Sto usando Linux Mint (una distribuzione Ubuntu) e so che posso usare puttygen nel terminale. Tuttavia, non ho idea di come utilizzare questo strumento, né di come configurare i parametri necessari. Quando scrivo puttygen - aiuto ottengo

PuTTYgen unidentified build, Aug  7 2013 12:24:58
Usage: puttygen ( keyfile | -t type [ -b bits ] )
                [ -C comment ] [ -P ] [ -q ]
                [ -o output-keyfile ] [ -O type | -l | -L | -p ]
  -t    specify key type when generating (rsa, dsa, rsa1)
  -b    specify number of bits when generating key
  -C    change or specify key comment
  -P    change key passphrase
  -q    quiet: do not display progress bar
  -O    specify output type:
           private             output PuTTY private key format
           private-openssh     export OpenSSH private key
           private-sshcom      export ssh.com private key
           public              standard / ssh.com public key
           public-openssh      OpenSSH public key
           fingerprint         output the key fingerprint
  -o    specify output file
  -l    equivalent to `-O fingerprint'
  -L    equivalent to `-O public-openssh'
  -p    equivalent to `-O public'

Ma non ho idea di come fare ciò che il sito mi dice di fare e tutti i miei tentativi finora sono falliti.

Come posso fare ciò che il sito Web mi dice di fare, usando puttygen sul terminale?


Risposte:


70

Utilizzo della GUI

Vedi queste domande e risposte su come fare esattamente quello che vuoi, intitolato: Converti il ​​formato di file PEM in PPK .

estratto

  1. Scarica il tuo .pem da AWS
  2. Apri PuTTYgen, seleziona Tipo di chiave da generare come: SSH-2 RSA
  3. Fai clic su "Carica" ​​sul lato destro per circa 3/4 in basso
  4. Impostare il tipo di file su *.*
  5. Cerca 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" e puoi salvare la tua chiave ppk per l'uso con PuTTY

Utilizzando la riga di comando

Se d'altra parte desideri convertire un file .pemin .ppkfile tramite lo strumento da riga di comando puttygen, ho trovato questa soluzione su SO in questa domanda e risposta intitolata:

estratto

$ puttygen keyfile.pem -O private -o avdev.ppk

Per la chiave pubblica:

$ puttygen keyfile.pem -L

Riferimenti


i passaggi da 2 a 6 funzionano anche con altri tipi di file di chiavi private (ad es. file risultante da un comando ssh-keygen di Git Bash), grazie!
AtAFork,

non funziona più dalla riga di comando
Aryeh Beitz

Qualche idea su come funzionerebbe su OSX, PuTTYgen non è disponibile
Qasim,

Se si desidera aggiungere una password / passphrase alla chiave privata, è sufficiente aggiungere -P. Es puttygen k.pem -PO private -o k.ppk.
CPHPython,

15

Se stai usando GNU / Linux, non devi usare Putty. Quella parte del tutorial è rivolta agli utenti Windows.

Basta impostare le .pemautorizzazioni per i file r--facendo, chmod 400 mykey.pemquindi puoi passarlo direttamente a ssh:

ssh -i mykey.pem user@aws-host.amazon.com 

Il motivo per cui sto provando a usare lo stucco è che posso seguire le istruzioni in questo tutorial plex . Se ci sono altri modi per farlo, non esitare a spiegare.
Flame_Phoenix,

Il tuo server Plex Media si trova sulla macchina AWS e stai provando a collegarlo dalla tua stazione di lavoro Mint, sto ottenendo questo giusto? Dovresti aprire un'altra domanda che spiega questo, ma ci sono già molte domande che spiegano come eseguire il tunneling SSH.
François Feugeas,

1
Usando il comando che hai citato sono stato in grado di accedere all'istanza AWS remota. In realtà volevo trasferire i file che ho usato il comando (nel caso in cui aiuti qualcuno) sftp -oIdentityFile=mykey.pem user@<publicIP>... grazie il tuo post mi ha aiutato a risolvere il problema che avevo da più di 5 ore.
Subham Tripathi,

0

usa il comando qui sotto ha funzionato per me in Ubuntu

puttygen /home/abc/Downloads/dockerkey1.pem -o home/abc/Downloads/dockerkey1.ppk -O private

Esempio

puttygen pemKey.pem -o ppkKey.ppk -O private


Questo è già descritto nella risposta accettata. Non è necessario utilizzarlo sudoper questo, se l'utente corrente dispone dell'autorizzazione di scrittura nella directory di output.
Stephen Kitt,

Grazie per il tuo suggerimento @Stephen kitt
thrinadhn
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.