Konwertuj PEM na format pliku PPK


126

Czy istnieje sposób na konwersję plików PEM do plików PPK? (można się domyślić, że Amazon EC2 daje mi plik PEM, a do połączenia SSH potrzebuję użyć formatu PPK).


1
nigdy nie słyszałem o formacie ppk, ale wątpię, że jest coś na to w .NET.
Prezydent James K. Polk

6
PPK to format klienta Putty. Myślę, że .NET nie ma z tym nic wspólnego.
Borealid

2
Ok, nie zdawałem sobie z tego sprawy ... Więc PPK to tylko zastrzeżony / dziwny format, który istnieje tylko w Putty-land?
LoneRanger

1
Jest to również nieprzydatny jedyny format akceptowany przez FileZilla.
Ryder

I domyślny format, który AmazonWebServices wydaje swoje klucze.
Kzqai

Odpowiedzi:


230

Użyj PuTTYGen

Tworzenie i używanie kluczy SSH

Przegląd

vCloud Express ma teraz możliwość tworzenia kluczy SSH dla serwerów Linux. Ta funkcja umożliwia użytkownikowi tworzenie wielu kluczy niestandardowych poprzez wybranie opcji „Moje konto / zarządzanie kluczami”. Po utworzeniu klucza użytkownik będzie musiał wybrać żądany klucz SSH podczas procesu „Utwórz serwer” dla systemu Linux.

Twórz i używaj kluczy SSH

  1. Utwórz klucze
    • Przejdź do „Moje konto”
    • Wybierz „Zarządzanie kluczami”
    • Utwórz nowy klucz.
      • Podczas procesu tworzenia klucza zostaniesz poproszony o pobranie pliku klucza prywatnego w formacie .PEM. Nie będzie można ponownie pobrać klucza prywatnego, ponieważ nie jest on przechowywany w vCloud Express.
      • W przypadku interfejsu API używane jest pole wyboru „Domyślne”.
  2. Wdróż serwer i wybierz klucz
  3. Połączyć

    • SSH (Mac / Linux)
      • Skopiuj plik .PEM do komputera, z którego zamierzasz się połączyć.
      • Upewnij się, że uprawnienia do pliku .PEM są odpowiednie (chmod 600 file.pem)
      • Połącz się z poleceniem ssh: ssh vcloud @ ipaddress –i privkey.pem
    • Kit (Windows)
      • Pobierz Putty i Puttygen z - tutaj
      • Użyj puttygen, aby przekonwertować plik .PEM na plik .PPK.
      • Uruchom puttygen i wybierz „Load”
      • Wybierz plik .PEM.
      • Putty przekonwertuje format .PEM na format .PPK. wprowadź opis obrazu tutaj
      • Wybierz „Zapisz klucz prywatny”. Hasło nie jest wymagane, ale można go użyć, jeśli wymagane są dodatkowe zabezpieczenia.
    • Połącz się z Putty.

      • Uruchom Putty i wprowadź adres IP hosta. W przypadku łączenia się z adresem prywatnym 10.X należy najpierw nawiązać połączenie SSL VPN.
      • Przejdź do Connection / SSH / Auth
      • Kliknij „Przeglądaj” i wybierz plik .PPK, który wyeksportowałeś z puttygen. wprowadź opis obrazu tutaj

      • Kliknij „Otwórz”. Po nawiązaniu połączenia wprowadź nazwę użytkownika (domyślnie jest to vcloud).

Instrukcje skopiowane stąd


Dzięki, zrobiłem to i zadziałało! LoneRanger, myślę, że możesz oznaczyć to jako poprawną odpowiedź :-)
Kevin P.

65

Jestem raczej zszokowany, że nie otrzymałem odpowiedzi, ponieważ rozwiązanie jest bardzo proste.

Jak wspomniano w poprzednich postach, nie chcesz konwertować go za pomocą C #, ale tylko raz. Z PuTTYGen można to łatwo zrobić.

  1. Pobierz swój .pem z AWS
  2. Otwórz PuTTYgen
  3. Kliknij „Załaduj” po prawej stronie około 3/4 w dół
  4. Ustaw typ pliku na *. *
  5. Wyszukaj i otwórz plik .pem
  6. PuTTY automatycznie wykryje wszystko, czego potrzebuje, wystarczy kliknąć „Zapisz klucz prywatny” i zapisać klucz ppk do użytku z PuTTY

Cieszyć się!


2
Dla kogo to rozwiązanie nie działa, zaktualizuj puttygen ze strony chiark.greenend.org.uk/~sgtatham/putty/download.html . Mój był 2005 i nie mógł otworzyć PEM
mistika

31
To naprawdę zabawne, gdy szukasz sposobu na zrobienie czegoś, czego nie robiłeś od dłuższego czasu, i znajdujesz odpowiedź przepełnienia stosu, którą podałeś 2,5 roku wcześniej.
trex005

2
@ trex005 cóż, przepełnienie stosu wydaje się być teraz rozszerzeniem naszej pamięci, nie musimy pamiętać wszystkiego w naszej głowie.
Paramvir Singh Karwal

@ParamvirSinghKarwal, masz bardzo rację ... Prawdopodobnie używam tego posta co rok lub dwa do własnej pamięci, ale nie komentuję już dłużej, ponieważ byłoby to po prostu irytujące!
trex005

16
  1. Pobierz puttygen
  2. Następnie otwórz puttygen
  3. kliknij załaduj
  4. Ustaw typ pliku na . wszystkie pliki
  5. Zapisz PrivateKey
  6. a następnie możesz po prostu zapisać dowolną nazwę, aby plik stał się plikiem ppk

5

Aby połączyć się przez SSH z instancją AWS EC2, nie trzeba konwertować pliku .PEM do pliku PPK nawet na komputerze z systemem Windows, proste SSH za pomocą narzędzia „git bash”. Nie ma potrzeby pobierania i konwertowania tego oprogramowania - mam nadzieję, że pozwoli to zaoszczędzić czas na pobieranie i konwertowanie kluczy oraz zapewni więcej czasu na rzeczy związane z EC2.


1
Lub w systemie Windows 10 „Bash on ubuntu w systemie Windows”
andrew lorien

Potrzebujesz ppk, aby wykonać ssh za pomocą putty
sudip

Odpowiedź jest prawidłowa, ale nie odpowiada na pytanie w tytule
Oliver Dungey

5

Jeśli masz komputer z systemem Linux, po prostu zainstaluj puttygen w swoim systemie i użyj poniższego polecenia, aby przekonwertować klucz

pem do ppk użyj poniższego polecenia:

puttygen keyname -o keyname.ppk

Poniższe polecenie służy do konwersji ppk na pem, a nie pem na ppk

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


I możesz zainstalować kit na większości dystrybucji Linuksa - tutaj jest fajna lista: command-not-found.com/puttygen
Oliver Dungey

Co jest nie tak w poniższym, polecam przekonwertować pem na ppk puttygen nazwa klucza -o nazwa klucza.ppk
Deepak Sharma

edytowałeś i wspomniałeś o poleceniu używanym do konwersji ppk na pem
Deepak Sharma

3
  1. Zapisz plik YourPEMFILE.pem w katalogu .ssh
  2. Uruchom puttygen z wiersza polecenia

    za. Kliknij przycisk „Wczytaj”, aby „Wczytać istniejący plik klucza prywatnego”
    . B. Zmień filtr plików na „Wszystkie pliki ( . )
    . Wybierz plik YourPEMFILE.pem
    d. Kliknij Otwórz
    e. Puttygen wyświetla komunikat informujący o pomyślnym zaimportowaniu klucza obcego. Kliknij OK.
    fa. Kliknij przycisk „Zapisz klucz prywatny”
    g. Na pytanie, czy na pewno chcesz zapisać dane bez wpisanego hasła, odpowiedz „Tak”.
    godz. Wprowadź nazwę pliku YourPEMFILE.ppk
    i. Kliknij „Zapisz”


2

Konwertuj plik .pem na .ppk dla systemu Windows 10

Musisz wykonać następujące czynności:


1. Pobierz PuTTYGen z Pageant .
2. Naciśnij przycisk „load” przycisk i wybrać „.pem” plik.
3. Naciśnij przycisk „zapisz klucz prywatny” i zapisz plik plik „.ppk” .
4. Otwórz Pageant i naciśnij przycisk „dodaj klucz” . Po prostu wszystko. Uruchamiaj Pageant w tle .
5. Teraz zaloguj się przez SSH lub SFTP bez wybierania pola hasła.


wprowadź opis obrazu tutaj


wprowadź opis obrazu tutaj


wprowadź opis obrazu tutaj


1

PuTTYgen dla Ubuntu / Linux i PEM na PPK

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

0

Użyłem wersji próbnej ZOC Terminal Emulator i zadziałało. Z łatwością akceptuje pliki * .pem Amazona.

Sztuczka polega jednak na tym, że musisz podać "ec2-user" zamiast "root" jako nazwę użytkownika - pomimo przykładu pokazanego w konsoli EC2, co jest błędne! ;-)


0

Miałem ten sam problem z PuttyGen, który nie chciał importować klucza prywatnego openSSH. Próbowałem wszystkiego i odkryłem, że stara wersja PuttyGen nie obsługuje importowania OpenSSH. Po pobraniu najnowszego Putty puttygen pozwolił mu zaimportować klucz prywatny openssh. Mam teraz dziurę w boku mojego biurka, przez którą przez ostatnią godzinę waliłem w nie głową.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.