Converta o formato de arquivo PEM para PPK

125

Existe uma maneira de converter arquivos PEM em arquivos PPK? (você pode imaginar que o Amazon EC2 me fornece um arquivo PEM e preciso usar o formato PPK para conectividade SSH).

LoneRanger
fonte
1
nunca ouvi falar do formato ppk, mas duvido que exista algo no .NET para isso.
Presidente James K. Polk
6
PPK é o formato do cliente Putty. Eu não acho que o .NET tenha algo a ver com isso.
Borealid 06/07/10
2
Ok, eu não percebi isso ... Então o PPK é apenas um formato proprietário / estranho que existe apenas em Putty-land?
LoneRanger 06/07
1
Também é inútil o único formato que o FileZilla aceita.
Ryder
E o formato padrão que AmazonWebServices coloca suas chaves.
Kzqai 5/10

Respostas:

229

Use PuTTYGen

Criando e usando chaves SSH

Visão geral

O vCloud Express agora pode criar servidores SSH Keys para Linux. Esta função permitirá ao usuário criar várias chaves personalizadas selecionando a opção "Minha conta / Gerenciamento de chaves". Após a criação da chave, o usuário deverá selecionar a chave SSH desejada durante o processo "Criar servidor" para Linux.

Criar e usar chaves SSH

  1. Criar chaves
    • Navegue para "Minha conta"
    • Selecione "Gerenciamento de chaves"
    • Crie nova chave.
      • Durante o processo de criação da chave, você será solicitado a baixar seu arquivo de chave privada no formato .PEM. Você não poderá baixar a chave privada novamente, pois ela não está armazenada no vCloud Express.
      • A caixa de seleção "Padrão" é usada para a API.
  2. Implantar servidor e selecionar chave
  3. Conectar

    • SSH (Mac / Linux)
      • Copie o arquivo .PEM na máquina à qual você se conectará.
      • Verifique se as permissões no arquivo .PEM são apropriadas (chmod 600 file.pem)
      • Conecte-se com o comando ssh: ssh vcloud @ ipaddress –i privkey.pem
    • Massa (Windows)
      • Faça o download do Putty e do puttygen - aqui
      • Use puttygen para converter arquivos .PEM em arquivos .PPK.
      • Inicie o puttygen e selecione "Load"
      • Selecione o seu arquivo .PEM.
      • O Putty converterá o formato .PEM para o formato .PPK. insira a descrição da imagem aqui
      • Selecione “Salvar chave privada”. Uma senha não é necessária, mas pode ser usada se segurança adicional for necessária.
    • Conecte-se com o Putty.

      • Inicie o Putty e digite o endereço IP do host. Se estiver se conectando ao endereço privado 10.X, primeiro você deve estabelecer uma conexão VPN SSL.
      • Navegue para Connection / SSH / Auth
      • Clique em "Procurar" e selecione o arquivo .PPK que você exportou do puttygen. insira a descrição da imagem aqui

      • Clique em "Abrir". Quando a conexão chegar, digite o nome de usuário (o padrão é vcloud).

Instruções copiadas daqui

Ryan Kinal
fonte
Obrigado, eu fiz isso e funcionou! LoneRanger, eu acho que você pode marcar este como a resposta correta :-)
Kevin P.
65

Estou bastante chocado que isso não tenha sido respondido, pois a solução é muito simples.

Como mencionado nas postagens anteriores, você não gostaria de convertê-lo usando C #, mas apenas uma vez. Isso é fácil de fazer com o PuTTYGen.

  1. Faça o download do seu .pem da AWS
  2. Abrir PuTTYgen
  3. Clique em "Carregar" no lado direito, cerca de 3/4 para baixo
  4. Defina o tipo de arquivo como *. *
  5. Procure e abra seu arquivo .pem
  6. O PuTTY detectará automaticamente tudo o que precisa e basta clicar em "Salvar chave privada" e salvar sua chave ppk para uso com o PuTTY

Aproveitar!

trex005
fonte
2
Para quem essa solução não funciona, atualize seu puttygen em chiark.greenend.org.uk/~sgtatham/putty/download.html . O meu foi em 2005 e não foi possível abrir PEMs
mistika
31
É muito engraçado quando você está procurando fazer algo que não faz há muito tempo e encontra a resposta do stackoverflow que você deu 2,5 anos antes.
precisa saber é o seguinte
2
@ trex005 bem, o stackoverflow agora parece ser uma extensão da nossa memória, não precisamos nos lembrar de tudo em nossa cabeça.
Paramvir Singh Karwal
@ParamvirSinghKarwal você está muito certo ... Eu provavelmente uso este post todos os anos ou dois para minha própria memória, mas não comento mais, pois isso seria irritante!
trex005 4/06
16
  1. Baixar puttygen
  2. Em seguida, abra o puttygen
  3. clique em carregar
  4. Defina o tipo de arquivo para . todos os arquivos
  5. Salvar PrivateKey
  6. e então você pode salvar qualquer nome desse arquivo que se tornou um arquivo ppk
user7757658
fonte
5

Para conectividade SSH à instância do AWS EC2, você não precisa converter o arquivo .PEM em arquivo PPK, mesmo na máquina Windows, SSH simples usando a ferramenta 'git bash'. Não há necessidade de baixar e converter esses softwares - Espero que isso economize seu tempo de download e conversão de chaves e obtenha mais tempo com as coisas do EC2.

Enigma
fonte
1
Ou, no Windows 10, "Bash no ubuntu no windows"
andrew lorien
Você precisa do ppk para fazer o ssh usando o putty
sudip
A resposta está correta, mas não aborda a questão no título
Oliver Dungey
5

Se você possui uma máquina Linux, basta instalar o puttygen em seu sistema e usar o comando abaixo para converter a chave

pem para ppk use o comando abaixo:

puttygen keyname -o keyname.ppk

O comando abaixo é usado para converter ppk para pem não pem para ppk

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

Deepak Sharma
fonte
E você pode instalar o putty na maioria das distribuições Linux - há uma boa lista aqui: command-not-found.com/puttygen
Oliver Dungey
O que há de errado em recomendar abaixo para converter pem para ppk puttygen keyname -o keyname.ppk
Deepak Sharma
você editou e mencionou o comando usado para converter ppk em pem
Deepak Sharma
3
  1. Salve YourPEMFILE.pem no diretório .ssh
  2. Execute puttygen no prompt de comando

    uma. Clique no botão "Carregar" para "Carregar um arquivo de chave privada existente"
    b. Mude o filtro de arquivo para “Todos os arquivos ( . )
    C. Selecione o YourPEMFILE.pem
    d. Clique em Abrir
    e. Puttygen mostra um aviso dizendo que ele importou com êxito a chave estrangeira. Clique OK.
    f. Clique no botão "Salvar chave privada"
    g. Quando perguntado se você tem certeza de que deseja salvar sem uma senha inserida, responda "Sim".
    h. Digite o nome do arquivo YourPEMFILE.ppk
    i. Clique em "Salvar"

kartick shaw
fonte
2

Converter arquivo .pem em .ppk para Windows 10

Você precisa fazer o seguinte:


1. Faça o download do PuTTYGen com o concurso .
2. Pressione o botão "carregar" e selecione o seu arquivo ".pem" .
3. Pressione o botão "Salvar chave privada" e salve o arquivo ".ppk" .
4. Abra o Pageant e pressione o botão "adicionar chave" . Apenas tudo. Continue executando o Pageant em segundo plano .
5. Agora faça o login através do SSH ou SFTP sem selecionar o campo de senha.


insira a descrição da imagem aqui


insira a descrição da imagem aqui


insira a descrição da imagem aqui

M. Hamza Rajput
fonte
1

PuTTYgen para Ubuntu / Linux e PEM para PPK

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

Eu usei uma versão de avaliação do ZOC Terminal Emulator e funcionou. Ele aceita prontamente os arquivos * .pem da Amazon.

O truque é que você precisa especificar "ec2-user" em vez de "root" para o nome de usuário - apesar do exemplo mostrado no console do EC2, o que está errado! ;-)

Patalenski
fonte
0

Eu tive o mesmo problema com o PuttyGen que não queria importar uma chave privada openSSH. Tentei de tudo e descobri que a versão antiga do PuttyGen não suportava a importação do OpenSSH. Depois de baixar o Putty mais recente, o puttygen permitiu que ele importasse a chave privada openssh muito bem. Agora eu tenho um buraco no lado da minha mesa por bater minha cabeça contra ela durante a última hora.

peterlandis
fonte