2012-04-18 11 views
20

Czy mogę użyć tego samego pliku pary kluczy we wszystkich regionach? Chcę, aby dostęp do ssh był tak prosty jak to tylko możliwe.pojedynczy klucz dla wszystkich regionów

Ustawiłem jeden plik dla każdego regionu. Próbowałem przesłać ten sam plik w innym regionie, ale nie działał on zgodnie z oczekiwaniami.

Odpowiedz

17

Nie jest to możliwe, przy użyciu keypairs generowane przez Amazon EC2, ale w międzyczasie została włączona poprzez zastosowanie własną parę kluczy (y), patrz post wprowadzający New Amazon EC2 Feature: Bring Your Own Keypair:

Można teraz importować własny klucz RSA (lub publiczna połowa, aby być dokładnie ) do użytku z instancjami Amazon EC2.

Dlaczego chcesz to zrobić? Oto kilka powodów:

  1. Trust - Poprzez import własną parę kluczy można zapewnić, że masz pełną kontrolę nad swoimi kluczami.
  2. Bezpieczeństwo - Możesz mieć pewność, że Twój klucz prywatny nigdy nie był przesyłany przez kabel.
  3. Zarządzanie wieloma regionami - Możesz użyć tego samego klucza publicznego w wielu regionach AWS .[podkr]

Takie podejście jest bardzo korzystne/wygodne rzeczywiście - używam go już od dłuższego czasu, i to rzeczywiście złagodził pracy z EC2 znacznie.

Eric Hammond zawiera więcej szczegółów i krótki samouczek w swoim artykule Uploading Personal ssh Keys to Amazon EC2:

Amazon niedawno uruchomił możliwość przesyłania własnego ssh klucza publicznego do EC2 tak, że może on być przekazany do nowych przypadków, gdy są uruchamiane . Wcześniej zawsze trzeba było używać klucza ssh, który był wygenerowany przez Amazon.

W związku z tym, polecam śledzić jego artykuł dotyczący (kilku i prostych) kroków wymaganych do osiągnięcia tego celu.

+0

Używam wspólnej pary kluczy. Stworzyłem klucz bez żadnego hasła i okazało się, że działa tylko z komputera Ubuntu, na którym został utworzony. Wygląda na to, że nie działa z żadnego innego komputera, co nie ma miejsca w przypadku innych klawiatur utworzonych za pomocą interfejsu internetowego. Aby połączyć się z instancjami AWS, muszę korzystać z różnych komputerów. – shantanuo

+0

@shantanuo: To dziwne, a nie sposób, w jaki klucze SSH powinny działać normalnie (odpowiednio nie mam tego problemu, tzn. Moje klucze są przenośne zgodnie z oczekiwaniami). Oczywiście musisz skopiować swoje prywatne klucze do każdego innego komputera, ale to nie inaczej niż z kluczami generowanymi przez AWS. Jednym z elementów, którymi należy się zająć, może być kluczowy format, na przykład trzeba przekonwertować klucze wygenerowane w systemie Ubuntu na format używany przez Putty, na wypadek gdybyś używał ich w systemie Windows (patrz np. [Używanie klucza prywatnego OpenSSH w Putty] (http://meinit.nl/using-your-openssh-private-key-in-putty), aby uzyskać instrukcje). –

+0

Przypuszczam, że dzieje się tak po rozwinięciu partycji root, jak wyjaśniono w tym poście na blogu: http://oksoft.blogspot.in/2012/04/expand-root-ebs-volume.html – shantanuo

8

Jeśli można importować własne RSA klucz publiczny, a następnie można udostępnić wygenerowanego klucza Amazon między regiony:

  1. Używając klucza, który chcesz udostępnić, należy zalogować się do instancji w regionie, gdzie było wygenerowany.
  2. Otwartych ~/.ssh/authorized_keys
  3. Znajdź wiersz z kluczem, który chcesz udostępnić (koniec linii powinien pokazać nazwę parę kluczy podane przy generowane go)
  4. skopiować wszystkie korekty do pierwszego znaku nazwy pary. Powinno mieć 382 znaki.
  5. Zapisz skopiowane dane w pliku lokalnym (np. Na komputerze, na którym uruchomiono sesję SSH FROM).
  6. Zaloguj się do konsoli EC2 i przejdź do regionu, któremu chcesz udostępnić klucz.
  7. Wybierz zarządzanie "parami kluczy"
  8. Kliknij "Importuj parę kluczy" i skieruj ją do pliku utworzonego w kroku 5. Prawdopodobnie chcesz nadać tej parze nazwę identyczną, jaką nadałeś w regionie, w którym się znajdujesz importowanie formularza.
  9. Uruchamia wystąpienia za pomocą tego klucza. Powinieneś być w stanie zalogować się do instancji w nowym regionie przy użyciu tego samego klucza prywatnego, co w regionie, w którym został wygenerowany.
+0

Właśnie potwierdziłem, że to zadziałało. (Miałem tylko 380 bajtów, nie 382 - być może miałeś CRLF na końcu twojego i jest to opcjonalne?) Widzę inny odcisk palca dla kluczy w dwóch regionach, ale SSH do nowej instancji działało, więc myślę, że to nie ma znaczenia! –

+0

potwierdził, że to działa. – 3z33etm

3

AWS wygenerowany klucz może zostać przeniesiony do innego regionu:

  • Zaloguj się do instancji, który został utworzony za pomocą klucza, który chcesz przenieść.
  • Install EC2 API narzędzia jeśli nie jest już obecny (sudo apt-get install EC2 API narzędzia)

użyć tego polecenia

ec2-import-keypair keypair-name --public-key-file ~/.ssh/authorized_keys --region aws-region 

Z powyższych krokach Przeniosłam AWS stworzony klucz z Singapuru do regionu Oregon i ten sam klucz działał mi doskonale.

Proszę odwiedzić ten link, a także:

https://forums.aws.amazon.com/thread.jspa?threadID=52654

1

Można również użyć aws cli przenieść parę kluczy do innego regionu.

aws ec2 import-key-pair --key-name my-key --public-key-material file://~/.ssh/id_rsa.pub --region my-region 

Zobacz this issue na GitHub po więcej.

2

Jeśli chcesz utworzyć parę kluczy ssh w konsoli AWS i przesłać tę parę kluczy do wszystkich pozostałych regionów.

  1. Utwórz nową parę kluczy ssh w konsoli lub użyj tej, którą już posiadasz.

  2. Generowanie ssh klucz publiczny z ssh klucz prywatny (PEM> pubie)

$ ssh-keygen -y -f ~/.ssh/MySSHKeyPair.pem >> ~/.ssh/MySSHKeyPair.pub

  1. Prześlij klucz publiczny ssh do wszystkich regionów. (usuń z listy region, który już ma klucz ssh)

$ dla nas - na wschód - 1 nas-wschód-2 nas-zachód-1 nas-zachód-2 ap-południe-1 ap -nort wschodni-2 ap-południowy-wschód-1 ap-południowy-wschód-2 ap-północny-wschód-1 eu-centralny-1 eu-zachód-1 eu-zachód-2; do aws ec2 import-key-pair --key-name MySSHKeyPair - plik klucza publicznego: //~/.ssh/MySSHKeyPair.pub --region $ region; Wykonano:

  1. Wyświetl listę wszystkich par kluczy ssh we wszystkich regionach.

$ dla a w nas-wschód-1 nas-wschód-2 nas-zachód-1 nas-zachód-2 ap-południe-1 ap-północny-wschód-2 ap-południowy-wschód-1 ap-południowy-wschód-2 ap-northeast-1 eu-central-1 eu-west-1 eu-west-2; do aws ec2 opis-para-kluczy - region $ a; wykonane

Powiązane problemy