Complete a 3 Question Survey and Earn a re:Post Badge
Help improve AWS Support Official channel in re:Post and share your experience - complete a quick three-question survey to earn a re:Post badge!
암호화된 EC2 인스턴스를 시작하기 위해 AWS 계정 간에 암호화된 AMI를 공유하려면 어떻게 해야 합니까?
암호화된 Amazon Elastic Compute Cloud(Amazon EC2) 인스턴스를 시작하기 위해 AWS 계정 전체에서 암호화된 Amazon Machine Image(AMI)를 공유하려고 합니다.
해결 방법
다음과 같은 사전 요구 사항 및 단계에 따라 암호화된 AMI를 공유하고 암호화된 인스턴스를 시작하십시오.
참고: AWS Command Line Interface(AWS CLI) 명령 실행 시 오류가 발생하는 경우 AWS CLI 오류 문제 해결을 참조하십시오. 또한 최신 AWS CLI 버전을 사용하고 있는지 확인하십시오.
사전 요구 사항
AWS 계정
AMI를 공유하려면 다음 두 가지 유형의 AWS 계정이 필요합니다.
- 소스 계정: 사용자 지정 AMI를 구축한 후 관련 Amazon Elastic Block Store(Amazon EBS) 스냅샷을 암호화하는 데 사용되는 AWS 계정입니다.
- 대상 계정: 공유된 사용자 지정 AMI를 사용하여 암호화된 EC2 인스턴스를 시작하는 데 사용되는 AWS 계정입니다.
이 문서의 예에서는 소스 계정에 계정 ID 111111111111을 사용하고 대상 계정에 계정 ID 999999999999를 사용합니다.
고객 관리형 AWS KMS 키
고객 관리형 키는 사용자가 생성한 AWS Key Management Service(AWS KMS) 키입니다. 동일한 AWS 리전의 소스 계정에서 AWS KMS 키를 생성하십시오.
이 문서의 예에서는 us-east-1 리전의 소스 계정 ID 111111111111에 별칭이 cmkSource인 AWS KMS 키를 사용합니다. 별칭 cmkSource는 AMI ID ami-1234578을 암호화한 다음, 이를 대상 계정 ID 999999999999와 공유합니다.
참고: 제한 사항과 모범 사례도 검토해야 합니다.
소스 계정에 대한 IAM 사용자 또는 역할 정책 생성
다음 단계에 따라 AWS Identity and Access Management(IAM)를 사용하여 소스 계정에 대한 사용자 또는 역할 정책을 생성합니다. 그런 다음, 대상 계정 ID를 AWS KMS 키 정책에 추가합니다.
-
다음과 같이 소스 계정에 대한 IAM 사용자 또는 역할 정책을 생성합니다.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ec2:ModifyImageAttribute" ], "Resource": [ "arn:aws:ec2:us-east-1::image/12345678" ] } ] }
-
탐색 창에서 **Customer managed keys(고객 관리형 키)**를 선택한 다음, AWS KMS 키를 선택합니다. 예: cmkSource
-
**Other AWS accounts(다른 AWS 계정)**에서 **Add other AWS accounts(다른 AWS 계정 추가)**를 선택한 다음, **Add another AWS account(다른 AWS 계정 추가)**를 선택합니다.
-
arn:aws:iam:: 필드에 대상 계정의 ID를 입력합니다. 예: 999999999999
-
**Save changes(변경 사항 저장)**를 선택합니다.
대상 계정에 대한 IAM 사용자 또는 역할 정책 설정 생성
다음과 같이 대상 계정에 대한 IAM 사용자 또는 역할 정책을 생성합니다.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "kms:DescribeKey", "kms:ReEncrypt*", "kms:Decrypt", "kms:GenerateDataKeyWithoutPlainText" ], "Resource": [ "arn:aws:kms:us-east-1:111111111111:key/key-id of cmkSource" ] }, { "Effect": "Allow", "Action": "kms:CreateGrant", "Resource": [ "arn:aws:kms:us-east-1:111111111111:key/key-id of cmkSource" ], "Condition": { "Bool": { "kms:GrantIsForAWSResource": true } } } ] }
이 정책을 사용하면 소스 계정의 AWS KMS 키를 사용하여 대상 계정에서 시작된 새 인스턴스를 암호화할 수 있습니다.
대상 계정과 AMI 공유
AMI를 공유하려면 다음 단계를 따르십시오.
참고: 다른 AWS 리전의 AMI는 공유할 수 없습니다. AMI를 복사한 다음, 공유하거나 새 리전에서 시작할 수 있습니다. 자세한 내용은 한 AWS 리전에 AMI를 생성한 다음, 다른 AWS 리전에 복사하려면 어떻게 해야 하나요?를 참조하십시오.
암호화된 공유 AMI에서 인스턴스 시작
다음 단계에 따라 암호화된 공유 AMI에서 인스턴스를 시작하십시오.
- EC2 콘솔을 엽니다.
- 탐색 창에서 **EC2 Dashboard(EC2 대시보드)**를 선택한 다음, **Launch instance(인스턴스 시작)**를 선택합니다.
- **Names and tags(이름 및 태그)**에서 **Name(이름)**에 인스턴스의 이름을 입력합니다.
- **Application and OS Images (Amazon Machine Image) (애플리케이션 및 OS 이미지(Amazon Machine Image))**에서 **Browse more AMIs(더 많은 AMI 찾아보기)**를 선택하여 암호화된 공유 AMI를 찾습니다. **My AMIs(내 AMI)**를 선택한 다음, **Shared with me([나와 공유됨)**를 선택합니다.
- **Instance type(인스턴스 유형)**에서 인스턴스 유형을 선택합니다.
- Key pair (login) (키 페어(로그인)) 아래의 **Key pair name(키 페어 이름)**에서 키 페어를 선택합니다. 또는 새로운 키 페어를 생성하십시오.
- (선택 사항) **Network settings(네트워크 설정)**에서 **Edit(편집)**를 선택한 다음, VPC 및 **Subnet(서브넷)**을 선택합니다.
- **Configure storage(스토리지 구성)**에서 **Advanced(고급)**을 선택합니다.
- **EBS Volumes(EBS 볼륨)**에서 **Volume(볼륨)**을 확장합니다.
- **Encrypted(암호화됨)**에서 **Encrypted(암호화)**를 선택합니다.
- **KMS key(KMS 키)**에서 **Specify a custom value(사용자 지정 값 지정)**를 선택하고 전체 ARN을 입력합니다. 예: 'arn:aws:kms:us-east-1:111111111111:key/key-id of cmkSource'
참고: AWS KMS 키를 선택하지 않으면 대상 계정의 EBS 암호화를 위한 기본 KMS 키가 사용됩니다. - **Summary(요약)**에서 **Launch instance(인스턴스 시작)**를 선택합니다.
자세한 내용은 새 인스턴스 시작 마법사를 사용하여 인스턴스 시작을 참조하십시오.
참고: 암호화된 공유 AMI에서 인스턴스를 시작하는 단계는 사용자 지정 AMI를 사용하는 인스턴스에서와 동일합니다. 자세한 내용은 사용자 지정 AMI에서 EC2 인스턴스를 시작하려면 어떻게 해야 하나요?를 참조하십시오.
관련 정보
Amazon Machine Image(AMI)를 다른 AWS 계정과 비공개로 공유하려면 어떻게 해야 하나요?

관련 콘텐츠
- 질문됨 일 년 전lg...
- 질문됨 5달 전lg...
- 질문됨 2년 전lg...
- 질문됨 11일 전lg...
- AWS 공식업데이트됨 7달 전