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).

LoneRanger
źródło
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

Ryan Kinal
źródło
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ę!

trex005
źródło
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
user7757658
źródło
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.

Enigma
źródło
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

Deepak Sharma
źródło
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”

kartick shaw
źródło
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

M. Hamza Rajput
źródło
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
Administrator
źródło
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! ;-)

Patalenski
źródło
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ą.

peterlandis
źródło