60

So there are plenty of tutorials on how to convert a PEM to a PPK using puttyGen. However my issue is that my windows machine had the only PEM copy and I converted it into a PPK and deleted it. Now I need to figure out how to convert a PPK into a PEM so that my mac can ssh into the server. I still have access to the server so I could also just make a new key if I had to, anyone know how to convert PPK to PEM?

Qumber
  • 13,130
  • 4
  • 18
  • 33
CMOS
  • 2,727
  • 8
  • 47
  • 83

4 Answers4

117
  1. Install PuttyTools

    apt-get install putty-tools
    
  2. Generate a pem file form the ppk

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

The file server.pem file will be saved on same location

scopchanov
  • 7,966
  • 10
  • 40
  • 68
Emizen Tech
  • 3,529
  • 1
  • 17
  • 33
12

If you're on a Mac and you've previously installed Homebrew, from Terminal:

$ brew install putty
$ puttygen server.ppk -O private-openssh -o server.pem

The first command was suggested in this comment and the second from Emizen Tech's answer.

Kenny Evitt
  • 9,291
  • 5
  • 65
  • 93
2

Try this to install putty-tools

sudo apt install putty-tools
puttygen key.ppk -O private-openssh -o key.pem
ssh -i ~/key.pem {user}@{ip}
osanger
  • 2,276
  • 3
  • 28
  • 35
2

First, install PuTTY for Mac using

brew install putty

Then, use the following command to convert the .ppk format private key to a standard PEM format private key:

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

Make sure permissions on the private key file are set properly. It should only be readable by the user that owns it.

chmod go-rw privatekey.pem

You can now use the key for logins from scripts and command line with:

ssh -i privatekey.pem user@hostname
Salman Iftikhar
  • 311
  • 2
  • 9
  • On the final `ssh` I get Enter passphrase for key - I enter the login password and I get Invalid key length. – dashman Nov 20 '18 at 14:35