

# 허용된 AMI의 설정 관리
<a name="manage-settings-allowed-amis"></a>

허용된 AMI의 설정을 관리할 수 있습니다. 이러한 설정은 계정당 리전 기준입니다.

**Topics**
+ [허용된 AMI 활성화](#enable-allowed-amis-criteria)
+ [허용된 AMI 기준 설정](#update-allowed-amis-criteria)
+ [허용된 AMI 비활성화](#disable-allowed-amis-criteria)
+ [허용된 AMI 기준 가져오기](#identify-allowed-amis-state-and-criteria)
+ [허용되는 AMI 찾기](#identify-amis-that-meet-allowed-amis-criteria)
+ [허용되지 않는 AMI에서 시작된 인스턴스 찾기](#identify-instances-with-allowed-AMIs)

## 허용된 AMI 활성화
<a name="enable-allowed-amis-criteria"></a>

허용된 AMI를 활성화하고 허용된 AMI 기준을 지정할 수 있습니다. 액세스는 제한하지 않는 기준의 영향을 받는 AMI가 표시되는 감사 모드에서 시작하는 것이 좋습니다.

------
#### [ Console ]

**허용된 AMI를 활성화하려면**

1. [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/)에서 Amazon EC2 콘솔을 엽니다.

1. 탐색 창에서 **대시보드**를 선택합니다.

1. **계정 속성** 카드의 **설정**에서 **허용된 AMI**를 선택합니다.

1. **허용된 AMI** 탭에서 **관리**를 선택합니다.

1. **허용된 AMI 설정**에서 **감사 모드** 또는 **활성화됨**을 선택합니다. 감사 모드에서 시작하여 기준을 테스트한 다음에 이 단계로 돌아와서 허용된 AMI를 활성화하는 것이 좋습니다.

1. (선택 사항) **AMI 기준**의 경우 JSON 형식으로 기준을 입력합니다.

1. **업데이트**를 선택합니다.

------
#### [ AWS CLI ]

**허용된 AMI를 활성화하려면**  
[enable-allowed-images-settings](https://docs.aws.amazon.com/cli/latest/reference/ec2/enable-allowed-images-settings.html) 명령을 사용합니다.

```
aws ec2 enable-allowed-images-settings --allowed-images-settings-state enabled
```

그 대신에 감사 모드를 활성화하려면 `enabled` 대신에 `audit-mode`를 지정합니다.

```
aws ec2 enable-allowed-images-settings --allowed-images-settings-state audit-mode
```

------
#### [ PowerShell ]

**허용된 AMI를 활성화하려면**  
[Enable-EC2AllowedImagesSetting](https://docs.aws.amazon.com/powershell/latest/reference/items/Enable-EC2AllowedImagesSetting.html) cmdlet을 사용합니다.

```
Enable-EC2AllowedImagesSetting -AllowedImagesSettingsState enabled
```

그 대신에 감사 모드를 활성화하려면 `enabled` 대신에 `audit-mode`를 지정합니다.

```
Enable-EC2AllowedImagesSetting -AllowedImagesSettingsState audit-mode
```

------

## 허용된 AMI 기준 설정
<a name="update-allowed-amis-criteria"></a>

허용된 AMI를 활성화한 후 허용된 AMI 기준을 설정하거나 바꿀 수 있습니다.

올바른 구성 및 유효한 값은 [허용된 AMI 구성](ec2-allowed-amis.md#allowed-amis-json-configuration) 및 [허용된 AMI 파라미터](ec2-allowed-amis.md#allowed-amis-criteria) 섹션을 참조하세요.

------
#### [ Console ]

**허용된 AMI 기준을 설정하는 방법**

1. [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/)에서 Amazon EC2 콘솔을 엽니다.

1. 탐색 창에서 **대시보드**를 선택합니다.

1. **계정 속성** 카드의 **설정**에서 **허용된 AMI**를 선택합니다.

1. **허용된 AMI** 탭에서 **관리**를 선택합니다.

1. **AMI 기준**에 JSON 형식으로 기준을 입력합니다.

1. **업데이트**를 선택합니다.

------
#### [ AWS CLI ]

**허용된 AMI 기준을 설정하는 방법**  
[replace-image-criteria-in-allowed-images-settings](https://docs.aws.amazon.com/cli/latest/reference/ec2/replace-image-criteria-in-allowed-images-settings.html) 명령을 사용하고 허용되는 AMI 기준이 포함된 JSON 파일을 지정합니다.

```
aws ec2 replace-image-criteria-in-allowed-images-settings --cli-input-json file://file_name.json
```

------
#### [ PowerShell ]

**허용된 AMI 기준을 설정하는 방법**  
[Set-EC2ImageCriteriaInAllowedImagesSetting](https://docs.aws.amazon.com/powershell/latest/reference/items/Set-EC2ImageCriteriaInAllowedImagesSetting.html) cmdlet을 사용하고 허용되는 AMI 기준이 포함된 JSON 파일을 지정합니다.

```
$imageCriteria = Get-Content -Path .\file_name.json | ConvertFrom-Json
Set-EC2ImageCriteriaInAllowedImagesSetting -ImageCriterion $imageCriteria
```

------

## 허용된 AMI 비활성화
<a name="disable-allowed-amis-criteria"></a>

다음과 같이 허용된 AMI를 비활성화할 수 있습니다.

------
#### [ Console ]

**허용된 AMI를 비활성화하려면**

1. [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/)에서 Amazon EC2 콘솔을 엽니다.

1. 탐색 창에서 **대시보드**를 선택합니다.

1. **계정 속성** 카드의 **설정**에서 **허용된 AMI**를 선택합니다.

1. **허용된 AMI** 탭에서 **관리**를 선택합니다.

1. **허용된 AMI 설정**에서 **비활성화됨**을 선택합니다.

1. **업데이트**를 선택합니다.

------
#### [ AWS CLI ]

**허용된 AMI를 비활성화하려면**  
[disable-allowed-images-settings](https://docs.aws.amazon.com/cli/latest/reference/ec2/disable-allowed-images-settings.html) 명령을 사용합니다.

```
aws ec2 disable-allowed-images-settings
```

------
#### [ PowerShell ]

**허용된 AMI를 비활성화하려면**  
[Disable-EC2AllowedImagesSetting](https://docs.aws.amazon.com/powershell/latest/reference/items/Disable-EC2AllowedImagesSetting.html) cmdlet을 사용합니다.

```
Disable-EC2AllowedImagesSetting
```

------

## 허용된 AMI 기준 가져오기
<a name="identify-allowed-amis-state-and-criteria"></a>

허용된 AMI 설정의 현재 상태와 허용된 AMI 기준을 가져올 수 있습니다.

------
#### [ Console ]

**허용된 AMI 상태 및 기준을 가져오는 방법**

1. [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/)에서 Amazon EC2 콘솔을 엽니다.

1. 탐색 창에서 **대시보드**를 선택합니다.

1. **계정 속성** 카드의 **설정**에서 **허용된 AMI**를 선택합니다.

1. **허용된 AMI** 탭에 **허용된 AMI 설정**이 **활성화됨**, **비활성화됨** 또는 **감사 모드**로 설정되어 있습니다.

1. 허용된 AMI의 상태가 **활성화됨** 또는 **감사 모드**인 경우 **AMI 기준**에 JSON 형식으로 AMI 기준이 표시됩니다.

------
#### [ AWS CLI ]

**허용된 AMI 상태 및 기준을 가져오는 방법**  
[get-allowed-images-settings](https://docs.aws.amazon.com/cli/latest/reference/ec2/get-allowed-images-settings.html) 명령을 사용합니다.

```
aws ec2 get-allowed-images-settings
```

다음 예제 출력에서 상태는 `audit-mode`이고 이미지 기준은 계정에 설정됩니다.

```
{
    "State": "audit-mode",
    "ImageCriteria": [
        {
            "MarketplaceProductCodes": [
                "abcdefg1234567890"
            ]
        },
        {
            "ImageProviders": [
                "123456789012",
                "123456789013"
            ],
            "CreationDateCondition": {
                "MaximumDaysSinceCreated": 300
            }
        },
        {
            "ImageProviders": [
                "123456789014"
            ],
            "ImageNames": [
                "golden-ami-*"
            ]
        },
        {
            "ImageProviders": [
                "amazon"
            ],
            "DeprecationTimeCondition": {
                "MaximumDaysSinceDeprecated": 0
            }
        }
    ],
    "ManagedBy": "account"
}
```

------
#### [ PowerShell ]

**허용된 AMI 상태 및 기준을 가져오는 방법**  
[Get-EC2AllowedImagesSetting](https://docs.aws.amazon.com/powershell/latest/reference/items/Get-EC2AllowedImagesSetting.html) cmdlet을 사용합니다.

```
Get-EC2AllowedImagesSetting | Select-Object `
    State, `
    ManagedBy, `
    @{Name='ImageProviders'; Expression={($_.ImageCriteria.ImageProviders)}}, `
    @{Name='MarketplaceProductCodes'; Expression={($_.ImageCriteria.MarketplaceProductCodes)}}, `
    @{Name='ImageNames'; Expression={($_.ImageCriteria.ImageNames)}}, `
    @{Name='MaximumDaysSinceCreated'; Expression={($_.ImageCriteria.CreationDateCondition.MaximumDaysSinceCreated)}}, `
    @{Name='MaximumDaysSinceDeprecated'; Expression={($_.ImageCriteria.DeprecationTimeCondition.MaximumDaysSinceDeprecated)}}
```

다음 예제 출력에서 상태는 `audit-mode`이고 이미지 기준은 계정에 설정됩니다.

```
State      : audit-mode
ManagedBy  : account
ImageProviders            : {123456789012, 123456789013, 123456789014, amazon}
MarketplaceProductCodes   : {abcdefg1234567890}
ImageNames                : {golden-ami-*}
MaximumDaysSinceCreated  : 300
MaximumDaysSinceDeprecated: 0
```

------

## 허용되는 AMI 찾기
<a name="identify-amis-that-meet-allowed-amis-criteria"></a>

현재 허용된 AMI 기준에 따라 허용되거나 허용되지 않는 AMI를 찾을 수 있습니다.

**참고**  
허용된 AMI가 감사 모드로 되어 있어야 합니다.

------
#### [ Console ]

**허용된 AMI 기준이 AMI에서 충족되는지 확인하는 방법**

1. [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/)에서 Amazon EC2 콘솔을 엽니다.

1. 탐색 창에서 **AMI**를 선택합니다.

1. AMI를 선택합니다.

1. **세부 정보** 탭(확인란을 선택한 경우) 또는 요약 영역(AMI ID를 선택한 경우)에서 **허용된 이미지** 필드를 찾습니다.
   + **예** - 허용된 AMI 기준이 AMI에서 충족됩니다. 허용된 AMI를 활성화하면 본인 계정의 사용자가 이 AMI를 사용할 수 있게 됩니다.
   + **아니요** - 허용된 AMI 기준이 AMI에서 충족되지 않습니다.

1. 탐색 창에서 **AMI 카탈로그(AMI Catalog)**를 선택합니다.

   **허용되지 않음**으로 표시된 AMI는 허용된 AMI 기준을 충족하지 않는 AMI를 나타냅니다. 허용된 AMI가 활성화된 경우 계정의 사용자가 이 AMI를 보거나 사용할 수 없습니다.

------
#### [ AWS CLI ]

**허용된 AMI 기준이 AMI에서 충족되는지 확인하는 방법**  
[describe-images](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-images.html) 명령을 사용합니다.

```
aws ec2 describe-images \
    --image-id ami-0abcdef1234567890 \
    --query Images[].ImageAllowed \
    --output text
```

다음은 예제 출력입니다.

```
True
```

**허용된 AMI 기준이 충족되는 AMI를 찾는 방법**  
[describe-images](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-images.html) 명령을 사용합니다.

```
aws ec2 describe-images \
    --filters "Name=image-allowed,Values=true" \
    --max-items 10 \
    --query Images[].ImageId
```

다음은 예제 출력입니다.

```
ami-000eaaa8be2fd162a
ami-000f82db25e50de8e
ami-000fc21eb34c7a9a6
ami-0010b876f1287d7be
ami-0010b929226fe8eba
ami-0010957836340aead
ami-00112c992a47ba871
ami-00111759e194abcc1
ami-001112565ffcafa5e
ami-0011e45aaee9fba88
```

------
#### [ PowerShell ]

**허용된 AMI 기준이 AMI에서 충족되는지 확인하는 방법**  
[Get-EC2Image](https://docs.aws.amazon.com/powershell/latest/reference/items/Get-EC2Image.html) cmdlet을 사용합니다.

```
(Get-EC2Image -ImageId ami-0abcdef1234567890).ImageAllowed
```

다음은 예제 출력입니다.

```
True
```

**허용된 AMI 기준이 충족되는 AMI를 찾는 방법**  
[Get-EC2Image](https://docs.aws.amazon.com/powershell/latest/reference/items/Get-EC2Image.html) cmdlet을 사용합니다.

```
Get-EC2Image `
    -Filter @{Name="image-allows";Values="true"} `
    -MaxResult 10 | `
    Select ImageId
```

다음은 예제 출력입니다.

```
ami-000eaaa8be2fd162a
ami-000f82db25e50de8e
ami-000fc21eb34c7a9a6
ami-0010b876f1287d7be
ami-0010b929226fe8eba
ami-0010957836340aead
ami-00112c992a47ba871
ami-00111759e194abcc1
ami-001112565ffcafa5e
ami-0011e45aaee9fba88
```

------

## 허용되지 않는 AMI에서 시작된 인스턴스 찾기
<a name="identify-instances-with-allowed-AMIs"></a>

허용된 AMI 기준이 충족되지 않는 AMI를 사용하여 시작된 인스턴스를 식별할 수 있습니다.

------
#### [ Console ]

**인스턴스가 허용되지 않는 AMI를 사용하여 시작되었는지 확인하는 방법**

1. [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/)에서 Amazon EC2 콘솔을 엽니다.

1. 탐색 창에서 **인스턴스**를 선택합니다.

1. 인스턴스를 선택합니다.

1. **세부 정보** 탭의 **인스턴스 세부 정보**에서 **허용된 이미지**를 찾습니다.
   + **예** - 허용된 AMI 기준이 AMI에서 충족됩니다.
   + **아니요** - 허용된 AMI 기준이 AMI에서 충족되지 않습니다.

------
#### [ AWS CLI ]

**허용되지 않는 AMI를 사용하여 시작된 인스턴스를 찾는 방법**  
[describe-instance-image-metadata](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-instance-image-metadata.html) 명령을 `image-allowed` 필터와 함께 사용합니다.

```
aws ec2 describe-instance-image-metadata \
    --filters "Name=image-allowed,Values=false" \
    --query "InstanceImageMetadata[*].[InstanceId,ImageMetadata.ImageId]" \
    --output table
```

다음은 예제 출력입니다.

```
--------------------------------------------------
|          DescribeInstanceImageMetadata         |
+----------------------+-------------------------+
|  i-08fd74f3f1595fdbd |  ami-09245d5773578a1d6  |
|  i-0b1bf24fd4f297ab9 |  ami-07cccf2bd80ed467f  |
|  i-026a2eb590b4f7234 |  ami-0c0ec0a3a3a4c34c0  |
|  i-006a6a4e8870c828f |  ami-0a70b9d193ae8a799  |
|  i-0781e91cfeca3179d |  ami-00c257e12d6828491  |
|  i-02b631e2a6ae7c2d9 |  ami-0bfddf4206f1fa7b9  |
+----------------------+-------------------------+
```

------
#### [ PowerShell ]

**허용되지 않는 AMI를 사용하여 시작된 인스턴스를 찾는 방법**  
[Get-EC2InstanceImageMetadata](https://docs.aws.amazon.com/powershell/latest/reference/items/Get-EC2InstanceImageMetadata.html) cmdlet을 사용합니다.

```
Get-EC2InstanceImageMetadata `
    -Filter @{Name="image-allowed";Values="false"} | `
    Select InstanceId, @{Name='ImageId'; Expression={($_.ImageMetadata.ImageId)}}
```

다음은 예제 출력입니다.

```
InstanceId          ImageId
----------          -------
i-08fd74f3f1595fdbd ami-09245d5773578a1d6
i-0b1bf24fd4f297ab9 ami-07cccf2bd80ed467f
i-026a2eb590b4f7234 ami-0c0ec0a3a3a4c34c0
i-006a6a4e8870c828f ami-0a70b9d193ae8a799
i-0781e91cfeca3179d ami-00c257e12d6828491
i-02b631e2a6ae7c2d9 ami-0bfddf4206f1fa7b9
```

------
#### [ AWS Config ]

**ec2-instance-launched-with-allowed-ami** AWS Config 규칙을 추가하고, 요구 사항에 맞게 구성한 다음에 이를 사용하여 인스턴스를 평가합니다.

자세한 내용은 *AWS Config 개발자 가이드*의 [AWS Config 규칙 추가](https://docs.aws.amazon.com/config/latest/developerguide/evaluate-config_add-rules.html) 및 [ec2-instance-launched-with-allowed-ami](https://docs.aws.amazon.com/config/latest/developerguide/ec2-instance-launched-with-allowed-ami.html)를 참조하세요.

------