AMI와 EBS 암호화 동작에 대해 정리해 봤습니다.
안녕하세요 클래스메소드 김재욱(Kim Jaewook) 입니다. 이번에는 AMI와 EBS 암호화 동작에 대해 정리해 봤습니다.
본 브로그는 다음 AWS 공식 문서인 [EBS-backed AMI에서 암호화 사용]을 바탕으로 AMI와 EBS 암호화 동작에 대해 정리한 블로그입니다.
AMI의 기본 암호화 동작
EBS-backed AMI의 경우, AMI 자체는 스냅샷의 암호화 상태를 그대로 상속합니다.
- 암호화된 스냅샷 → 암호화된 AMI
- 비암호화 스냅샷 → 비암호화 AMI
이 단계에서는 사용자가 암호화를 선택하거나 변경할 수 없으며, AMI 생성 화면에서 암호화 옵션이 비활성화(disabled)로 표시됩니다.
이는 설정 불가 상태가 아니라
이미 암호화 여부가 결정되어 있음을 의미합니다.
EC2 인스턴스 생성 시 암호화 동작
AMI를 기반으로 EC2 인스턴스를 생성할 때(RunInstances),
AMI의 암호화 상태에 따라 동작이 달라집니다.
비암호화 스냅샷 기반 AMI라면 EC2 생성 단계에서 루트 볼륨의 암호화 여부를 선택할 수 있습니다.
- 암호화 OFF → 비암호화 EBS 생성
- 암호화 ON → 암호화된 EBS 생성 (기본 KMS 키 사용)
즉, 이 경우 암호화는 EC2 생성 단계에서 최종 결정됩니다.
암호화된 스냅샷 기반 AMI를 사용하는 경우에는 EC2 생성 단계에서 암호화를 해제할 수 없습니다.
- EC2 생성 화면에서 암호화 옵션이 보이더라도
- 실제로는 암호화가 강제로 유지됩니다
이는 보안상 암호화 해제를 허용하지 않는 AWS의 설계입니다.
KMS 키를 지정한 암호화
EC2 생성 시 다음 파라미터를 함께 지정하면 암호화 방식까지 제어할 수 있습니다.
EncryptedKmsKeyId
이를 통해 다음과 같은 동작이 가능합니다.
- 비암호화 스냅샷 → 고객 관리형 KMS 키로 암호화
- 기존 암호화 스냅샷 → 다른 KMS 키로 재암호화
운영 환경에서 특정 KMS 키 사용이 요구되는 경우 중요한 설정 포인트가 됩니다.
AMI 복사 시 암호화 동작
AMI를 다른 리전이나 계정으로 복사할 때(CopyImage)도 기본적으로는 원본 AMI의 암호화 상태가 유지됩니다.
하지만 복사 시 암호화 옵션을 지정하면:
- 비암호화 AMI → 암호화 AMI로 변환
- 암호화 AMI → 다른 KMS 키로 암호화된 AMI 생성
AMI 복사 단계는 암호화 상태를 변경할 수 있는 중요한 분기점입니다.
동작 정리
| 단계 | 암호화 변경 가능 여부 |
|---|---|
| EBS 생성 | 가능 |
| 스냅샷 생성 | 상속 |
| AMI 생성 | 불가 (상태 표시만) |
| EC2 생성 | 비암호화 AMI인 경우 가능 |
| AMI 복사 | 가능 |
마무리
AWS에서 EBS 암호화는 하나의 설정으로 결정되는 단순한 구조가 아닙니다.
- AMI가 암호화를 강제하는지 여부
- EC2 생성 단계에서의 사용자 선택
- AMI 복사 시 암호화 옵션
이 세 가지가 조합되어 최종적인 EBS 암호화 상태가 결정됩니다.
특히 계정 단위 EBS 기본 암호화가 OFF인 환경에서도 암호화된 EBS가 생성될 수 있다는 점은 운영 및 보안 점검 시 반드시 이해하고 있어야 할 부분입니다.
이번 정리를 통해 AMI와 EBS 암호화 동작을 보다 명확하게 이해하는 데 도움이 되길 바랍니다.






