

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# 를 AWS 서비스 통한 액세스 AWS PrivateLink
<a name="privatelink-access-aws-services"></a>

엔드포인트를 AWS 서비스 사용하여에 액세스합니다. 기본 서비스 엔드포인트는 퍼블릭 인터페이스이므로 트래픽이 VPC에서 AWS 서비스로 이동할 수 있도록 VPC에 인터넷 게이트웨이를 추가해야 합니다. 이 구성이 네트워크 보안 요구 사항과 호환되지 않는 경우 AWS PrivateLink 를 사용하여 인터넷 게이트웨이를 사용하지 않고 VPC에 있는 AWS 서비스 것처럼 VPC를에 연결할 수 있습니다.

VPC 엔드포인트를 AWS PrivateLink 사용하여와 통합 AWS 서비스 되는에 비공개로 액세스할 수 있습니다. 이 경우 인터넷 게이트웨이를 사용하지 않고도 애플리케이션 스택의 모든 계층을 구축하고 관리할 수 있습니다.

**가격 책정**  
인터페이스 VPC 엔드포인트가 각 가용 영역에 프로비저닝되는 시간에 대해 시간당 요금이 청구됩니다. 또한 처리된 데이터의 GB당 요금이 청구됩니다. 자세한 내용은 [AWS PrivateLink 요금](https://aws.amazon.com/privatelink/pricing/)을 참조하세요.

**Topics**
+ [개요](#interface-endpoint-overview)
+ [DNS 호스트 이름](#interface-endpoint-dns-hostnames)
+ [DNS 확인](#interface-endpoint-dns-resolution)
+ [프라이빗 DNS](#interface-endpoint-private-dns)
+ [서브넷 및 가용 영역](#aws-service-subnets-zones)
+ [IP 주소 유형](#aws-service-ip-address-type)
+ [DNS 레코드 IP 유형](#aws-services-dns-record-ip-type)
+ [통합되는 서비스](aws-services-privatelink-support.md)
+ [교차 리전 활성화됨 AWS 서비스](aws-services-cross-region-privatelink-support.md)
+ [인터페이스 엔드포인트 생성](create-interface-endpoint.md)
+ [인터페이스 엔드포인트 구성](interface-endpoints.md)
+ [인터페이스 엔드포인트 이벤트에 대한 알림 받기](manage-notifications-endpoint.md)
+ [인터페이스 엔드포인트 삭제](delete-interface-endpoint.md)
+ [게이트웨이 엔드포인트](gateway-endpoints.md)

## 개요
<a name="interface-endpoint-overview"></a>

퍼블릭 서비스 엔드포인트를 AWS 서비스 통해에 액세스하거나를 AWS 서비스 사용하여 지원되는에 연결할 수 있습니다 AWS PrivateLink. 이 개요에서는 두 방법을 비교합니다.

**퍼플릭 서비스 엔드포인트를 통한 액세스**  
다음 다이어그램은 인스턴스가 퍼블릭 서비스 엔드포인트를 AWS 서비스 통해 액세스하는 방법을 보여줍니다. 퍼블릭 서브넷의 인스턴스 AWS 서비스 에서 로 가는 트래픽은 VPC의 인터넷 게이트웨이로 라우팅된 다음 로 라우팅됩니다 AWS 서비스. 프라이빗 서브넷의 인스턴스에서 AWS 서비스 로의 트래픽은 차례로 NAT 게이트웨이, VPC의 인터넷 게이트웨이, AWS 서비스로 라우팅됩니다. 이 트래픽은 인터넷 게이트웨이를 통과하지만 AWS 네트워크를 벗어나지 않습니다.

![\[에 대한 트래픽은 인터넷 게이트웨이를 통해 VPC를 AWS 서비스 떠나지만 AWS 네트워크에 남아 있습니다.\]](http://docs.aws.amazon.com/ko_kr/vpc/latest/privatelink/images/access-with-igw.png)


**를 통해 연결 AWS PrivateLink**  
다음 다이어그램은 인스턴스가를 AWS 서비스 통해 액세스하는 방법을 보여줍니다 AWS PrivateLink. 먼저 네트워크 인터페이스를 AWS 서비스 사용하여 VPC의 서브넷과 간에 연결을 설정하는 인터페이스 VPC 엔드포인트를 생성합니다. 로 향하는 트래픽 AWS 서비스 은 DNS를 사용하여 엔드포인트 네트워크 인터페이스의 프라이빗 IP 주소로 확인된 다음 VPC 엔드포인트와 간의 연결을 AWS 서비스 사용하여 로 전송됩니다 AWS 서비스.

![\[서브넷의 트래픽은 인터페이스 VPC 엔드포인트를 사용하여 AWS 서비스에 연결합니다.\]](http://docs.aws.amazon.com/ko_kr/vpc/latest/privatelink/images/access-with-privatelink.png)


AWS 서비스 연결 요청을 자동으로 수락합니다. 서비스에서는 VPC 엔드포인트를 통해 리소스에 대한 요청을 시작할 수 없습니다.

## DNS 호스트 이름
<a name="interface-endpoint-dns-hostnames"></a>

대부분은 다음 구문을 가진 퍼블릭 리전 엔드포인트를 AWS 서비스 제공합니다.

```
protocol://service_code.region_code.amazonaws.com
```

예를 들어 us-east-2에서 Amazon CloudWatch의 퍼블릭 엔드포인트는 다음과 같습니다.

```
https://monitoring.us-east-2.amazonaws.com
```

를 사용하면 프라이빗 엔드포인트를 사용하여 서비스로 트래픽을 AWS PrivateLink전송합니다. 인터페이스 VPC 엔드포인트를 생성하면 VPC AWS 서비스 에서와 통신하는 데 사용할 수 있는 리전 및 영역 DNS 이름이 생성됩니다.

인터페이스 VPC 엔드포인트의 리전 DNS 이름은 구문이 다음과 같습니다.

```
endpoint_id.service_id.region.vpce.amazonaws.com
```

영역 DNS 이름의 구문은 다음과 같습니다.

```
endpoint_id-az_name.service_id.region.vpce.amazonaws.com
```

에 대한 인터페이스 VPC 엔드포인트를 생성할 때 [프라이빗 DNS](#interface-endpoint-private-dns)를 활성화 AWS 서비스할 수 있습니다. 프라이빗 DNS를 사용하면 인터페이스 VPC 엔드포인트를 통한 프라이빗 연결을 활용하면서 퍼블릭 엔드포인트의 DNS 이름을 사용하여 서비스에 계속 요청할 수 있습니다. 자세한 내용은 [DNS 확인](#interface-endpoint-dns-resolution) 단원을 참조하십시오.

다음 [describe-vpc-endpoints](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-vpc-endpoints.html) 명령은 인터페이스 엔드포인트의 DNS 항목을 표시합니다.

```
aws ec2 describe-vpc-endpoints --vpc-endpoint-id vpce-099deb00b40f00e22 --query VpcEndpoints[*].DnsEntries
```

다음은 프라이빗 DNS 이름이 활성화된 Amazon CloudWatch의 인터페이스 엔드포인트에 대한 출력 예입니다. 첫 번째 항목은 프라이빗 리전 엔드포인트입니다. 다음 세 개 항목은 프라이빗 영역 엔드포인트입니다. 마지막 항목은 숨겨진 프라이빗 호스팅 영역의 엔드포인트로, 퍼블릭 엔드포인트에 대한 요청을 엔드포인트 네트워크 인터페이스의 프라이빗 IP 주소로 확인합니다.

```
[
    [
        {
            "DnsName": "vpce-099deb00b40f00e22-lj2wisx3.monitoring.us-east-2.vpce.amazonaws.com",
            "HostedZoneId": "ZC8PG0KIFKBRI"
        },
        {
            "DnsName": "vpce-099deb00b40f00e22-lj2wisx3-us-east-2c.monitoring.us-east-2.vpce.amazonaws.com",
            "HostedZoneId": "ZC8PG0KIFKBRI"
        },
        {
            "DnsName": "vpce-099deb00b40f00e22-lj2wisx3-us-east-2a.monitoring.us-east-2.vpce.amazonaws.com",
            "HostedZoneId": "ZC8PG0KIFKBRI"
        },
        {
            "DnsName": "vpce-099deb00b40f00e22-lj2wisx3-us-east-2b.monitoring.us-east-2.vpce.amazonaws.com",
            "HostedZoneId": "ZC8PG0KIFKBRI"
        },
        {
            "DnsName": "monitoring.us-east-2.amazonaws.com",
            "HostedZoneId": "Z06320943MMOWYG6MAVL9"
        }
    ]
]
```

## DNS 확인
<a name="interface-endpoint-dns-resolution"></a>

인터페이스 VPC 엔드포인트에 대해 생성되는 DNS 레코드는 퍼블릭입니다. 따라서 해당 DNS 이름은 공개적으로 확인할 수 있습니다. 하지만 VPC 외부의 DNS 요청은 여전히 엔드포인트 네트워크 인터페이스의 프라이빗 IP 주소를 반환하므로 VPC에 액세스할 수 없는 경우 이러한 IP 주소를 사용하여 엔드포인트 서비스에 액세스할 수 없습니다.

## 프라이빗 DNS
<a name="interface-endpoint-private-dns"></a>

인터페이스 VPC 엔드포인트에 대해 프라이빗 DNS를 활성화하고 VPC에 [DNS 호스트 이름과 DNS 확인](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-dns.html#vpc-dns-updating)이 모두 활성화된 경우 숨겨진 AWS관리형 프라이빗 호스팅 영역이 생성됩니다. 호스팅 영역에는 VPC에 있는 엔드포인트 네트워크 인터페이스의 프라이빗 IP 주소로 확인되는 서비스에 대한 기본 DNS 이름의 레코드 세트가 포함됩니다. 따라서 퍼블릭 리전 엔드포인트를 AWS 서비스 사용하여에 요청을 보내는 기존 애플리케이션이 있는 경우 이제 해당 애플리케이션을 변경할 필요 없이 해당 요청이 엔드포인트 네트워크 인터페이스를 통과합니다.

 AWS 서비스용 VPC 엔드포인트에 프라이빗 DNS 이름을 사용하는 것이 좋습니다. 이렇게 하면 AWS SDK를 통한 요청과 같이 퍼블릭 서비스 엔드포인트를 사용하는 요청이 VPC 엔드포인트로 확인됩니다.

Amazon은 [Route 53 Resolver](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/resolver.html)라고 하는 VPC용 DNS 서버를 제공합니다. Route 53 Resolver는 프라이빗 호스팅 영역의 로컬 VPC 도메인 이름 및 레코드를 자동으로 확인합니다. 하지만 VPC 외부에서는 Route 53 Resolver를 사용할 수 없습니다. 온프레미스 네트워크에서 VPC 엔드포인트에 액세스하려는 경우 Route 53 Resolver 엔드포인트 및 Resolver 규칙을 사용할 수 있습니다. 자세한 내용은 [AWS PrivateLink 및 AWS Transit Gateway 와 통합을 참조하세요 Amazon Route 53 Resolver](https://aws.amazon.com/blogs/networking-and-content-delivery/integrating-aws-transit-gateway-with-aws-privatelink-and-amazon-route-53-resolver/).

## 서브넷 및 가용 영역
<a name="aws-service-subnets-zones"></a>

가용 영역당 1개의 서브넷으로 VPC 엔드포인트를 구성할 수 있습니다. 서브넷의 VPC 엔드포인트에 대한 엔드포인트 네트워크 인터페이스가 생성됩니다. VPC 엔드포인트의 [IP 주소 유형](#aws-service-ip-address-type)에 따라 서브넷의 각 엔드포인트 네트워크 인터페이스에 IP 주소가 할당됩니다. 엔드포인트 네트워크 인터페이스의 IP 주소는 VPC 엔드포인트의 수명 기간 동안 변경되지 않습니다.

프로덕션 환경에서는 고가용성 및 복원력을 위해 다음과 같이 진행하는 것이 좋습니다.
+ VPC 엔드포인트당 최소 두 개의 가용 영역을 구성하고 이러한 가용 영역에서 AWS 서비스 에 액세스해야 하는 리소스를 배포 AWS 합니다.
+ VPC 엔드포인트의 프라이빗 DNS 이름을 구성합니다.
+ 퍼블릭 엔드포인트라고도 하는 리전 DNS 이름을 AWS 서비스 사용하여에 액세스합니다.

다음 다이어그램에서는 1개의 가용 영역에 엔드포인트 네트워크 인터페이스가 있는 Amazon CloudWatch용 VPC 엔드포인트를 보여줍니다. VPC의 서브넷에 있는 리소스에서 퍼블릭 엔드포인트를 사용하여 Amazon CloudWatch에 액세스하면 엔드포인트 네트워크 인터페이스의 IP 주소로 트래픽이 확인됩니다. 여기에는 다른 가용 영역에 있는 서브넷의 트래픽도 포함됩니다. 그러나 가용 영역 1이 손상되면 가용 영역 2의 리소스의 Amazon CloudWatch 액세스 권한이 손실됩니다.

![\[단일 가용 영역에 사용할 수 있는 Amazon CloudWatch용 인터페이스 VPC 엔드포인트.\]](http://docs.aws.amazon.com/ko_kr/vpc/latest/privatelink/images/interface-endpoint-single-az.png)


다음 다이어그램에서는 2개의 가용 영역에 엔드포인트 네트워크 인터페이스가 있는 Amazon CloudWatch용 VPC 엔드포인트를 보여줍니다. VPC의 서브넷에 있는 리소스에서 퍼블릭 엔드포인트를 사용하여 Amazon CloudWatch에 액세스하면 두 가지를 번갈아 사용하는 라운드 로빈 알고리즘을 통해 정상 엔드포인트 네트워크 인터페이스가 선택됩니다. 그런 다음에 선택된 엔드포인트 네트워크 인터페이스의 IP 주소로 트래픽이 확인됩니다.

![\[여러 가용 영역에 사용할 수 있는 Amazon CloudWatch용 인터페이스 VPC 엔드포인트.\]](http://docs.aws.amazon.com/ko_kr/vpc/latest/privatelink/images/interface-endpoint-multi-az.png)


사용 사례에 더 적합한 경우 동일한 가용 영역의 엔드포인트 네트워크 인터페이스를 사용하여 리소스에서 AWS 서비스 로 트래픽을 보낼 수 있습니다. 이렇게 하려면 엔드포인트 네트워크 인터페이스의 프라이빗 영역별 엔드포인트 또는 IP 주소를 사용하세요.

![\[프라이빗 영역 엔드포인트를 사용하는 트래픽이 있는 인터페이스 VPC 엔드포인트.\]](http://docs.aws.amazon.com/ko_kr/vpc/latest/privatelink/images/interface-endpoint-multi-az-zonal.png)


## IP 주소 유형
<a name="aws-service-ip-address-type"></a>

AWS 서비스 는 퍼블릭 엔드포인트를 통해 IPv6를 지원하지 않더라도 프라이빗 엔드포인트를 통해 IPv6를 지원할 수 있습니다. IPv6를 지원하는 엔드포인트는 AAAA 레코드를 사용하여 DNS 쿼리에 응답할 수 있습니다.

**인터페이스 엔드포인트에 대해 IPv6를 활성화하기 위한 요구 사항**
+ 는 IPv6를 통해 서비스 엔드포인트를 사용할 수 있도록 해야 AWS 서비스 합니다. 자세한 내용은 [IPv6 지원 보기](aws-services-privatelink-support.md#vpce-ipv6-support) 단원을 참조하십시오.
+ 인터페이스 엔드포인트의 IP 주소 유형이 여기에 설명된 대로 인터페이스 엔드포인트의 서브넷과 호환되어야 합니다.
  + **IPv4** - 엔드포인트 네트워크 인터페이스에 IPv4 주소를 할당합니다. 이 옵션은 선택한 모든 서브넷에 IPv4 주소 범위가 있는 경우에만 지원됩니다.
  + **IPv6** - 엔드포인트 네트워크 인터페이스에 IPv6 주소를 할당합니다. 이 옵션은 선택한 모든 서브넷이 IPv6 전용 서브넷인 경우에만 지원됩니다.
  + **듀얼 스택** - 엔드포인트 네트워크 인터페이스에 IPv4 및 IPv6 주소를 모두 할당합니다. 이 옵션은 선택한 모든 서브넷에 IPv4 및 IPv6 주소 범위가 모두 있는 경우에만 지원됩니다.

인터페이스 VPC 엔드포인트가 IPv4를 지원하는 경우 엔드포인트 네트워크 인터페이스에 IPv4 주소가 있습니다. 인터페이스 VPC 엔드포인트가 IPv6를 지원하는 경우 엔드포인트 네트워크 인터페이스에 IPv6 주소가 있습니다. 엔드포인트 네트워크 인터페이스의 IPv6 주소는 인터넷을 통해 연결할 수 없습니다. 엔드포인트 네트워크 인터페이스를 IPv6 주소를 사용하여 설명하는 경우 `denyAllIgwTraffic`이 활성화됩니다.

## DNS 레코드 IP 유형
<a name="aws-services-dns-record-ip-type"></a>

IP 주소 유형에 따라 VPC 엔드포인트를 호출할 때 AWS 서비스는 A 레코드, AAAA 레코드 또는 A 레코드와 AAAA 레코드를 모두 반환할 수 있습니다. DNS 레코드 IP 유형을 수정하여 AWS 서비스가 반환하는 레코드 유형을 사용자 지정할 수 있습니다. 다음 표에는 지원되는 DNS 레코드 IP 유형과 반환된 레코드 유형이 나와 있습니다.


| DNS 레코드 IP 유형 | 반환된 레코드 유형 | 
| --- | --- | 
| IPv4 | A | 
| IPv6 | AAAA | 
| 듀얼 스택 | A 및 AAAA | 

기본적으로 DNS 레코드 유형은 IP 주소 유형과 동일합니다. 다른 DNS 레코드 IP 유형을 선택할 수도 있지만, 엔드포인트 서비스에 호환되는 IP 주소 유형을 사용해야 합니다. 다음 표는 인터페이스 엔드포인트의 각 IP 주소 유형에 대해 지원되는 DNS 레코드 IP 유형을 보여줍니다.


| IP 주소 유형 | 지원되는 DNS 레코드 IP 유형 | 
| --- | --- | 
| IPv4 | IPv4 | 
| IPv6 | IPv6 | 
| 듀얼 스택 | 듀얼 스택\$1, IPv4, IPv6, 서비스 정의형 | 

\$1 기본 DNS 레코드 IP 유형을 나타냅니다.

서비스 정의형 DNS 레코드 IP 유형은 호출하는 서비스 엔드포인트에 따라 DNS 레코드를 반환합니다. 서비스 정의형 DNS 레코드 IP 유형을 사용하는 경우, 서비스가 다양한 서비스 엔드포인트에서의 호출을 처리할 수 있는지 확인해야 합니다. 인터페이스 엔드포인트에서 지원하는 DNS 레코드를 보려면에서 VPC 엔드포인트의 DNS 이름을 참조 AWS Management Console하거나 [DescribeVpcEndpoints](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeVpcEndpoints.html)를 사용합니다.

DNS 레코드 IP 유형의 동작은 게이트웨이 엔드포인트의 경우 다릅니다. 자세한 내용은 [게이트웨이 엔드포인트의 DNS 레코드 IP 유형](gateway-endpoints.md#gateway-endpoint-dns-record-ip-type)을 참조하세요.

# AWS 서비스 와 통합되는 AWS PrivateLink
<a name="aws-services-privatelink-support"></a>

다음은와 AWS 서비스 통합됩니다 AWS PrivateLink. VPC 엔드포인트를 생성하면 이러한 서비스에 비공개로 연결하여 자체 VPC에서 실행 중인 것처럼 서비스를 이용할 수 있습니다.

**AWS 서비스** 열에서 링크를 선택하면와 통합되는 서비스에 대한 설명서를 볼 수 있습니다 AWS PrivateLink. **서비스 이름** 열에는 인터페이스 VPC 엔드포인트를 생성할 때 지정하는 서비스 이름을 포함하거나, 서비스가 해당 엔드포인트를 관리함을 가리킵니다.

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/vpc/latest/privatelink/aws-services-privatelink-support.html)

## 사용 가능한 AWS 서비스 이름 보기
<a name="vpce-view-available-services"></a>

[describe-vpc-endpoint-services](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-vpc-endpoint-services.html) 명령을 사용하여 VPC 엔드포인트를 지원하는 서비스 이름을 볼 수 있습니다.

다음 예제에서는 지정된 리전에서 인터페이스 엔드포인트를 AWS 서비스 지원하는를 표시합니다. 이 `--query` 옵션은 출력을 서비스 이름으로 제한합니다.

```
aws ec2 describe-vpc-endpoint-services \
  --filters Name=service-type,Values=Interface Name=owner,Values=amazon \ 
  --region us-east-1 \
  --query ServiceNames
```

다음은 예제 출력입니다. 전체 출력은 표시되지 않습니다.

```
[
    "api.aws.us-east-1.cassandra-streams",
    "aws.api.us-east-1.bcm-data-exports",
    "aws.api.us-east-1.emr-service-cell01",
    "aws.api.us-east-1.freetier",
    "aws.api.us-east-1.kendra-ranking",
    "aws.api.us-east-1.qbusiness",
    . . .
     "com.amazonaws.us-east-1.xray"
]
```

## 서비스에 대한 정보 보기
<a name="vpce-view-service-details"></a>

서비스 이름이 있으면 [describe-vpc-endpoint-services](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-vpc-endpoint-services.html) 명령을 사용하여 각 엔드포인트 서비스에 대한 세부 정보를 볼 수 있습니다.

다음 예는 지정된 리전의 Amazon CloudWatch 인터페이스 엔드포인트에 대한 정보를 표시합니다.

```
aws ec2 describe-vpc-endpoint-services \
  --service-name "com.amazonaws.us-east-1.monitoring" \
  --region us-east-1
```

출력의 예는 다음과 같습니다. `VpcEndpointPolicySupported`는 [엔드포인트 정책이](vpc-endpoints-access.md) 지원되는지 여부를 나타냅니다. `SupportedIpAddressTypes`는 지원되는 IP 주소 유형을 나타냅니다.

```
{
    "ServiceDetails": [
        {
            "ServiceName": "com.amazonaws.us-east-1.monitoring",
            "ServiceId": "vpce-svc-0fc975f3e7e5beba4",
            "ServiceType": [
                {
                    "ServiceType": "Interface"
                }
            ],
            "AvailabilityZones": [
                "us-east-1a",
                "us-east-1b",
                "us-east-1c",
                "us-east-1d",
                "us-east-1e",
                "us-east-1f"
            ],
            "Owner": "amazon",
            "BaseEndpointDnsNames": [
                "monitoring.us-east-1.vpce.amazonaws.com"
            ],
            "PrivateDnsName": "monitoring.us-east-1.amazonaws.com",
            "PrivateDnsNames": [
                {
                    "PrivateDnsName": "monitoring.us-east-1.amazonaws.com"
                },
                {
                    "PrivateDnsName": "monitoring.us-east-1.api.aws"
                },
                {
                    "PrivateDnsName": "monitoring-fips.us-east-1.amazonaws.com"
                },
                {
                    "PrivateDnsName": "monitoring-fips.us-east-1.api.aws"
                }            ],
            "VpcEndpointPolicySupported": true,
            "AcceptanceRequired": false,
            "ManagesVpcEndpoints": false,
            "Tags": [],
            "PrivateDnsNameVerificationState": "verified",
            "SupportedIpAddressTypes": [
                "ipv6",
                "ipv4"
            ]
        }
    ],
    "ServiceNames": [
        "com.amazonaws.us-east-1.monitoring"
    ]
}
```

## 엔드포인트 정책 지원 보기
<a name="vpce-endpoint-policy-support"></a>

서비스가 [엔드포인트 정책](vpc-endpoints-access.md)을 지원하는지 확인하려면 [describe-vpc-endpoint-services](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-vpc-endpoint-services.html) 명령을 호출하고 `VpcEndpointPolicySupported`의 값을 확인합니다. 가능한 값은 `true`와 `false`입니다.

다음 예는 지정된 리전에서 지정된 서비스가 엔드포인트 정책을 지원하는지 확인합니다. `--query` 옵션은 출력을 `VpcEndpointPolicySupported`의 값으로 제한합니다.

```
aws ec2 describe-vpc-endpoint-services \
  --service-name "com.amazonaws.us-east-1.s3" \
  --region us-east-1 \
  --query ServiceDetails[*].VpcEndpointPolicySupported \
  --output text
```

다음은 예제 출력입니다.

```
True
```

다음 예제에서는 지정된 리전에서 엔드포인트 정책을 AWS 서비스 지원하는를 나열합니다. 이 `--query` 옵션은 출력을 서비스 이름으로 제한합니다. Windows 명령 프롬프트를 사용하여 이 명령을 실행하려면 쿼리 문자열 앞뒤의 작은따옴표를 제거하고 줄 연속 문자를 \$1에서 ^으로 변경합니다.

```
aws ec2 describe-vpc-endpoint-services \
  --filters Name=service-type,Values=Interface Name=owner,Values=amazon \
  --region us-east-1 \
  --query 'ServiceDetails[?VpcEndpointPolicySupported==`true`].ServiceName'
```

다음은 예제 출력입니다. 전체 출력은 표시되지 않습니다.

```
[
    "api.aws.us-east-1.cassandra-streams",
    "aws.api.us-east-1.bcm-data-exports",
    "aws.api.us-east-1.emr-service-cell01",
    "aws.api.us-east-1.freetier",
    "aws.api.us-east-1.kendra-ranking",
    . . .
    "com.amazonaws.us-east-1.xray"
]
```

다음 예제에서는 지정된 리전에서 엔드포인트 정책을 지원하지 AWS 서비스 않는를 나열합니다. 이 `--query` 옵션은 출력을 서비스 이름으로 제한합니다. Windows 명령 프롬프트를 사용하여 이 명령을 실행하려면 쿼리 문자열 앞뒤의 작은따옴표를 제거하고 줄 연속 문자를 \$1에서 ^으로 변경합니다.

```
aws ec2 describe-vpc-endpoint-services \
  --filters Name=service-type,Values=Interface Name=owner,Values=amazon \
  --region us-east-1 \
  --query 'ServiceDetails[?VpcEndpointPolicySupported==`false`].ServiceName'
```

다음은 예제 출력입니다. 전체 출력은 표시되지 않습니다.

```
[
    "com.amazonaws.us-east-1.appmesh-envoy-management",
    "com.amazonaws.us-east-1.apprunner.requests",
    "com.amazonaws.us-east-1.appstream.api",
    "com.amazonaws.us-east-1.appstream.streaming",
    "com.amazonaws.us-east-1.awsconnector",
    . . .
    "com.amazonaws.us-east-1.transfer.server"
]
```

## IPv6 지원 보기
<a name="vpce-ipv6-support"></a>

 AWS 서비스에 대한 IPv6 지원을 보려면 [AWS IPv6를 지원하는 서비스를](https://docs.aws.amazon.com/vpc/latest/userguide/aws-ipv6-support.html#ipv6-service-support) 참조하세요. 다음 [describe-vpc-endpoint-services](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-vpc-endpoint-services.html) 명령을 사용하여 지정된 리전에서 IPv6를 통해 액세스할 수 AWS 서비스 있는를 볼 수도 있습니다. 이 `--query` 옵션은 출력을 서비스 이름으로 제한합니다.

```
aws ec2 describe-vpc-endpoint-services \
  --filters Name=supported-ip-address-types,Values=ipv6 Name=owner,Values=amazon Name=service-type,Values=Interface \
  --region us-east-1 \
  --query ServiceNames
```

다음은 예제 출력입니다. 전체 출력은 표시되지 않습니다.

```
[
    "api.aws.us-east-1.cassandra-streams",
    "aws.api.us-east-1.bcm-data-exports",
    "aws.api.us-east-1.freetier",
    "aws.api.us-east-1.kendra-ranking",
    "aws.api.us-east-1.qbusiness",
    "aws.api.us-east-1.resource-explorer-2",
    "aws.api.us-east-1.resource-explorer-2-fips",
    "aws.sagemaker.us-east-1.experiments",
    "aws.sagemaker.us-east-1.partner-app",
    "com.amazonaws.iam",
    "com.amazonaws.us-east-1.access-analyzer",
    "com.amazonaws.us-east-1.account",
    . . .
    "com.amazonaws.us-east-1.xray"
]
```

# 교차 리전 활성화됨 AWS 서비스
<a name="aws-services-cross-region-privatelink-support"></a>

다음은 교차 리전과 AWS 서비스 통합됩니다 AWS PrivateLink. 인터페이스 엔드포인트를 생성하여 자체 VPC에서 실행 중인 것처럼 다른 AWS 리전의 이러한 서비스에 비공개로 연결할 수 있습니다.

**AWS 서비스** 열에서 링크를 선택하면 서비스 설명서를 볼 수 있습니다. **서비스 이름** 열에는 인터페이스 엔드포인트를 생성할 때 지정하는 서비스 이름이 포함됩니다.

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/vpc/latest/privatelink/aws-services-cross-region-privatelink-support.html)

## 사용 가능한 AWS 서비스 이름 보기
<a name="vpce-view-available-services"></a>

[describe-vpc-endpoint-services](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-vpc-endpoint-services.html) 명령을 사용하여 리전 간 지원 서비스를 볼 수 있습니다.

다음 예제에서는 `us-east-1` 리전의 사용자가 인터페이스 엔드포인트를 통해 지정된 (`us-west-2`) 서비스 리전에 액세스할 수 AWS 서비스 있는를 표시합니다. 이 `--query` 옵션은 출력을 서비스 이름으로 제한합니다.

```
aws ec2 describe-vpc-endpoint-services \
  --filters Name=service-type,Values=Interface Name=owner,Values=amazon \ 
  --region us-east-1 \
  --service-region us-west-2 \
  --query ServiceNames
```

다음은 예제 출력입니다. 전체 출력은 표시되지 않습니다.

```
[
    "com.amazonaws.us-west-2.ecr.api",
    "com.amazonaws.us-west-2.ecr.dkr",
    "com.amazonaws.us-west-2.ecs",
    "com.amazonaws.us-west-2.ecs-fips",
    ...
    "com.amazonaws.us-west-2.s3"
]
```

**참고**  
리전 DNS를 사용해야 합니다. 다른 리전 AWS 서비스 에서에 액세스할 때는 영역 DNS가 지원되지 않습니다. 자세한 내용은 Amazon VPC 사용 설명서의 [DNS 속성 보기 및 업데이트를](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-dns.html#vpc-dns-updating) 참조하세요.

## 권한 및 고려 사항
<a name="endpoint-aws-service-cross-region"></a>
+ 기본적으로 IAM 엔터티에는 다른 리전의 AWS 서비스 에 액세스할 수 있는 권한이 없습니다. 리전 간 액세스에 필요한 권한을 부여하기 위해 IAM 관리자는 `vpce:AllowMultiRegion` 권한 전용 작업을 허용하는 IAM 정책을 생성할 수 있습니다.
+ 서비스 제어 정책(SCP)이 `vpce:AllowMultiRegion` 권한 전용 작업을 거부하지 않는지 확인합니다. AWS PrivateLink의 교차 리전 연결 기능을 사용하려면 자격 증명 정책과 SCP가 모두이 작업을 허용해야 합니다.
+ VPC 엔드포인트를 생성할 때 IAM 엔터티가 지정할 수 있는 서비스 리전을 제어하려면 `ec2:VpceServiceRegion` 조건 키를 사용합니다.
+ 서비스 소비자는 엔드포인트의 서비스 리전으로 선택하기 전에 해당 옵트인 리전에 참여해야 합니다. 가능한 경우, 서비스 소비자는 리전 내 연결을 통해 서비스를 액세스하는 것이 교차 리전 연결보다 권장됩니다. 리전 내 연결은 지연 시간이 짧고 비용이 적게 듭니다.
+ IAM의 새로운 `aws:SourceVpcArn` 전역 조건 키를 사용하여 리소스에 액세스할 수 있는 리전 AWS 계정 및 VPCs 보호할 수 있습니다. 이 키는 데이터 레지던시 및 리전 기반 액세스 제어를 구현하는 데 도움이 됩니다.
+ 고가용성을 위해 두 개 이상의 가용 영역에 교차 리전 지원 인터페이스 엔드포인트를 생성합니다. 이 경우 공급자와 소비자가 동일한 가용 영역을 사용할 필요는 없습니다.
+ 교차 리전 액세스를 통해는 서비스 및 소비자 리전 모두에서 가용 영역 간의 장애 조치를 AWS PrivateLink 관리합니다. 교차 리전 장애 조치는 관리하지 않습니다.
+ 리전 간 액세스는 `use1-az3`, , `usw1-az2`, 및 가용 영역에서 지원되지 않습니다`apne1-az3``apne2-az2``apne2-az4`.
+  AWS Fault Injection Service 를 사용하여 리전 내 및 리전 간 활성화 인터페이스 엔드포인트에 대한 리전 이벤트 및 모델 장애 시나리오를 시뮬레이션할 수 있습니다. 자세한 내용은 [AWS FIS 설명서를](https://docs.aws.amazon.com/fis/latest/userguide/fis-actions-reference.html#network-actions-reference) 참조하세요.

## 다른 리전 AWS 서비스 의에 대한 인터페이스 엔드포인트 생성
<a name="create-cross-region-vpce"></a>

콘솔을 사용하여 인터페이스 엔드포인트를 생성하려면 [VPC 엔드포인트 생성](https://docs.aws.amazon.com/vpc/latest/userguide/create-interface-endpoint.html#create-interface-endpoint-aws) 섹션을 참조하세요.

CLI에서 [create-vpc-endpoint](https://docs.aws.amazon.com/cli/latest/reference/ec2/create-vpc-endpoint.html) 명령을 사용하여 다른 리전의 AWS 서비스 에 대한 VPC 엔드포인트를 생성할 수 있습니다. 다음 예제에서는의 VPC`us-west-2`에서의 Amazon S3에 대한 인터페이스 엔드포인트를 생성합니다`us-east-1`.

```
aws ec2 create-vpc-endpoint \
  --vpc-id vpc-id \ 
  --service-name com.amazonaws.us-west-2.s3 \
  --vpc-endpoint-type Interface \
  --subnet-ids subnet-id-1 subnet-id-2 \ 
  --region us-east-1 \
  --service-region us-west-2
```

# 인터페이스 VPC 엔드포인트를 AWS 서비스 사용하여에 액세스
<a name="create-interface-endpoint"></a>

인터페이스 VPC 엔드포인트를 생성하여 여러를 AWS PrivateLink포함하여 기반 서비스에 연결할 수 있습니다 AWS 서비스. 개요는 [AWS PrivateLink 개념](concepts.md) and [를 AWS 서비스 통한 액세스 AWS PrivateLink](privatelink-access-aws-services.md)을(를) 참조하세요.

VPC에서 지정하는 각 서브넷에 대해 서브넷에 엔드포인트 네트워크 인터페이스가 생성되고 해당 인터페이스에 서브넷 주소 범위의 프라이빗 IP 주소가 할당됩니다. 엔드포인트 네트워크 인터페이스는 요청자가 관리하는 네트워크 인터페이스로, AWS 계정에서 확인할 수 있지만 직접 관리할 수는 없습니다.

이용 시 시간당 사용 요금 및 데이터 처리 요금이 청구됩니다. 자세한 내용은 [인터페이스 엔드포인트 요금](https://aws.amazon.com/privatelink/pricing/#Interface_Endpoint_pricing)을 참조하세요.

**Topics**
+ [사전 조건](#prerequisites-interface-endpoints)
+ [VPC 엔드포인트 생성](#create-interface-endpoint-aws)
+ [공유 서브넷](#interface-endpoint-shared-subnets)
+ [ICMP](#interface-endpoint-icmp)

## 사전 조건
<a name="prerequisites-interface-endpoints"></a>
+ VPC에서 AWS 서비스 에 액세스할 리소스를 배포합니다.
+ 프라이빗 DNS를 사용하려면 VPC에 대해 DNS 호스트 이름 및 DNS 확인을 활성화해야 합니다. 자세한 내용은 *Amazon VPC 사용 설명서*의 [DNS 속성 보기 및 업데이트](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-dns.html#vpc-dns-updating)를 참조하세요.
+ 인터페이스 엔드포인트에 대해 IPv6를 활성화하려면가 IPv6를 통한 액세스를 지원 AWS 서비스 해야 합니다. 자세한 내용은 [IP 주소 유형](privatelink-access-aws-services.md#aws-service-ip-address-type) 단원을 참조하십시오.
+ VPC의 리소스에서 예상되는 트래픽을 허용하도록 엔드포인트 네트워크 인터페이스에 대한 보안 그룹 규칙을 생성합니다. 예를 들어가에 HTTPS 요청을 보낼 AWS CLI 수 있도록 하려면 AWS 서비스보안 그룹이 인바운드 HTTPS 트래픽을 허용해야 합니다.
+ 리소스가 네트워크 ACL를 사용하는 서브넷에 있는 경우 네트워크 ACL에서 VPC의 리소스와 엔드포인트 네트워크 인터페이스 간 트래픽을 허용하는지 확인합니다.
+  AWS PrivateLink 리소스에는 할당량이 있습니다. 자세한 내용은 [AWS PrivateLink 할당량](vpc-limits-endpoints.md) 단원을 참조하십시오.

## VPC 엔드포인트 생성
<a name="create-interface-endpoint-aws"></a>

다음 절차에 따라 AWS 서비스에 연결하는 인터페이스 VPC 엔드포인트를 생성합니다.

**에 대한 인터페이스 엔드포인트를 생성하려면 AWS 서비스**

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

1. 탐색 창에서 **엔드포인트**를 선택합니다.

1. **엔드포인트 생성**을 선택합니다.

1. **유형**에서 **AWS 서비스**를 선택합니다.

1. (선택 사항) 다른 리전 AWS 서비스 의에 대한 엔드포인트를 생성하는 경우 **교차 리전 엔드포인트 활성화** 확인란을 선택한 다음 드롭다운에서 **서비스 리전**을 선택합니다.

1. **서비스 이름(Service name)**에서 서비스를 선택합니다. 자세한 내용은 [AWS 서비스 와 통합되는 AWS PrivateLink](aws-services-privatelink-support.md) 단원을 참조하십시오.

1. **VPC**에서 AWS 서비스에 액세스하는 데 사용할 VPC를 선택합니다.

1. 5단계에서 Amazon S3 서비스 이름을 선택한 경우 [프라이빗 DNS 지원](vpc-endpoints-s3.md#private-dns-s3)을 구성하려면 **추가 설정**인 **DNS 이름 활성화**를 선택합니다. 이 옵션을 선택하면 **인바운드 엔드포인트에 대해서만 프라이빗 DNS 활성화**도 자동으로 선택됩니다. Amazon S3 인터페이스 엔드포인트에 대해서만 인바운드 Resolver 엔드포인트를 사용하여 프라이빗 DNS를 구성할 수 있습니다. Amazon S3용 게이트웨이 엔드포인트가 없는 상태에서 **인바운드 엔드포인트에 프라이빗 DNS만 활성화**를 선택하면 이 절차의 마지막 단계를 시도할 때 오류가 발생합니다.

   5단계에서 Amazon S3가 아닌 다른 서비스의 서비스 이름을 선택한 경우 **추가 설정**인 **DNS 이름 활성화**가 이미 선택되어 있습니다. 기본값을 그대로 유지하는 것이 좋습니다. 이렇게 하면 AWS SDK를 통한 요청과 같이 퍼블릭 서비스 엔드포인트를 사용하는 요청이 VPC 엔드포인트로 확인됩니다.

1. **서브넷**에서 엔드포인트 네트워크 인터페이스를 생성할 서브넷을 선택합니다. 가용 영역당 서브넷 한 개를 선택할 수 있습니다. 동일한 가용 영역에서 여러 서브넷을 선택할 수 없습니다. 자세한 내용은 [서브넷 및 가용 영역](privatelink-access-aws-services.md#aws-service-subnets-zones) 단원을 참조하십시오.

   기본적으로 서브넷 IP 주소 범위의 IP 주소를 선택하고 엔드포인트 네트워크 인터페이스에 할당합니다. IP 주소를 직접 선택하려면 **IP 주소 지정**을 선택합니다. 서브넷 CIDR 블록의 처음 4개의 IP 주소와 마지막 IP 주소는 내부용으로 예약되어 있으므로 엔드포인트 네트워크 인터페이스에 지정할 수 없습니다.

1. **IP 주소 유형**에서 다음 옵션 중에서 선택합니다.
   + **IPv4** - 엔드포인트 네트워크 인터페이스에 IPv4 주소를 할당합니다. 이 옵션은 선택한 모든 서브넷에 IPv4 주소 범위가 있으며 서비스가 IPv4 요청을 수락하는 경우에만 지원됩니다.
   + **IPv6** - 엔드포인트 네트워크 인터페이스에 IPv6 주소를 할당합니다. 이 옵션은 선택한 모든 서브넷이 IPv6 전용 서브넷이며 서비스가 IPv6 요청을 수락하는 경우에만 지원됩니다.
   + **듀얼 스택** - 엔드포인트 네트워크 인터페이스에 IPv4 및 IPv6 주소를 모두 할당합니다. 이 옵션은 선택한 모든 서브넷에 IPv4 및 IPv6 주소 범위가 모두 있으며 서비스가 IPv4 및 IPv6 요청을 모두 수락하는 경우에만 지원됩니다.

1. **보안 그룹**에서 엔드포인트 네트워크 인터페이스에 연결할 보안 그룹을 선택합니다. 기본적으로 VPC에 대한 기본 보안 그룹이 연결됩니다.

1. **정책**에서 인터페이스 엔드포인트를 통해 모든 보안 주체가 모든 리소스에 대해 모든 작업을 수행할 수 있도록 허용하려면 **전체 액세스**를 선택합니다. 액세스를 제한하려면 **사용자 지정**을 선택하고 정책을 입력합니다. 이 옵션은 서비스에서 VPC 엔드포인트 정책을 지원하는 경우에만 사용할 수 있습니다. 자세한 내용은 [엔드포인트 정책](vpc-endpoints-access.md) 단원을 참조하십시오.

1. (선택 사항) 태그를 추가하려면 **새 태그 추가**를 선택하고 태그 키와 태그 값을 입력합니다.

1. **엔드포인트 생성**을 선택합니다.

**명령줄을 사용하여 인터페이스 엔드포인트 생성하기**
+ [create-vpc-endpoint](https://docs.aws.amazon.com/cli/latest/reference/ec2/create-vpc-endpoint.html)(AWS CLI)
+ [New-EC2VpcEndpoint](https://docs.aws.amazon.com/powershell/latest/reference/items/New-EC2VpcEndpoint.html)(Windows PowerShell용 도구)

## 공유 서브넷
<a name="interface-endpoint-shared-subnets"></a>

공유하는 서브넷의 VPC 엔드포인트는 생성, 설명, 수정 또는 삭제할 수 없습니다. 그러나 공유하는 서브넷의 VPC 엔드포인트를 사용할 수는 있습니다.

## ICMP
<a name="interface-endpoint-icmp"></a>

인터페이스 엔드포인트는 **ping** 요청에 응답하지 않습니다. 대신 **nc** 또는 **nmap** 명령을 사용할 수 있습니다.

# 인터페이스 엔드포인트 구성
<a name="interface-endpoints"></a>

인터페이스 VPC 엔드포인트를 생성한 후 해당 구성을 업데이트할 수 있습니다.

**Topics**
+ [서브넷 추가 또는 제거](#add-remove-subnets)
+ [보안 그룹 연결](#associate-security-groups)
+ [VPC 엔드포인트 정책 편집](#edit-vpc-endpoint-policy)
+ [프라이빗 DNS 이름 활성화](#enable-private-dns-names)
+ [태그 관리](#add-remove-interface-endpoint-tags)

## 서브넷 추가 또는 제거
<a name="add-remove-subnets"></a>

인터페이스 엔드포인트에 대해 가용 영역당 1개의 서브넷만 선택할 수 있습니다. 서브넷을 추가하면 서브넷에 엔드포인트 네트워크 인터페이스가 생성되고 해당 인터페이스에 서브넷 IP 주소 범위의 프라이빗 IP 주소가 할당됩니다. 서브넷을 제거하면 엔드포인트 네트워크 인터페이스가 삭제됩니다. 자세한 내용은 [서브넷 및 가용 영역](privatelink-access-aws-services.md#aws-service-subnets-zones) 단원을 참조하십시오.

**콘솔을 사용하여 서브넷 변경하기**

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

1. 탐색 창에서 **엔드포인트**를 선택합니다.

1. 인터페이스 엔드포인트를 선택합니다.

1. **작업(Actions)**, **서브넷 관리(Manage subnets)**를 선택합니다.

1. 필요에 따라 가용 영역을 선택하거나 선택 취소합니다. 가용 영역마다 서브넷을 하나씩 선택합니다. 기본적으로 서브넷 IP 주소 범위의 IP 주소를 선택하고 엔드포인트 네트워크 인터페이스에 할당합니다. 엔드포인트 네트워크 인터페이스에 대한 IP 주소를 선택하려면 **IP 주소 지정**을 선택하고 서브넷 주소 범위의 IPv4 주소를 입력합니다. 엔드포인트 서비스에서 IPv6를 지원하는 경우 서브넷 주소 범위의 IPv6 주소를 입력할 수도 있습니다.

   이 VPC 엔드포인트에 대한 엔드포인트 네트워크 인터페이스가 이미 있는 서브넷의 IP 주소를 지정하면 엔드포인트 네트워크 인터페이스가 새 엔드포인트 네트워크 인터페이스로 바뀝니다. 이 프로세스는 일시적으로 서브넷과 VPC 엔드포인트 연결을 해제합니다.

1. **서브넷 수정(Modify subnets)**을 선택합니다.

**명령줄을 사용하여 서브넷 변경하기**
+ [modify-vpc-endpoint](https://docs.aws.amazon.com/cli/latest/reference/ec2/modify-vpc-endpoint.html)(AWS CLI)
+ [Edit-EC2VpcEndpoint](https://docs.aws.amazon.com/powershell/latest/reference/items/Edit-EC2VpcEndpoint.html)(Windows PowerShell용 도구)

## 보안 그룹 연결
<a name="associate-security-groups"></a>

인터페이스 엔드포인트의 네트워크 인터페이스와 연결된 보안 그룹을 변경할 수 있습니다. 보안 그룹 규칙은 VPC의 리소스에서 엔드포인트 네트워크 인터페이스 간에 허용되는 트래픽을 제어합니다.

**콘솔을 사용하여 보안 그룹 변경하기**

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

1. 탐색 창에서 **엔드포인트**를 선택합니다.

1. 인터페이스 엔드포인트를 선택합니다.

1. **작업(Actions)**, **보안 그룹 관리(Manage security groups)**를 선택합니다.

1. 필요에 따라 보안 그룹을 선택하거나 선택 취소합니다.

1. **보안 그룹 수정(Modify security groups)**을 선택합니다.

**명령줄을 사용하여 보안 그룹 변경하기**
+ [modify-vpc-endpoint](https://docs.aws.amazon.com/cli/latest/reference/ec2/modify-vpc-endpoint.html)(AWS CLI)
+ [Edit-EC2VpcEndpoint](https://docs.aws.amazon.com/powershell/latest/reference/items/Edit-EC2VpcEndpoint.html)(Windows PowerShell용 도구)

## VPC 엔드포인트 정책 편집
<a name="edit-vpc-endpoint-policy"></a>

가 엔드포인트 정책을 AWS 서비스 지원하는 경우 엔드포인트에 대한 엔드포인트 정책을 편집할 수 있습니다. 엔드포인트 정책을 업데이트할 경우 변경 사항이 적용되기까지 몇 분 정도 걸릴 수 있습니다. 자세한 내용은 [엔드포인트 정책](vpc-endpoints-access.md) 단원을 참조하십시오.

**콘솔을 사용하여 엔드포인트 정책 변경**

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

1. 탐색 창에서 **엔드포인트**를 선택합니다.

1. 인터페이스 엔드포인트를 선택합니다.

1. **작업(Actions)**, **정책 관리(Manage policy)**를 선택합니다.

1. **모든 액세스(Full Access)**를 선택하여 서비스에 대한 전체 액세스를 허용하거나 **사용자 지정(Custom)**을 선택하고 사용자 지정 정책을 연결합니다.

1. **저장**을 선택합니다.

**명령줄을 사용하여 엔드포인트 정책 변경하기**
+ [modify-vpc-endpoint](https://docs.aws.amazon.com/cli/latest/reference/ec2/modify-vpc-endpoint.html)(AWS CLI)
+ [Edit-EC2VpcEndpoint](https://docs.aws.amazon.com/powershell/latest/reference/items/Edit-EC2VpcEndpoint.html)(Windows PowerShell용 도구)

## 프라이빗 DNS 이름 활성화
<a name="enable-private-dns-names"></a>

 AWS 서비스용 VPC 엔드포인트에 프라이빗 DNS 이름을 사용하는 것이 좋습니다. 이렇게 하면 AWS SDK를 통한 요청과 같이 퍼블릭 서비스 엔드포인트를 사용하는 요청이 VPC 엔드포인트로 확인됩니다.

프라이빗 DNS를 사용하려면 VPC에 대해 [DNS 호스트 이름 및 DNS 확인](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-dns.html#vpc-dns-updating)을 모두 활성화해야 합니다. 프라이빗 DNS를 활성화하면 프라이빗 IP 주소를 사용할 수 있게 되기까지 몇 분 정도 걸릴 수 있습니다. 프라이빗 DNS 이름을 활성화할 때 생성되는 DNS 레코드는 프라이빗입니다. 따라서 프라이빗 DNS 이름은 공개적으로 확인할 수 없습니다.

**콘솔을 사용하여 프라이빗 DNS 이름 옵션 변경하기**

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

1. 탐색 창에서 **엔드포인트**를 선택합니다.

1. 인터페이스 엔드포인트를 선택합니다.

1. **작업(Actions)**, **프라이빗 DNS 이름 수정(Modify private DNS name)**을 차례로 선택합니다.

1. 필요에 따라 **이 엔드포인트에 대해 활성화(Enable for this endpoint)**를 선택하거나 선택 취소합니다.

1. 서비스가 Amazon S3인 경우 이전 단계에서 **이 엔드포인트에 대해 활성화**를 선택하면 **인바운드 엔드포인트에 대해서만 프라이빗 DNS 활성화**도 선택됩니다. 표준 프라이빗 DNS 기능을 선호하는 경우 **인바운드 엔드포인트에 프라이빗 DNS만 활성화**를 선택 해제하세요. Amazon S3용 인터페이스 엔드포인트 외에 Amazon S3용 게이트웨이 엔드포인트가 없는 경우 **인바운드 엔드포인트에 대해서만 프라이빗 DNS 활성화**를 선택하면 다음 단계에서 변경 사항을 저장할 때 오류가 발생합니다. 자세한 내용은 [프라이빗 DNS](vpc-endpoints-s3.md#private-dns-s3) 단원을 참조하십시오.

1. **변경 사항 저장**을 선택합니다.

**명령줄을 사용하여 프라이빗 DNS 이름 옵션 변경하기**
+ [modify-vpc-endpoint](https://docs.aws.amazon.com/cli/latest/reference/ec2/modify-vpc-endpoint.html)(AWS CLI)
+ [Edit-EC2VpcEndpoint](https://docs.aws.amazon.com/powershell/latest/reference/items/Edit-EC2VpcEndpoint.html)(Windows PowerShell용 도구)

## 태그 관리
<a name="add-remove-interface-endpoint-tags"></a>

인터페이스 엔드포인트에 태그를 지정하면 조직의 요구에 따라 엔드포인트를 식별하거나 분류하는 데 도움을 얻을 수 있습니다.

**콘솔을 사용하여 태그 관리하기**

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

1. 탐색 창에서 **엔드포인트**를 선택합니다.

1. 인터페이스 엔드포인트를 선택합니다.

1. **작업**, **태그 관리**를 선택합니다.

1. 추가할 각 태그에 대해 **새 태그 추가(Add new tag)**를 선택하고 태그 키와 태그 값을 입력합니다.

1. 태그를 제거하려면 태그 키 및 값 오른쪽에 있는 **제거(Remove)**를 선택합니다.

1. **저장**을 선택합니다.

**명령줄을 사용하여 태그 관리하기**
+ [create-tags](https://docs.aws.amazon.com/cli/latest/reference/ec2/create-tags.html) 및 [delete-tags](https://docs.aws.amazon.com/cli/latest/reference/ec2/delete-tags.html)(AWS CLI)
+ [New-EC2Tag](https://docs.aws.amazon.com/powershell/latest/reference/items/New-EC2Tag.html) 및 [Remove-EC2Tag](https://docs.aws.amazon.com/powershell/latest/reference/items/Remove-EC2Tag.html)(Windows PowerShell용 도구)

# 인터페이스 엔드포인트 이벤트에 대한 알림 받기
<a name="manage-notifications-endpoint"></a>

인터페이스 엔드포인트와 관련된 특정 이벤트에 대한 알림을 받도록 알림을 생성할 수 있습니다. 연결 요청이 수락되거나 거부될 때 이메일을 수신할 수 있습니다.

**Topics**
+ [SNS 알림 생성](#create-sns-notification)
+ [액세스 정책 추가](#add-access-policy)
+ [키 정책 추가](#add-key-policy)

## SNS 알림 생성
<a name="create-sns-notification"></a>

다음 절차를 활용하여 알림을 위한 Amazon SNS 주제를 생성하고 해당 주제를 구독합니다.

**콘솔을 사용하여 인터페이스 엔드포인트에 대한 알림 생성하기**

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

1. 탐색 창에서 **엔드포인트**를 선택합니다.

1. 인터페이스 엔드포인트를 선택합니다.

1. **알림(Notifications)** 탭에서 **알림 생성(Create notification)**을 선택합니다.

1. **알림 ARN**에서 생성한 SNS 토픽의 [Amazon 리소스 이름](https://docs.aws.amazon.com/glossary/latest/reference/glos-chap.html#ARN)(ARN)을 선택합니다.

1. 이벤트를 구독하려면 **Events**(이벤트)에서 이벤트를 선택합니다.
   + **Connect**(연결) - 서비스 소비자가 인터페이스 엔드포인트를 생성했습니다. 이 경우 연결 요청이 서비스 공급자에 전송됩니다.
   + **허용(Accept)** - 서비스 공급자가 연결 요청을 수락했습니다.
   + **Reject**(거부) – 서비스 공급자가 연결 요청을 거부했습니다.
   + **Delete**(삭제) – 서비스 소비자가 인터페이스 엔드포인트를 삭제했습니다.

1. **알림 생성(Create notification)**을 선택합니다.

**명령줄을 사용하여 인터페이스 엔드포인트에 대한 알림 생성하기**
+ [create-vpc-endpoint-connection-notification](https://docs.aws.amazon.com/cli/latest/reference/ec2/create-vpc-endpoint-connection-notification.html)(AWS CLI)
+ [New-EC2VpcEndpointConnectionNotification](https://docs.aws.amazon.com/powershell/latest/reference/items/New-EC2VpcEndpointConnectionNotification.html)(Windows PowerShell용 도구)

## 액세스 정책 추가
<a name="add-access-policy"></a>

가 다음과 같이 사용자를 대신하여 알림을 AWS PrivateLink 게시할 수 있도록 허용하는 액세스 정책을 Amazon SNS 주제에 추가합니다. 자세한 내용은 [내 Amazon SNS 주제의 액세스 정책을 편집하려면 어떻게 해야 합니까?](https://repost.aws/knowledge-center/sns-edit-topic-access-policy)를 참조하세요. [혼동된 대리자 문제](https://docs.aws.amazon.com/IAM/latest/UserGuide/confused-deputy.html)를 방지하기 위해 `aws:SourceArn` 및 `aws:SourceAccount` 전역 조건 키를 사용합니다.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "Service": "vpce.amazonaws.com"
            },
            "Action": "SNS:Publish",
            "Resource": "arn:aws:sns:us-east-1:111111111111:topic-name",
            "Condition": {
                "ArnLike": {
                    "aws:SourceArn": "arn:aws:ec2:us-east-1:111111111111:vpc-endpoint/endpoint-id"
                },
                "StringEquals": {
                    "aws:SourceAccount": "111111111111"
                }
            }
        }
    ]
}
```

------

## 키 정책 추가
<a name="add-key-policy"></a>

암호화된 SNS 주제를 사용하는 경우 KMS 키의 리소스 정책은 AWS KMS API 작업을 호출 AWS PrivateLink 하기 위해를 신뢰해야 합니다. 다음은 예제 키 정책입니다.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "Service": "vpce.amazonaws.com"
            },
            "Action": [
                "kms:GenerateDataKey*",
                "kms:Decrypt"
            ],
            "Resource": "arn:aws:kms:us-east-1:111111111111:key/key-id",
            "Condition": {
                "ArnLike": {
                    "aws:SourceArn": "arn:aws:ec2:us-east-1:111111111111:vpc-endpoint/endpoint-id"
                },
                "StringEquals": {
                    "aws:SourceAccount": "111111111111"
                }
            }
        }
    ]
}
```

------

# 인터페이스 엔드포인트 삭제
<a name="delete-interface-endpoint"></a>

VPC 엔드포인트 사용을 마치면 엔드포인트를 삭제할 수 있습니다. 인터페이스 엔드포인트를 삭제하면 해당 엔드포인트 네트워크 인터페이스도 삭제됩니다.

**콘솔을 사용하여 인터페이스 엔드포인트 삭제하기**

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

1. 탐색 창에서 **엔드포인트**를 선택합니다.

1. 인터페이스 엔드포인트를 선택합니다.

1. **작업(Actions)**, **VPC 엔드포인트 삭제(Delete VPC endpoints)**를 차례로 선택합니다.

1. 확인 메시지가 표시되면 **delete**를 입력합니다.

1. **삭제**를 선택합니다.

**명령줄을 사용하여 인터페이스 엔드포인트 삭제하기**
+ [delete-vpc-endpoints](https://docs.aws.amazon.com/cli/latest/reference/ec2/delete-vpc-endpoints.html)(AWS CLI)
+ [Remove-EC2VpcEndpoint](https://docs.aws.amazon.com/powershell/latest/reference/items/Remove-EC2VpcEndpoint.html)(Windows PowerShell용 도구)

# 게이트웨이 엔드포인트
<a name="gateway-endpoints"></a>

게이트웨이 VPC 엔드포인트를 사용하면 VPC용 인터넷 게이트웨이 또는 NAT 디바이스가 없어도 Amazon S3 및 DynamoDB에 안정적으로 연결할 수 있습니다. 게이트웨이 엔드포인트는 다른 유형의 VPC 엔드포인트와 AWS PrivateLink달리를 사용하지 않습니다.

Amazon S3와 DynamoDB는 게이트웨이 엔드포인트와 인터페이스 엔드포인트를 모두 지원합니다. 옵션에 대한 비교는 다음을 참조하세요.
+ [Amazon S3용 VPC 엔드포인트의 유형](https://docs.aws.amazon.com/AmazonS3/latest/userguide/privatelink-interface-endpoints.html#types-of-vpc-endpoints-for-s3)
+ [Amazon DynamoDB용 VPC 엔드포인트의 유형](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/privatelink-interface-endpoints.html#types-of-vpc-endpoints-for-ddb)

**가격 책정**  
게이트웨이 엔드포인트 사용에 따르는 추가 요금은 없습니다.

**Topics**
+ [개요](#gateway-endpoint-overview)
+ [라우팅](#gateway-endpoint-routing)
+ [보안](#gateway-endpoint-security)
+ [IP 주소 유형](#gateway-endpoint-ip-address-type)
+ [DNS 레코드 IP 유형](#gateway-endpoint-dns-record-ip-type)
+ [Amazon S3에 대한 엔드포인트](vpc-endpoints-s3.md)
+ [DynamoDB에 대한 엔드포인트](vpc-endpoints-ddb.md)

## 개요
<a name="gateway-endpoint-overview"></a>

Amazon S3와 DynamoDB는 퍼블릭 서비스 엔드포인트나 게이트웨이 엔드포인트를 통해 액세스할 수 있습니다. 이 개요에서는 두 방법을 비교합니다.

**인터넷 게이트웨이를 통한 액세스**  
다음 다이어그램은 인스턴스에서 퍼블릭 서비스 엔드포인트를 통해 Amazon S3 및 DynamoDB에 액세스하는 방법을 보여줍니다. 퍼블릭 서브넷의 인스턴스에서 Amazon S3 또는 DynamoDB로의 트래픽은 VPC의 인터넷 게이트웨이를 거쳐 서비스로 라우팅됩니다. 프라이빗 서브넷의 인스턴스는 Amazon S3 또는 DynamoDB로 트래픽을 전송할 수 없습니다. 기본적으로 프라이빗 서브넷에는 인터넷 게이트웨이에 대한 라우팅이 없기 때문입니다. 프라이빗 서브넷의 인스턴스에서 Amazon S3 또는 DynamoDB로 트래픽을 보내려면 퍼블릭 서브넷에 NAT 디바이스를 추가하고 프라이빗 서브넷의 트래픽을 NAT 디바이스로 라우팅합니다. Amazon S3 또는 DynamoDB로의 트래픽은 인터넷 게이트웨이를 통과하지만 AWS 네트워크를 벗어나지 않습니다.

![\[트래픽은 인터넷 게이트웨이를 통해 VPC를 떠나지만 AWS 네트워크에 남아 있습니다.\]](http://docs.aws.amazon.com/ko_kr/vpc/latest/privatelink/images/without-gateway-endpoints.png)


**게이트웨이 엔드포인트를 통한 액세스**  
다음 다이어그램은 인스턴스에서 게이트웨이 엔드포인트를 통해 Amazon S3 및 DynamoDB에 액세스하는 방법을 보여줍니다. VPC에서 Amazon S3 또는 DynamoDB로의 트래픽은 게이트웨이 엔드포인트로 라우팅됩니다. 각 서브넷 라우팅 테이블에는 서비스로 전송되는 트래픽을 서비스의 접두사 목록을 사용하여 게이트웨이 엔드포인트로 보내는 라우팅이 있어야 합니다. 자세한 내용은 *Amazon VPC 사용 설명서*의 [AWS관리형 접두사 목록](https://docs.aws.amazon.com/vpc/latest/userguide/working-with-aws-managed-prefix-lists.html)을 참조하세요.

![\[VPC에서 오는 트래픽은 게이트웨이 엔드포인트로 라우팅됩니다.\]](http://docs.aws.amazon.com/ko_kr/vpc/latest/privatelink/images/gateway-endpoints.png)


## 라우팅
<a name="gateway-endpoint-routing"></a>

게이트웨이 엔드포인트를 생성할 때 활성화하는 서브넷의 VPC 라우팅 테이블을 선택합니다. 선택하는 각 라우팅 테이블에는 다음 라우팅이 자동으로 추가됩니다. 대상은가 소유한 서비스의 접두사 목록 AWS 이고 대상은 게이트웨이 엔드포인트입니다.


| Destination | 대상 | 
| --- | --- | 
| prefix\$1list\$1id | gateway\$1endpoint\$1id | 

**고려 사항**
+ 라우팅 테이블에 추가된 엔드포인트 라우팅을 확인할 수 있지만 수정하거나 삭제할 수는 없습니다. 라우팅 테이블에 엔드포인트 라우팅을 추가하려면 테이블을 게이트웨이 엔드포인트와 연결합니다. 라우팅 테이블과 게이트웨이 엔드포인트의 연결을 해제하거나 게이트웨이 엔드포인트를 삭제하면 엔드포인트 라우팅이 삭제됩니다.
+ 게이트웨이 엔드포인트와 연결된 라우팅 테이블에 연결된 서브넷의 모든 인스턴스는 자동으로 해당 게이트웨이 엔드포인트를 사용하여 서비스에 액세스합니다. 이러한 라우팅 테이블과 연결되지 않은 서브넷의 인스턴스는 게이트웨이 엔드포인트가 아니라 퍼블릭 서비스 엔드포인트를 사용합니다.
+ 라우팅 테이블에는 Amazon S3에 대한 엔드포인트 라우팅과 DynamoDB에 대한 엔드포인트 라우팅이 모두 있을 수 있습니다. 동일한 서비스(Amazon S3 또는 DynamoDB)에 대한 엔드포인트 라우팅을 여러 라우팅 테이블에 추가할 수 있습니다. 하지만 동일한 서비스(Amazon S3 또는 DynamoDB)에 대한 여러 엔드포인트 라우팅을 하나의 라우팅 테이블에 추가할 수는 없습니다.
+ Amazon은 LPM(Longest Prefix Match)을 통해 트래픽과 일치하는 고도로 구체적인 라우팅을 사용하여 트래픽의 라우팅 방법을 결정합니다. 엔드포인트 라우팅이 포함된 라우팅 테이블의 경우 다음을 의미합니다.
  + 모든 인터넷 트래픽(0.0.0.0/0)을 인터넷 게이트웨이로 보내는 라우팅이 있는 경우 현재 리전에서 서비스(Amazon S3 또는 DynamoDB)로 전송되는 트래픽에 대해 엔드포인트 라우팅이 우선 적용됩니다. 다른 로 향하는 트래픽은 인터넷 게이트웨이를 AWS 서비스 사용합니다.
  + 접두사 목록은 리전에 따라 다르므로 다른 리전의 서비스(Amazon S3 또는 DynamoDB)로 전송되는 트래픽은 인터넷 게이트웨이로 이동됩니다.
  + 동일한 리전에서 서비스(Amazon S3 또는 DynamoDB)의 정확한 IP 주소 범위를 지정하는 라우팅이 있는 경우에는 해당 라우팅이 엔드포인트 라우팅보다 우선 적용됩니다.

## 보안
<a name="gateway-endpoint-security"></a>

인스턴스에서 게이트웨이 엔드포인트를 통해 Amazon S3 또는 DynamoDB에 액세스하는 경우 인스턴스에서 퍼블릭 엔드포인트를 사용하여 서비스에 액세스합니다. 이러한 인스턴스를 위한 보안 그룹은 로드 밸런서에서 이동하는 트래픽을 허용해야 합니다. 다음은 아웃바운드 예제입니다. 서비스의 [접두사 목록](https://docs.aws.amazon.com/vpc/latest/userguide/working-with-aws-managed-prefix-lists.html) ID를 참조합니다.


| Destination | 프로토콜 | 포트 범위 | 
| --- | --- | --- | 
| prefix\$1list\$1id | TCP | 443 | 

이러한 인스턴스의 서브넷에 대한 네트워크 ACL은 서비스에서 이동하는 트래픽을 허용해야 합니다. 다음은 아웃바운드 예제입니다. 네트워크 ACL 규칙에서 접두사 목록을 참조할 수는 없지만 접두사 목록에서 서비스의 IP 주소 범위를 가져올 수 있습니다.


| Destination | 프로토콜 | 포트 범위 | 
| --- | --- | --- | 
| service\$1cidr\$1block\$11 | TCP | 443 | 
| service\$1cidr\$1block\$12 | TCP | 443 | 
| service\$1cidr\$1block\$13 | TCP | 443 | 

## IP 주소 유형
<a name="gateway-endpoint-ip-address-type"></a>

IP 주소 유형은 라우팅 테이블에 연결되는 접두사 목록을 결정합니다.

**게이트웨이 엔드포인트에서 IPv6을 활성화하기 위한 요구 사항**
+ 게이트웨이 엔드포인트의 IP 주소 유형은 다음과 같이 엔드포인트에 사용할 서브넷과 호환되어야 합니다.
  + **IPv4** - 라우팅 테이블에 서비스의 IPv4 접두사 목록을 추가합니다.
  + **IPv6** - 라우팅 테이블에 서비스의 IPv6 접두사 목록을 추가합니다. 이 옵션은 선택한 모든 서브넷이 IPv6 전용 서브넷인 경우에만 지원됩니다.
  + **듀얼 스택** - 라우팅 테이블에 서비스의 IPv4 접두사 목록과 IPv6 접두사 목록을 모두 추가합니다. 이 옵션은 선택한 모든 서브넷에 IPv4 및 IPv6 주소 범위가 모두 있는 경우에만 지원됩니다.

## DNS 레코드 IP 유형
<a name="gateway-endpoint-dns-record-ip-type"></a>

기본적으로 게이트웨이 엔드포인트는 호출하는 서비스 엔드포인트를 기반으로 DNS 레코드를 반환합니다. 와 같은 IPv4 서비스 엔드포인트를 사용하여 게이트웨이 엔드포인트를 생성하는 경우 `s3.us-east-2.amazonaws.com` Amazon S3는 클라이언트에 A 레코드를 반환하고 라우팅 테이블의 모든 서브넷은 IPv4를 사용합니다.

반대로와 같은 듀얼 스택 서비스 엔드포인트를 사용하여 게이트웨이 엔드포인트를 생성하는 경우 `s3.dualstack.us-east-2.amazonaws.com` Amazon S3는 클라이언트에 A 및 AAAA 레코드를 모두 반환하고 라우팅 테이블의 서브넷은 IPv4 및 IPv6를 사용합니다.

**참고**  
디렉터리 버킷 또는 S3 Express One Zone의 경우 데이터 영역의 게이트웨이 엔드포인트는 `s3express-use2-az1.dualstack.us-east-2.amazonaws.com` 각각 `s3express-use2-az1.us-east-2.amazonaws.com` 및 입니다.

DNS 레코드 IP 유형은 트래픽이 클라이언트로 라우팅되는 방식에 영향을 줍니다. IPv4 서비스 엔드포인트를 사용하여 게이트웨이 엔드포인트를 생성한 다음 듀얼 스택 서비스 엔드포인트를 호출하는 경우 AAAA 레코드를 사용하는 트래픽은 게이트웨이 엔드포인트를 통해 라우팅되지 않습니다. 트래픽이 있는 경우 IPv6-compatible 경로를 통해 트래픽이 삭제되거나 라우팅됩니다. 서비스 정의 DNS 레코드 IP 유형을 사용하는 경우 서비스가 여러 서비스 엔드포인트의 가변 호출을 처리할 수 있는지 확인합니다.

[서비스 정의](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DnsOptionsSpecification.html)의 기본 DNS 레코드 IP 유형 설정 대신 DNS 레코드 IP 유형을 사용자 지정하여 특정 엔드포인트에 대해 반환되는 레코드를 선택할 수 있습니다. 다음 표에는 지원되는 DNS 레코드 IP 유형과 반환된 레코드 유형이 나와 있습니다.


| DNS 레코드 IP 유형 | 반환된 레코드 유형 | 
| --- | --- | 
| IPv4 | A | 
| IPv6 | AAAA | 
| 듀얼 스택 | A 및 AAAA | 
| 서비스 정의 | 레코드는 서비스 엔드포인트에 따라 다릅니다. | 

DNS 레코드 IP 유형을 선택하려면 엔드포인트 서비스에 호환되는 IP 주소 유형을 사용해야 합니다. 다음 표에는 게이트웨이 엔드포인트의 각 IP 주소 유형에 대해 지원되는 DNS 레코드 IP 유형이 나와 있습니다.


| IP 주소 유형 | 지원되는 DNS 레코드 IP 유형 | 
| --- | --- | 
| IPv4 | IPv4, 서비스 정의형\$1 | 
| IPv6 | IPv6, 서비스 정의형\$1 | 
| 듀얼 스택 | IPv4, IPv6, 듀얼 스택, 서비스 정의형\$1 | 

\$1 기본 DNS 레코드 IP 유형을 나타냅니다.

**참고**  
 게이트웨이 엔드포인트에 대해 서비스 정의 이외의 DNS 레코드 IP 유형을 사용하려면 VPC 설정에서 `enableDnsSupport` 및 `enableDnsHostnames` 속성을 허용해야 합니다.

DynamoDB 게이트웨이 엔드포인트의 DNS 레코드 IP 유형은 변경할 수 없습니다. DynamoDB는 서비스 정의의 DNS 레코드 IP 유형만 지원합니다.

DNS 레코드 IP 유형의 동작은 인터페이스 엔드포인트의 경우 다릅니다. 자세한 내용은 [인터페이스 엔드포인트의 DNS 레코드 IP 유형](privatelink-access-aws-services.md#aws-services-dns-record-ip-type)을 참조하세요.

# Amazon S3에 대한 게이트웨이 엔드포인트
<a name="vpc-endpoints-s3"></a>

VPC에서 게이트웨이 VPC 엔드포인트를 사용하여 Amazon S3에 액세스할 수 있습니다. 게이트웨이 엔드포인트를 생성한 후 VPC에서 Amazon S3로 전송되는 트래픽에 대해 해당 엔드포인트를 라우팅 테이블의 대상으로 추가할 수 있습니다.

게이트웨이 엔드포인트 사용에 따르는 추가 요금은 없습니다.

Amazon S3는 게이트웨이 엔드포인트와 인터페이스 엔드포인트를 모두 지원합니다. 게이트웨이 엔드포인트를 사용하면 VPC 인터넷 게이트웨이 또는 NAT 디바이스를 사용하지 않고 추가 비용 없이 VPC에서 Amazon S3에 액세스할 수 있습니다. 그러나 게이트웨이 엔드포인트는 온프레미스 네트워크, 다른 AWS 리전의 피어링된 VPCs 또는 전송 게이트웨이를 통한 액세스를 허용하지 않습니다. 이러한 시나리오에서는 추가 비용을 지불한 후 사용할 수 있는 인터페이스 엔드포인트를 사용해야 합니다. 자세한 내용은 *Amazon S3 사용 설명서*의 [Amazon S3용 VPC 엔드포인트 유형](https://docs.aws.amazon.com/AmazonS3/latest/userguide/privatelink-interface-endpoints.html#types-of-vpc-endpoints-for-s3)을 참조하세요.

**Topics**
+ [고려 사항](#gateway-endpoint-considerations-s3)
+ [프라이빗 DNS](#private-dns-s3)
+ [게이트웨이 엔드포인트 생성](#create-gateway-endpoint-s3)
+ [버킷 정책을 사용한 액세스 제어](#bucket-policies-s3)
+ [라우팅 테이블 연결](#associate-route-tables-s3)
+ [VPC 엔드포인트 정책 편집](#edit-vpc-endpoint-policy-s3)
+ [게이트웨이 엔드포인트 삭제](#delete-gateway-endpoint-s3)

## 고려 사항
<a name="gateway-endpoint-considerations-s3"></a>
+ 게이트웨이 엔드포인트는 해당 엔드포인트를 생성한 리전에서만 사용할 수 있습니다. S3 버킷과 동일한 리전에서 게이트웨이 엔드포인트를 생성해야 합니다.
+ Amazon DNS 서버를 사용 중인 경우 VPC에 대해 [DNS 호스트 이름 및 DNS 확인](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-dns.html#vpc-dns-updating)을 모두 활성화해야 합니다. 자체 DNS 서버를 사용하는 경우 Amazon S3에 대한 요청이 AWS에서 유지 관리하는 IP 주소로 올바르게 확인되어야 합니다.
+ 게이트웨이 엔드포인트를 통해 Amazon S3에 액세스하는 인스턴스의 보안 그룹에 대한 규칙은 Amazon S3에서 이동하는 트래픽을 허용해야 합니다. 보안 그룹 규칙에서 Amazon S3의 [접두사 목록](https://docs.aws.amazon.com/vpc/latest/userguide/working-with-aws-managed-prefix-lists.html) ID를 참조할 수 있습니다.
+ 게이트웨이 엔드포인트를 통해 Amazon S3에 액세스하는 인스턴스의 서브넷에 대한 네트워크 ACL에서 Amazon S3로 이동하는 트래픽을 허용해야 합니다. 네트워크 ACL 규칙에서 접두사 목록을 참조할 수는 없지만 Amazon S3의 [접두사 목록](https://docs.aws.amazon.com/vpc/latest/userguide/working-with-aws-managed-prefix-lists.html)에서 Amazon S3의 IP 주소 범위를 가져올 수 있습니다.
+ S3 버킷에 액세스해야 AWS 서비스 하는를 사용하고 있는지 확인합니다. 예를 들어, 서비스에서 로그 파일이 포함된 버킷에 액세스해야 하거나 EC2 인스턴스에 드라이버 또는 에이전트를 다운로드해야 할 수 있습니다. 그렇다면 엔드포인트 정책에서 AWS 서비스 또는 리소스가 `s3:GetObject` 작업을 사용하여 이러한 버킷에 액세스하도록 허용하는지 확인합니다.
+ VPC 엔드포인트를 통과하는 Amazon S3에 대한 요청에 대한 자격 증명 정책 또는 버킷 정책의 `aws:SourceIp` 조건은 사용할 수 없습니다. 대신 `aws:VpcSourceIp` 조건을 사용합니다. 또는 라우팅 테이블을 사용하여 VPC 엔드포인트를 통해 Amazon S3에 액세스할 수 있는 EC2 인스턴스를 제어할 수 있습니다.
+ Amazon S3에서 수신한 영향을 받는 서브넷의 인스턴스에서 가져온 소스 IPv4 또는 IPv6 주소가 퍼블릭 주소에서 VPC의 프라이빗 주소로 변경됩니다. 엔드포인트는 네트워크 라우팅을 스위칭하고 열린 TCP 연결을 끊습니다. 퍼블릭 주소를 사용한 이전 연결은 재개되지 않습니다. 따라서 엔드포인트를 만들거나 수정할 때는 중요한 작업을 실행하지 않는 것이 좋으며 연결이 끊어진 후에는 소프트웨어가 자동으로 Amazon S3에 다시 연결할 수 있는지 테스트해야 합니다.
+ 엔드포인트 연결은 VPC 외부로 확장할 수 없습니다. VPN 연결, VPC 피어링 연결, 전송 게이트웨이 또는 VPC Direct Connect 연결의 반대쪽에 있는 리소스는 게이트웨이 엔드포인트를 사용하여 Amazon S3와 통신할 수 없습니다.
+ 계정의 기본 할당량은 리전당 게이트웨이 엔드포인트 20개이며 조정 가능합니다. 또한 VPC당 게이트웨이 엔드포인트는 255개로 제한됩니다.

## 프라이빗 DNS
<a name="private-dns-s3"></a>

Amazon S3용 게이트웨이 엔드포인트와 인터페이스 엔드포인트를 모두 생성할 때 비용을 최적화하도록 프라이빗 DNS를 구성할 수 있습니다.

**Route 53 Resolver**  
Amazon은 [Route 53 Resolver](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/resolver.html)라고 하는 VPC용 DNS 서버를 제공합니다. Route 53 Resolver는 프라이빗 호스팅 영역의 로컬 VPC 도메인 이름 및 레코드를 자동으로 확인합니다. 하지만 VPC 외부에서는 Route 53 Resolver를 사용할 수 없습니다. Route 53은 사용자가 VPC 외부에서 Route 53 Resolver를 사용할 수 있도록 Resolver 엔드포인트와 Resolver 규칙을 제공합니다. *인바운드 Resolver 엔드포인트*는 온프레미스 네트워크 상의 DNS 쿼리를 Route 53 Resolver로 전달합니다. *아웃바운드 Resolver 엔드포인트*는 Route 53 Resolver의 DNS 쿼리를 온프레미스 네트워크로 전달합니다.

인바운드 Resolver 엔드포인트에 프라이빗 DNS만 사용하도록 Amazon S3용 인터페이스 엔드포인트를 구성하면 인바운드 Resolver 엔드포인트가 생성됩니다. 인바운드 Resolver 엔드포인트는 온프레미스에서 인터페이스 엔드포인트의 프라이빗 IP 주소로 전송되는 Amazon S3에 대한 DNS 쿼리를 해결합니다. 또한 VPC의 DNS 쿼리가 트래픽을 게이트웨이 엔드포인트로 라우팅하는 Amazon S3 퍼블릭 IP 주소로 확인되도록 Route 53 Resolver의 ALIAS 레코드를 Amazon S3 퍼블릭 호스팅 영역에 추가합니다.

**프라이빗 DNS**  
Amazon S3용 인터페이스 엔드포인트에 프라이빗 DNS를 구성하지만 인바운드 Resolver 엔드포인트에 대해서만 프라이빗 DNS를 구성하지 않는 경우, 온프레미스 네트워크와 VPC 모두의 요청이 인터페이스 엔드포인트를 사용하여 Amazon S3에 액세스합니다. 따라서 추가 요금 없이 게이트웨이 엔드포인트를 사용하는 대신 VPC의 트래픽에 인터페이스 엔드포인트를 사용하려면 비용을 지불해야 합니다.

![\[두 엔드포인트 유형이 모두 포함된 Amazon S3 요청 라우팅.\]](http://docs.aws.amazon.com/ko_kr/vpc/latest/privatelink/images/s3-private-dns-default.png)


**인바운드 Resolver 엔드포인트 전용 프라이빗 DNS**  
인바운드 Resolver 엔드포인트에 대해서만 프라이빗 DNS를 구성하는 경우, 온프레미스 네트워크의 요청은 인터페이스 엔드포인트를 사용하여 Amazon S3에 액세스하고, VPC의 요청은 게이트웨이 엔드포인트를 사용하여 Amazon S3에 액세스합니다. 따라서 게이트웨이 엔드포인트를 사용할 수 없는 트래픽에 대해서만 인터페이스 엔드포인트를 사용하기 위해 비용을 지불하므로 비용을 최적화할 수 있습니다.

이를 구성하려면 게이트웨이 엔드포인트의 DNS 레코드 IP 유형이 인터페이스 엔드포인트와 일치하거나 이어야 합니다`service-defined`. AWS PrivateLink 다른 조합을 지원하지 않습니다. 자세한 내용은 [DNS 레코드 IP 유형](gateway-endpoints.md#gateway-endpoint-dns-record-ip-type) 단원을 참조하십시오.

![\[프라이빗 DNS 및 인바운드 Resolver 엔드포인트를 사용한 Amazon S3 요청 라우팅.\]](http://docs.aws.amazon.com/ko_kr/vpc/latest/privatelink/images/s3-private-dns-inbound-endpoint.png)


**프라이빗 DNS 설정**  
Amazon S3용 인터페이스 엔드포인트를 생성할 때 또는 생성한 후에 Amazon S3용 인터페이스 엔드포인트에 대한 프라이빗 DNS를 구성할 수 있습니다. 자세한 내용은 [VPC 엔드포인트 생성](create-interface-endpoint.md#create-interface-endpoint-aws)(생성 중 구성) 또는 [프라이빗 DNS 이름 활성화](interface-endpoints.md#enable-private-dns-names)(생성 후 구성)을 참조하세요.

## 게이트웨이 엔드포인트 생성
<a name="create-gateway-endpoint-s3"></a>

다음 절차에 따라 Amazon S3에 연결하는 게이트웨이 엔드포인트를 생성합니다.

**콘솔을 사용하여 게이트웨이 엔드포인트 생성하기**

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

1. 탐색 창에서 **엔드포인트**를 선택합니다.

1. **엔드포인트 생성**을 선택합니다.

1. **서비스 범주(Service category)**에서 **AWS 서비스**를 선택합니다.

1. **서비스에** **유형 = 게이트웨이** 필터를 추가합니다.

   Amazon S3 데이터가 범용 버킷에 저장되어 있는 경우 **com.amazonaws.***region*.**s3**를 선택합니다.

   Amazon S3 데이터가 디렉터리 버킷에 저장되어 있는 경우 **com.amazonaws.***region***.s3express**를 선택합니다.

1. **VPC**에서 엔드포인트를 생성할 VPC를 선택합니다.

1. **IP 주소 유형**에서 다음 옵션 중에서 선택합니다.
   + **IPv4** - 엔드포인트 네트워크 인터페이스에 IPv4 주소를 할당합니다. 이 옵션은 선택한 모든 서브넷에 IPv4 주소 범위가 있으며 서비스가 IPv4 요청을 수락하는 경우에만 지원됩니다.
   + **IPv6** - 엔드포인트 네트워크 인터페이스에 IPv6 주소를 할당합니다. 이 옵션은 선택한 모든 서브넷이 IPv6 전용 서브넷이며 서비스가 IPv6 요청을 수락하는 경우에만 지원됩니다.
   + **듀얼 스택** - 엔드포인트 네트워크 인터페이스에 IPv4 및 IPv6 주소를 모두 할당합니다. 이 옵션은 선택한 모든 서브넷에 IPv4 및 IPv6 주소 범위가 모두 있으며 서비스가 IPv4 및 IPv6 요청을 모두 수락하는 경우에만 지원됩니다.

1. **라우팅 테이블(Route tables)**에서 엔드포인트에서 사용할 라우팅 테이블을 선택합니다. 서버로 전송되는 트래픽을 가리키는 라우팅이 엔드포인트 네트워크 인터페이스에 자동으로 추가됩니다.

1. **정책(Policy)**에서 **모든 액세스(Full access)**를 선택하여 VPC 엔드포인트를 통한 모든 리소스에 대한 모든 보안 주체의 모든 작업을 허용합니다. 또는 **사용자 지정(Custom)**을 선택하여 VPC 엔드포인트를 통해 리소스에 대한 작업을 수행하기 위해 보안 주체에 필요한 권한을 제어하는 VPC 엔드포인트 정책을 연결합니다.

1. (선택 사항) 태그를 추가하려면 **새 태그 추가**를 선택하고 태그 키와 태그 값을 입력합니다.

1. **엔드포인트 생성**을 선택합니다.

**명령줄을 사용하여 게이트웨이 엔드포인트 생성하기**
+ [create-vpc-endpoint](https://docs.aws.amazon.com/cli/latest/reference/ec2/create-vpc-endpoint.html)(AWS CLI)
+ [New-EC2VpcEndpoint](https://docs.aws.amazon.com/powershell/latest/reference/items/New-EC2VpcEndpoint.html)(Windows PowerShell용 도구)

## 버킷 정책을 사용한 액세스 제어
<a name="bucket-policies-s3"></a>

버킷 정책을 사용하여 특정 엔드포인트, VPCs, IP 주소 범위 및에서 버킷에 대한 액세스를 제어할 수 있습니다 AWS 계정. 이러한 예에서는 해당 사용 사례에 필요한 액세스 권한을 허용하는 정책 명령문도 있다고 가정합니다.

**Example 예: 특정 엔드포인트에 대한 액세스 제한**  
[aws:sourceVpce](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourcevpce) 조건 키를 사용하여 특정 엔드포인트에 대한 액세스를 제한하는 버킷 정책을 생성할 수 있습니다. 다음 정책은 지정된 게이트웨이 엔드포인트가 사용되지 않는 한 지정된 작업을 사용하여 지정된 버킷에 대한 액세스를 거부합니다. 이 정책은 AWS Management Console을 통해 지정된 작업을 사용하여 지정된 버킷에 대한 액세스를 차단한다는 점에 유의하세요.    
****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid": "Allow-access-to-specific-VPCE",
      "Effect": "Deny",
      "Principal": "*",
      "Action": ["s3:PutObject", "s3:GetObject", "s3:DeleteObject"],
      "Resource": ["arn:aws:s3:::bucket_name",
                   "arn:aws:s3:::bucket_name/*"],
      "Condition": {
        "StringNotEquals": {
          "aws:sourceVpce": "vpce-1a2b3c4d"
        }
      }
    }
  ]
}
```

**Example 예: 특정 VPC에 대한 액세스 제한**  
[aws:sourceVpc](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourcevpc) 조건 키를 사용하여 특정 VPC에 대한 액세스를 제한하는 버킷 정책을 생성할 수 있습니다. 이 정적은 같은 VPC에 여러 엔드포인트가 구성되어 있는 경우 유용합니다. 다음 정책은 요청이 지정된 VPC에서 시작되지 않는 한 지정된 작업을 사용하여 지정된 버킷에 대한 액세스를 거부합니다. 이 정책은 AWS Management Console을 통해 지정된 작업을 사용하여 지정된 버킷에 대한 액세스를 차단한다는 점에 유의하세요.    
****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid": "Allow-access-to-specific-VPC",
      "Effect": "Deny",
      "Principal": "*",
      "Action": ["s3:PutObject", "s3:GetObject", "s3:DeleteObject"],
      "Resource": ["arn:aws:s3:::example_bucket",
                   "arn:aws:s3:::example_bucket/*"],
      "Condition": {
        "StringNotEquals": {
          "aws:sourceVpc": "vpc-111bbb22"
        }
      }
    }
  ]
}
```

**Example 예: 특정 IP 주소 범위에 대한 액세스 제한**  
[aws:VpcSourceIp](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-vpcsourceip) 조건 키를 사용하여 특정 IP 주소 범위에 대한 액세스를 제한하는 버킷 정책을 생성할 수 있습니다. 다음 정책은 지정된 IP 주소에서 시작되지 않는 한 지정된 작업을 사용하여 지정된 버킷에 대한 액세스를 거부합니다. 이 정책은 AWS Management Console을 통해 지정된 작업을 사용하여 지정된 버킷에 대한 액세스를 차단한다는 점에 유의하세요.    
****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid": "Allow-access-to-specific-VPC-CIDR",
      "Effect": "Deny",
      "Principal": "*",
      "Action": ["s3:PutObject", "s3:GetObject", "s3:DeleteObject"],
      "Resource": ["arn:aws:s3:::bucket_name",
                   "arn:aws:s3:::bucket_name/*"],
      "Condition": {
        "NotIpAddress": {
          "aws:VpcSourceIp": "172.31.0.0/16"
        }
      }
    }
  ]
}
```

**Example 예: 특정의 버킷에 대한 액세스 제한 AWS 계정**  
`s3:ResourceAccount` 조건을 사용하여 특정 AWS 계정 의 S3 버킷에 대한 액세스를 제한하는 정책을 생성할 수 있습니다. 다음 정책은 지정된 AWS 계정에서 소유하지 않는 한 지정된 작업을 사용한 S3 버킷에 대한 액세스를 거부합니다.    
****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid": "Allow-access-to-bucket-in-specific-account",
      "Effect": "Deny",
      "Principal": "*",
      "Action": ["s3:GetObject", "s3:PutObject", "s3:DeleteObject"],
      "Resource": "arn:aws:s3:::*",
      "Condition": {
        "StringNotEquals": {
          "s3:ResourceAccount": "111122223333"
        }
      }
    }
  ]
}
```

## 라우팅 테이블 연결
<a name="associate-route-tables-s3"></a>

게이트웨이 엔드포인트와 연결된 라우팅 테이블을 변경할 수 있습니다. 라우팅 테이블을 연결하면 서비스로 전송되는 트래픽을 가리키는 라우팅이 엔드포인트 네트워크 인터페이스에 자동으로 추가됩니다. 라우팅 테이블의 연결을 해제하면 라우팅 테이블에서 엔드포인트 라우팅이 자동으로 제거됩니다.

**콘솔을 사용하여 라우팅 테이블 연결하기**

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

1. 탐색 창에서 **엔드포인트**를 선택합니다.

1. 게이트웨이 엔드포인트를 선택합니다.

1. **작업(Actions)**, **라우팅 테이블 관리(Manage route tables)**를 차례로 선택합니다.

1. 필요에 따라 라우팅 테이블을 선택하거나 선택 취소합니다.

1. **라우팅 테이블 수정(Modify route tables)**을 선택합니다.

**명령줄을 사용하여 라우팅 테이블 연결하기**
+ [modify-vpc-endpoint](https://docs.aws.amazon.com/cli/latest/reference/ec2/modify-vpc-endpoint.html)(AWS CLI)
+ [Edit-EC2VpcEndpoint](https://docs.aws.amazon.com/powershell/latest/reference/items/Edit-EC2VpcEndpoint.html)(Windows PowerShell용 도구)

## VPC 엔드포인트 정책 편집
<a name="edit-vpc-endpoint-policy-s3"></a>

게이트웨이 엔드포인트에 대한 엔드포인트 정책을 편집하여 VPC에서 엔드포인트를 통해 Amazon S3에 대한 액세스를 제어할 수 있습니다. 엔드포인트 정책을 업데이트할 경우 변경 사항이 적용되기까지 몇 분 정도 걸릴 수 있습니다. 기본 정책에서는 모든 액세스를 허용합니다. 자세한 내용은 [엔드포인트 정책](vpc-endpoints-access.md) 단원을 참조하십시오.

**콘솔을 사용하여 엔드포인트 정책 변경**

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

1. 탐색 창에서 **엔드포인트**를 선택합니다.

1. 게이트웨이 엔드포인트를 선택합니다.

1. **작업(Actions)**, **정책 관리(Manage policy)**를 선택합니다.

1. **모든 액세스(Full Access)**를 선택하여 서비스에 대한 전체 액세스를 허용하거나 **사용자 지정(Custom)**을 선택하고 사용자 지정 정책을 연결합니다.

1. **저장**을 선택합니다.

다음은 Amazon S3에 액세스하기 위한 엔드포인트 정책의 예입니다.

**Example 예: 특정 버킷에 대한 액세스 제한**  
특정 S3 버킷에 대해서만 액세스를 제한하는 정책을 생성할 수 있습니다. 이는 VPC AWS 서비스 에 S3 버킷을 사용하는 다른이 있는 경우에 유용합니다.    
****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid": "Allow-access-to-specific-bucket",
      "Effect": "Allow",
      "Principal": "*",
      "Action": [
         "s3:ListBucket",
         "s3:GetObject",
         "s3:PutObject"
      ],
      "Resource": [
        "arn:aws:s3:::bucket_name",
        "arn:aws:s3:::bucket_name/*"
      ]
    }
  ]
}
```

**Example 예: 특정 IAM 역할에 대한 액세스 제한**  
특정 IAM 역할에 대한 액세스를 제한하는 정책을 생성할 수 있습니다. `aws:PrincipalArn`을 사용하여 보안 주체에 액세스 권한을 부여해야 합니다.    
****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid": "Allow-access-to-specific-IAM-role",
      "Effect": "Allow",
      "Principal": "*",
      "Action": "*",
      "Resource": "*",
      "Condition": {
        "ArnEquals": {
          "aws:PrincipalArn": "arn:aws:iam::111122223333:role/role_name"
        }
      }
    }
  ]
}
```

**Example 예: 특정 계정의 사용자에 대한 액세스 제한**  
특정 계정에 대한 액세스를 제한하는 정책을 생성할 수 있습니다.    
****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid": "Allow-callers-from-specific-account",
      "Effect": "Allow",
      "Principal": "*",
      "Action": "*",
      "Resource": "*",
      "Condition": {
        "StringEquals": {
          "aws:PrincipalAccount": "111122223333"
        }
      }
    }
  ]
}
```

## 게이트웨이 엔드포인트 삭제
<a name="delete-gateway-endpoint-s3"></a>

게이트웨이 엔드포인트 사용을 마치면 엔드포인트를 삭제할 수 있습니다. 게이트웨이 엔드포인트를 삭제하면 서브넷 라우팅 테이블에서 엔드포인트 라우팅이 제거됩니다.

프라이빗 DNS가 활성화되어 있으면 게이트웨이 엔드포인트를 삭제할 수 없습니다.

**콘솔을 사용하여 게이트웨이 엔드포인트 삭제**

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

1. 탐색 창에서 **엔드포인트**를 선택합니다.

1. 게이트웨이 엔드포인트를 선택합니다.

1. **작업(Actions)**, **VPC 엔드포인트 삭제(Delete VPC endpoints)**를 차례로 선택합니다.

1. 확인 메시지가 표시되면 **delete**를 입력합니다.

1. **삭제**를 선택합니다.

**명령줄을 사용하여 게이트웨이 엔드포인트 삭제하기**
+ [delete-vpc-endpoints](https://docs.aws.amazon.com/cli/latest/reference/ec2/delete-vpc-endpoints.html)(AWS CLI)
+ [Remove-EC2VpcEndpoint](https://docs.aws.amazon.com/powershell/latest/reference/items/Remove-EC2VpcEndpoint.html)(Windows PowerShell용 도구)

# Amazon DynamoDB에 대한 게이트웨이 엔드포인트
<a name="vpc-endpoints-ddb"></a>

VPC에서 게이트웨이 VPC 엔드포인트를 사용하여 Amazon DynamoDB에 액세스할 수 있습니다. 게이트웨이 엔드포인트를 생성한 후 VPC에서 DynamoDB로 전송되는 트래픽에 대해 해당 엔드포인트를 라우팅 테이블의 대상으로 추가할 수 있습니다.

게이트웨이 엔드포인트 사용에 따르는 추가 요금은 없습니다.

DynamoDB는 게이트웨이 엔드포인트와 인터페이스 엔드포인트를 모두 지원합니다. 게이트웨이 엔드포인트를 사용하면 VPC 인터넷 게이트웨이 또는 NAT 디바이스를 사용하지 않고 추가 비용 없이 VPC에서 DynamoDB에 액세스할 수 있습니다. 그러나 게이트웨이 엔드포인트는 온프레미스 네트워크, 다른 AWS 리전의 피어링된 VPCs 또는 전송 게이트웨이를 통한 액세스를 허용하지 않습니다. 이러한 시나리오에서는 추가 비용을 지불한 후 사용할 수 있는 인터페이스 엔드포인트를 사용해야 합니다. 자세한 내용은 *Amazon DynamoDB 개발자 가이드*의 [DynamoDB용 VPC 엔드포인트 유형](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/privatelink-interface-endpoints.html#types-of-vpc-endpoints-for-ddb)을 참조하세요.

**Topics**
+ [고려 사항](#gateway-endpoint-considerations-ddb)
+ [게이트웨이 엔드포인트 생성](#create-gateway-endpoint-ddb)
+ [IAM 정책을 사용하여 액세스 제어](#iam-policies-ddb)
+ [라우팅 테이블 연결](#associate-route-tables-ddb)
+ [VPC 엔드포인트 정책 편집](#edit-vpc-endpoint-policy-ddb)
+ [게이트웨이 엔드포인트 삭제](#delete-gateway-endpoint-ddb)

## 고려 사항
<a name="gateway-endpoint-considerations-ddb"></a>
+ 게이트웨이 엔드포인트는 해당 엔드포인트를 생성한 리전에서만 사용할 수 있습니다. DynamoDB 테이블과 동일한 리전에서 게이트웨이 엔드포인트를 생성해야 합니다.
+ Amazon DNS 서버를 사용 중인 경우 VPC에 대해 [DNS 호스트 이름 및 DNS 확인](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-dns.html#vpc-dns-updating)을 모두 활성화해야 합니다. 또한 자체 DNS 서버를 사용하는 경우 DynamoDB에 대한 요청이 AWS에서 유지 관리하는 IP 주소로 올바르게 확인되어야 합니다.
+ 게이트웨이 엔드포인트를 통해 DynamoDB에 액세스하는 인스턴스의 보안 그룹에 대한 규칙은 DynamoDB에서 이동하는 트래픽을 허용해야 합니다. 보안 그룹 규칙에서 DynamoDB [접두사 목록](https://docs.aws.amazon.com/vpc/latest/userguide/working-with-aws-managed-prefix-lists.html)의 ID를 참조할 수 있습니다.
+ 게이트웨이 엔드포인트를 통해 DynamoDB에 액세스하는 인스턴스의 서브넷에 대한 네트워크 ACL은 DynamoDB에서 이동하는 트래픽을 허용해야 합니다. 네트워크 ACL 규칙의 접두사 목록은 참조할 수 없지만 DynamoDB의 [접두사 목록](https://docs.aws.amazon.com/vpc/latest/userguide/working-with-aws-managed-prefix-lists.html)에서 DynamoDB의 IP 주소 범위를 가져올 수 있습니다.
+  AWS CloudTrail 를 사용하여 DynamoDB 작업을 로깅하는 경우 로그 파일에는 서비스 소비자 VPC에 있는 EC2 인스턴스의 프라이빗 IP 주소와 엔드포인트를 통해 수행된 모든 요청에 대한 게이트웨이 엔드포인트의 ID가 포함됩니다.
+ 게이트웨이 엔드포인트는 IPv4 트래픽만 지원합니다.
+ 해당 서브넷에 있는 인스턴스의 원본 IPv4 주소는 퍼블릭 IPv4 주소에서 VPC의 프라이빗 IPv4 주소로 변경됩니다. 엔드포인트는 네트워크 라우팅을 스위칭하고 열린 TCP 연결을 끊습니다. 퍼블릭 IPv4 주소를 사용한 이전 연결은 다시 시작되지 않습니다. 따라서 게이트웨이 엔드포인트를 생성하거나 수정할 때는 중요한 작업을 실행하지 않는 것이 좋습니다. 또는 연결이 끊어질 경우 소프트웨어에서 DynamoDB에 자동으로 다시 연결할 수 있는지 테스트하세요.
+ 엔드포인트 연결은 VPC 외부로 확장할 수 없습니다. VPN 연결, VPC 피어링 연결, 전송 게이트웨이 또는 VPC 연결의 반대쪽 Direct Connect 에 있는 리소스는 게이트웨이 엔드포인트를 사용하여 DynamoDB와 통신할 수 없습니다.
+ 계정의 기본 할당량은 리전당 게이트웨이 엔드포인트 20개이며 조정 가능합니다. 또한 VPC당 게이트웨이 엔드포인트는 255개로 제한됩니다.

## 게이트웨이 엔드포인트 생성
<a name="create-gateway-endpoint-ddb"></a>

다음 절차에 따라 DynamoDB에 연결하는 게이트웨이 엔드포인트를 생성합니다.

**콘솔을 사용하여 게이트웨이 엔드포인트 생성하기**

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

1. 탐색 창에서 **엔드포인트**를 선택합니다.

1. **엔드포인트 생성**을 선택합니다.

1. **서비스 범주(Service category)**에서 **AWS 서비스**를 선택합니다.

1. **서비스**에서 **유형 = 게이트웨이** 필터를 추가하고 **com.amazonaws.***region***.dynamodb**를 선택합니다.

1. **VPC**에서 엔드포인트를 생성할 VPC를 선택합니다.

1. **라우팅 테이블(Route tables)**에서 엔드포인트에서 사용할 라우팅 테이블을 선택합니다. 서버로 전송되는 트래픽을 가리키는 라우팅이 엔드포인트 네트워크 인터페이스에 자동으로 추가됩니다.

1. **정책(Policy)**에서 **모든 액세스(Full access)**를 선택하여 VPC 엔드포인트를 통한 모든 리소스에 대한 모든 보안 주체의 모든 작업을 허용합니다. 또는 **사용자 지정(Custom)**을 선택하여 VPC 엔드포인트를 통해 리소스에 대한 작업을 수행하기 위해 보안 주체에 필요한 권한을 제어하는 VPC 엔드포인트 정책을 연결합니다.

1. (선택 사항) 태그를 추가하려면 **새 태그 추가**를 선택하고 태그 키와 태그 값을 입력합니다.

1. **엔드포인트 생성**을 선택합니다.

**명령줄을 사용하여 게이트웨이 엔드포인트 생성하기**
+ [create-vpc-endpoint](https://docs.aws.amazon.com/cli/latest/reference/ec2/create-vpc-endpoint.html)(AWS CLI)
+ [New-EC2VpcEndpoint](https://docs.aws.amazon.com/powershell/latest/reference/items/New-EC2VpcEndpoint.html)(Windows PowerShell용 도구)

## IAM 정책을 사용하여 액세스 제어
<a name="iam-policies-ddb"></a>

특정 VPC 엔드포인트를 사용하여 DynamoDB 테이블에 액세스할 수 있는 IAM 보안 주체를 제어하는 IAM 정책을 생성할 수 있습니다.

**Example 예: 특정 엔드포인트에 대한 액세스 제한**  
[aws:sourceVpce](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourcevpce) 조건 키를 사용하여 특정 VPC 엔드포인트에 대한 액세스를 제한하는 정책을 생성할 수 있습니다. 다음 정책은 지정된 VPC 엔드포인트를 사용하지 않는 경우 계정의 DynamoDB 테이블에 대한 액세스를 거부합니다. 이 예제에서는 해당 사용 사례에 필요한 액세스를 허용하는 정책 문도 있다고 가정합니다.    
****  

```
{
   "Version":"2012-10-17",		 	 	 
   "Statement": [
      {
         "Sid": "Allow-access-from-specific-endpoint",
         "Effect": "Deny",
         "Principal": "*",
         "Action": "dynamodb:*",
         "Resource": "arn:aws:dynamodb:us-east-1:111111111111:table/*",
         "Condition": { 
            "StringNotEquals" : { 
               "aws:sourceVpce": "vpce-11aa22bb" 
            } 
         }
      }
   ]
}
```

**Example 예: 특정 IAM 역할의 액세스 허용**  
특정 IAM 역할을 사용한 액세스를 허용하는 정책을 생성할 수 있습니다. 다음 정책은 지정된 IAM 역할에 액세스 권한을 부여합니다.    
****  

```
{
   "Version":"2012-10-17",		 	 	 
   "Statement": [
      {
         "Sid": "Allow-access-from-specific-IAM-role",
         "Effect": "Allow",
         "Principal": "*",
         "Action": "*",
         "Resource": "*",
         "Condition": {
            "ArnEquals": {
               "aws:PrincipalArn": "arn:aws:iam::111122223333:role/role_name"
            }
         }
      }
   ]
}
```

**Example 예: 특정 계정의 액세스 허용**  
특정 계정의 액세스만 허용하는 정책을 생성할 수 있습니다. 다음 정책은 지정된 계정의 사용자에 액세스 권한을 부여합니다.    
****  

```
{
   "Version":"2012-10-17",		 	 	 
   "Statement": [
      {
         "Sid": "Allow-access-from-account",
         "Effect": "Allow",
         "Principal": "*",
         "Action": "*",
         "Resource": "*",
         "Condition": {
            "StringEquals": {
               "aws:PrincipalAccount": "111122223333"
            }
         }
      }
   ]        
}
```

## 라우팅 테이블 연결
<a name="associate-route-tables-ddb"></a>

게이트웨이 엔드포인트와 연결된 라우팅 테이블을 변경할 수 있습니다. 라우팅 테이블을 연결하면 서비스로 전송되는 트래픽을 가리키는 라우팅이 엔드포인트 네트워크 인터페이스에 자동으로 추가됩니다. 라우팅 테이블의 연결을 해제하면 라우팅 테이블에서 엔드포인트 라우팅이 자동으로 제거됩니다.

**콘솔을 사용하여 라우팅 테이블 연결하기**

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

1. 탐색 창에서 **엔드포인트**를 선택합니다.

1. 게이트웨이 엔드포인트를 선택합니다.

1. **작업(Actions)**, **라우팅 테이블 관리(Manage route tables)**를 차례로 선택합니다.

1. 필요에 따라 라우팅 테이블을 선택하거나 선택 취소합니다.

1. **라우팅 테이블 수정(Modify route tables)**을 선택합니다.

**명령줄을 사용하여 라우팅 테이블 연결하기**
+ [modify-vpc-endpoint](https://docs.aws.amazon.com/cli/latest/reference/ec2/modify-vpc-endpoint.html)(AWS CLI)
+ [Edit-EC2VpcEndpoint](https://docs.aws.amazon.com/powershell/latest/reference/items/Edit-EC2VpcEndpoint.html)(Windows PowerShell용 도구)

## VPC 엔드포인트 정책 편집
<a name="edit-vpc-endpoint-policy-ddb"></a>

게이트웨이 엔드포인트에 대한 엔드포인트 정책을 편집하여 VPC에서 엔드포인트를 통해 DynamoDB에 대한 액세스를 제어할 수 있습니다. 엔드포인트 정책을 업데이트할 경우 변경 사항이 적용되기까지 몇 분 정도 걸릴 수 있습니다. 기본 정책에서는 모든 액세스를 허용합니다. 자세한 내용은 [엔드포인트 정책](vpc-endpoints-access.md) 단원을 참조하십시오.

**콘솔을 사용하여 엔드포인트 정책 변경**

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

1. 탐색 창에서 **엔드포인트**를 선택합니다.

1. 게이트웨이 엔드포인트를 선택합니다.

1. **작업(Actions)**, **정책 관리(Manage policy)**를 선택합니다.

1. **모든 액세스(Full Access)**를 선택하여 서비스에 대한 전체 액세스를 허용하거나 **사용자 지정(Custom)**을 선택하고 사용자 지정 정책을 연결합니다.

1. **저장**을 선택합니다.

**명령줄을 사용하여 게이트웨이 엔드포인트 수정하기**
+ [modify-vpc-endpoint](https://docs.aws.amazon.com/cli/latest/reference/ec2/modify-vpc-endpoint.html)(AWS CLI)
+ [Edit-EC2VpcEndpoint](https://docs.aws.amazon.com/powershell/latest/reference/items/Edit-EC2VpcEndpoint.html)(Windows PowerShell용 도구)

다음은 DynamoDB에 액세스하기 위한 엔드포인트 정책의 예입니다.

**Example 예제: 읽기 전용 액세스 허용**  
액세스를 읽기 전용 액세스로 제한하는 정책을 생성할 수 있습니다. 다음 정책은 DynamoDB 테이블을 열거하고 설명할 수 있는 권한을 부여합니다.  

```
{
  "Statement": [
    {
      "Sid": "ReadOnlyAccess",
      "Effect": "Allow",
      "Principal": "*",
      "Action": [
        "dynamodb:DescribeTable",
        "dynamodb:ListTables"
      ],
      "Resource": "*"
    }
  ]
}
```

**Example 예: 특정 테이블에 대한 액세스 제한**  
특정 DynamoDB 테이블에 대한 액세스를 제한하는 정책을 생성할 수 있습니다. 다음 정책은 지정된 DynamoDB 테이블에 대한 액세스를 허용합니다.  

```
{
  "Statement": [
    {
      "Sid": "Allow-access-to-specific-table",
      "Effect": "Allow",
      "Principal": "*",
      "Action": [
        "dynamodb:Batch*",
        "dynamodb:Delete*",
        "dynamodb:DescribeTable",
        "dynamodb:GetItem",
        "dynamodb:PutItem",
        "dynamodb:Update*"
      ],
      "Resource": "arn:aws:dynamodb:region:123456789012:table/table_name"
    }
  ]
}
```

## 게이트웨이 엔드포인트 삭제
<a name="delete-gateway-endpoint-ddb"></a>

게이트웨이 엔드포인트 사용을 마치면 엔드포인트를 삭제할 수 있습니다. 게이트웨이 엔드포인트를 삭제하면 서브넷 라우팅 테이블에서 엔드포인트 라우팅이 제거됩니다.

**콘솔을 사용하여 게이트웨이 엔드포인트 삭제**

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

1. 탐색 창에서 **엔드포인트**를 선택합니다.

1. 게이트웨이 엔드포인트를 선택합니다.

1. **작업(Actions)**, **VPC 엔드포인트 삭제(Delete VPC endpoints)**를 차례로 선택합니다.

1. 확인 메시지가 표시되면 **delete**를 입력합니다.

1. **삭제**를 선택합니다.

**명령줄을 사용하여 게이트웨이 엔드포인트 삭제하기**
+ [delete-vpc-endpoints](https://docs.aws.amazon.com/cli/latest/reference/ec2/delete-vpc-endpoints.html)(AWS CLI)
+ [Remove-EC2VpcEndpoint](https://docs.aws.amazon.com/powershell/latest/reference/items/Remove-EC2VpcEndpoint.html)(Windows PowerShell용 도구)