게이트웨이 Amazon VPC 엔드포인트의 연결 문제를 해결하려면 어떻게 해야 하나요?

4분 분량
0

게이트웨이 Amazon Virtual Private Cloud(VPC) 엔드포인트의 연결 문제를 해결하고 싶습니다.

간략한 설명

게이트웨이 VPC 엔드포인트를 사용해 Amazon VPC에서 Amazon Simple Storage Service(S3)와 Amazon DynamoDB로 비공개 연결할 수 있습니다. 게이트웨이 VPC 엔드포인트 연결 문제는 연결을 허용하는 네트워크 액세스나 보안 규칙 때문일 수 있습니다.

연결 문제를 해결하려면 Reachability Analyzer를 사용합니다. 또 다음 구성을 확인합니다.

  • AWS 리전 구성
  • DNS 확인
  • 서브넷 라우팅 테이블 설정
  • 보안 그룹
  • 네트워크 액세스 제어 목록(네트워크 ACL) 규칙
  • Amazon VPC 엔드포인트 정책
  • Amazon S3 버킷 정책
  • AWS Identity and Access Management(AWS IAM) 정책
  • 게이트웨이 엔드포인트 트래픽 흐름

해결 방법

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

Reachability Analyzer 사용

Reachability Analyzer를 사용해 소스 엔드포인트와 게이트웨이 엔드포인트 간의 연결 문제를 해결합니다. 자세한 내용을 보려면 Amazon VPC Reachability Analyzer를 사용해 Amazon VPC 리소스 연결 문제를 해결하려면 어떻게 해야 하나요?를 참고하세요.

리전 구성 확인

게이트웨이 엔드포인트는 생성된 리전에서만 사용할 수 있습니다. Amazon S3 버킷이나 DynamoDB 테이블과 동일한 리전에 게이트웨이 엔드포인트를 생성해야 합니다. 버킷 리전을 보려면 AWS CLI 명령 get-bucket-location을 실행하세요.

또 SDK를 사용해 게이트웨이 엔드포인트에서 서비스에 액세스하는 경우 리전을 확인하세요. 리전이 서비스 리소스와 동일한 위치에 구성되어 있는지 확인하세요. 예를 들어, Boto3에는 Config 개체를 사용하고 AWS CLI에는 AWS Config를 사용합니다.

참고: 요청이 잘못된 리전으로 전송되면 제한 시간이 초과되거나 서비스가 인터넷을 통해 액세스될 수 있습니다. 이는 원본 서브넷에 구성된 라우팅 테이블에 따라 달라집니다.

DNS 확인 점검

Amazon VPC에서 DNS 설정을 확인합니다. Amazon VPC에서 DNS 확인을 활성화해야 합니다. 자체 DNS 서버를 사용하는 경우 AWS 서비스 DNS 요청이 AWS에서 유지 관리하는 IP 주소로 확인되는지 확인하세요.

서브넷 라우팅 테이블 설정 확인

라우팅 테이블 설정을 확인합니다. 게이트웨이 VPC 엔드포인트를 사용하는 Amazon S3와 DynamoDB 경로가 있는지 확인합니다.

보안 그룹 확인

Amazon S3와 DynamoDB와 연결하는 원본과 연결된 보안 그룹을 확인합니다. 사용 가능한 아웃바운드 규칙이 Amazon S3나 DynamoDB로 트래픽을 허용하는지 확인합니다. 보안 그룹에 기본 아웃바운드 규칙보다 더 제한적인 규칙이 있는 경우 다음 경우 중 하나인지 확인하세요.

  • 게이트웨이 Amazon VPC 엔드포인트와 연결된 접두사 목록의 ID로 트래픽을 허용하는 아웃바운드 규칙이 있습니다.
  • 대상에 서비스별 CIDR 블록(IP 주소 범위)이 있습니다. 서비스별 CIDR 블록이 없으면 서비스별 CIDR 블록을 추가할 수 없습니다. AWS에서 접두사 목록 IP 주소 범위를 관리하기 때문에 서비스에서 제공하는 접두사 목록 ID를 사용하는 것이 좋습니다.

특정 리전의 Amazon S3와 DynamoDB용 공용 IP CIDR을 보려면 AWS CLI 명령 describe-prefix-list를 실행하세요. example-Region을 내 리전으로 바꾸세요.

aws ec2 describe-prefix-lists --region <example-Region>

네트워크 ACL 규칙 확인

서브넷 네트워크 ACL은 리전 내 Amazon S3이나 DynamoDB 서비스 CIDR의 인바운드 및 아웃바운드 TCP 연결을 허용해야 합니다. 네트워크 ACL 규칙을 확인하고 다음을 확인합니다.

  • 인바운드 규칙 보기로 가서 임시 TCP 포트 1024-65535에서 액세스하려는 서비스의 인바운드 반환 트래픽을 규칙이 허용하는지 확인합니다.
  • 아웃바운드 규칙 보기로 가서 HTTPS의 서비스 CIDR 블록(IP 주소 범위)의 트래픽을 허용하는 규칙이 있는지 확인합니다.

참고: 네트워크 ACL은 기본적으로 인바운드 및 아웃바운드 IPv4 및 IPv6 트래픽을 모두 허용합니다. 네트워크 ACL 규칙에 따라 트래픽이 제한되는 경우 게이트웨이 엔드포인트가 생성된 서비스의 CIDR 블록을 지정하세요. 서비스 IP 주소가 변경될 때 알림을 설정하고 스크립트를 사용해 네트워크 ACL 규칙을 자동으로 업데이트하는 것이 좋습니다. 자세한 내용을 보려면 Amazon S3 IP 주소 변경을 확인하는 알림을 받으려면 어떻게 해야 하나요?를 참고하세요.

Amazon VPC 엔드포인트 정책 확인

Amazon VPC 엔드포인트 정책을 검토합니다. 사용자 지정 엔드포인트 정책을 사용할 때는 엔드포인트와 연결된 정책이 서비스에 작업을 수행할 수 있는 액세스를 허용하는지 확인하세요. 엔드포인트 정책 기본값은 서비스에 전체 액세스를 허용합니다. 자세한 내용을 보려면 엔드포인트 정책을 사용해 VPC 엔드포인트에 액세스 제어를 참고하세요.

Amazon S3 버킷 정책 확인

Amazon S3 버킷 정책을 검토해 게이트웨이 Amazon VPC 엔드포인트와 Amazon VPC에 액세스를 허용하는 버킷 정책이 있는지 확인합니다. 자세한 내용을 보려면 버킷 정책을 사용해 액세스 제어를 참조하세요.

참고: 버킷 정책은 Amazon VPC 인스턴스와 연결된 특정 공용 IP 주소나 탄력적 IP 주소에서 액세스할 때만 제한할 수 있습니다. 버킷 정책은 인스턴스와 연결된 프라이빗 IP 주소를 기반으로 액세스를 제한할 수 있습니다. 자세한 내용을 보려면 특정 IP 주소 기반 액세스 관리를 참고하세요.

프록시 서버를 사용하는 경우 서버를 통한 Amazon VPC 연결이 허용되는지 확인하세요. Amazon S3용 프록시 서버를 사용하지 않는 경우, 버킷에 액세스할 때 다음 명령을 실행해 프록시 서버를 우회하세요. example-Region을 내 리전으로 바꾸세요.

export no_proxy = mybucket.s3.<example-Region>.amazonaws.com

IAM 정책 확인

IAM 정책을 확인하고 IAM 사용자나 역할과 관련된 사용자에게 Amazon S3에 액세스할 수 있는 필수 권한이 있는지 확인합니다. 자세한 내용을 보려면 Amazon S3 버킷 액세스를 특정 IAM 역할로 제한하는 방법사용자 정책을 사용해 버킷 액세스 제어를 참고하세요.

게이트웨이 엔드포인트를 통한 트래픽 흐름 확인

트래픽이 게이트웨이 엔드포인트나 인터페이스 엔드포인트를 통과하는지 확인하려면 Amazon S3 트래픽이 게이트웨이 VPC 엔드포인트나 인터페이스 VPC 엔드포인트를 통과하는지 확인하려면 어떻게 해야 하나요?를 참고하세요.

관련 정보

AWS 리소스 액세스 관리

AWS 공식
AWS 공식업데이트됨 6달 전