2012-09-13 17 views
5

Mam swój klucz dostępu, tajny klucz i pobrany plik pem certyfikatu.AWS EC2: generowanie pliku klucza prywatnego z certyfikatu - ***. Pem dla dostępu do terminala SSH

Rozumiem, że SSH wymaga pliku klucza prywatnego w celu ustanowienia końcowego połączenia SSH z moją instancją.

co znalazłem przez Google jest to, że trzeba użyć PuTTYgen przekonwertować plik PEM cert do pliku klucza prywatnego:

http://www.techrepublic.com/blog/datacenter/connect-to-amazon-ec2-with-a-private-key-using-putty-and-pageant/5085

jednak wszystkie instrukcje znalazłem są oparte na GUI puttygetn i ja tylko mam wersję CL, ponieważ używam Linuksa Fedory 16 na moim laptopie. zrobiłem mum PuTTy, który przyszedł z GUI, ale puttygen ma tylko wersję CL. co próbowałem zrobić w PuTTYgen jest następujący:

>puttygen cert-***.pem -o default.pem 

puttygen: error loading `cert-***.pem': file does not begin with OpenSSH key header 

może wskazywać ktoś co robię źle i jak mogę użyć CL PuTTYgen przekonwertować plik cert do pliku klucza prywatnego, który jest użyteczny przez SSH do podłączenia do moich instancji?

góry dzięki

Odpowiedz

4

ssh klucz prywatny jest całkowicie różny od certyfikatu X.509 i klucza prywatnego. Jest to nieco mylące, ponieważ ludzie często zapisują klucz prywatny ssh generowany przez EC2 w pliku "pem", podobnie jak użycie certyfikatu i pk.

Nie możesz przekonwertować certyfikatu X.509 lub klucza prywatnego dla ssh, jak próbujesz to zrobić.

Możesz wygenerować prywatny klucz ssh (czasami nazywany "parą kluczy") przez Amazon EC2 na AWS console lub przez narzędzia wiersza poleceń AWS (ec2-add-keypair). Jeśli używasz Putty, możesz nadal konwertować do formatu PPK, tak jak opisuje to artykuł, do którego się odwołujesz, ale konwertujesz plik klucza psh programu ssh, a nie klucz prywatny X.509 lub certyfikat.

Jeśli wiesz, jak wygenerować własny klucz ssh lokalnie (lub już to zrobiłeś), to zalecam zrobienie tego i uploading the ssh public key to EC2.

Po uruchomieniu instancji EC2 należy podać nazwę klucza SHH, aby EC2 udostępnił klucz publiczny ssh instancji, umożliwiając bezpieczne połączenie z nowym serwerem.

+0

dzięki. zrobiłem to i przesłałem plik pem.pub do konsoli AWS. jednak gdy próbuję połączyć się z plikiem pem, prosi mnie o podanie hasła root. może to być problem z konkretnym AMI, tj. że został skonfigurowany tak, że wymaga hasła root: > ssh -i aws_foampile_default.pem [email protected]***.compute-1.amazonaws.com > root @ ec2 - ***. compute-1.amazonaws.com hasło: – amphibient

+1

Czy jesteś pewien, że AMI używa "root" jako użytkownik logowania? Może to być "użytkownik ec2" lub "ubuntu" w zależności od AMI. –

+0

Tak, użytkownik ec2-pracował. dzięki – amphibient

9

Jeśli używasz Linuksa z linii poleceń, dlaczego chcesz utworzyć ppk z puttygen? Zasadniczo klucz uzyskany z AWS IS w formacie pem nadaje się do użycia w linii poleceń ssh.

Więc jeśli zapisany plik .pem z Amazon jako /path/to/aws.pem, wszystko co musisz zrobić, to

ssh -i /path/to/aws.pem [email protected] 
Powiązane problemy