내용으로 건너뛰기

모든 AWS 지역에 단일 SSH 키 페어를 사용하려면 어떻게 해야 하나요?

2분 분량
0

동일한 SSH 키 페어를 사용하여 모든 AWS 지역의 Amazon Elastic Compute Cloud(Amazon EC2) 인스턴스에 액세스하려고 합니다.

해결 방법

참고: AWS Command Line Interface(AWS CLI) 명령 실행 시 오류가 발생하는 경우, AWS CLI 오류 문제 해결을 참고하세요. 또한 최신 AWS CLI 버전을 사용하고 있는지 확인하세요.

EC2 SSH 키 페어가 아직 없는 경우 인스턴스를 생성하세요.

SSH 키 페어를 사용하여 모든 지역의 인스턴스에 액세스하려면 운영 체제에서 다음 절차를 완료하세요.

Linux

다음 단계를 완료합니다.

  1. 프라이빗 SSH 키(.pem) 파일에서 퍼블릭 SSH 키(.pub) 파일을 생성하려면 다음 명령을 실행합니다.

    $ ssh-keygen -y -f MyKeyPair.pem > $HOME/.ssh/id_rsa_MyKeyPair.pub

    참고:****MyKeyPair.pem을 프라이빗 .pem 파일 이름으로 바꾸세요. bash 쉘에서 작업하고 유효한 액세스 권한을 가진 사용자로 AWS CLI를 구성해야 합니다.

  2. 리전을 설정하려면 describe-region 명령을 실행합니다.

    $ AWS_REGIONS="$(aws ec2 describe-regions --query 'Regions[].RegionName' --output text)"

    **참고:**ZSH 쉘을 사용하는 경우 다음 명령을 실행하여 for loop 명령이 각 리전 이름을 올바르게 반복하도록 단어 분할을 활성화합니다.

    $ setopt shwordsplit
  3. 퍼블릭 SSH 키 페어를 리전으로 가져오려면 import-key-pair 명령을 실행합니다.

    $ for each_region in ${AWS_REGIONS} ; do aws ec2 import-key-pair --key-name MyKeyPair --public-key-material fileb://$HOME/.ssh/id_rsa_MyKeyPair.pub --region $each_region ; done

Windows

다음 단계를 완료합니다.

  1. 프라이빗 SSH 키(.pem) 파일에서 퍼블릭 SSH 키(.pub) 파일을 생성하려면 다음과 같이 합니다.
    PuTTYgen을 엽니다.
    Load를 선택하여 프라이빗 키 파일을 로드합니다.
    퍼블릭 키 저장을 선택합니다.

  2. 퍼블릭 SSH 키 페어를 리전으로 가져오려면 다음 명령을 실행합니다.

    $PubFile = Get-Content .\MyKeyPair.pub -raw$Key = [System.Convert]::ToBase64String([System.Text.Encoding]::ASCII.GetBytes($PubFile))foreach ($Region in (Get-AWSRegion).Region) {Import-EC2KeyPair -KeyName MyKeyPair -PublicKeyMaterial $Key -Region $Region}

    참고:****MyKeyPair.pub을 퍼블릭 SSH 파일 이름으로 바꾸세요.

관련 정보

AWS 서비스 엔드포인트

Import-EC2KeyPair Cmdlet

AWS 공식업데이트됨 2년 전