Shiva씨가
S3 버킷과 VPC 간의
연결 문제 해결을 도와 드립니다.

Shiva_S3_Thumbnail

게이트웨이 엔드포인트를 사용하여 Amazon VPC(Amazon Virtual Private Cloud)의 Amazon EC2(Amazon Elastic Compute Cloud) 인스턴스에서 Amazon S3(Amazon Simple Storage Service) 버킷으로 연결하려고 하지만 작동하지 않습니다. 이 문제를 해결하려면 어떻게 해야 합니까?

Amazon VPC에서 Amazon S3으로 연결을 허용하는 보안 규칙 또는 네트워크 액세스로 인해 게이트웨이 VPC 엔드포인트 관련 연결 문제가 발생할 수 있습니다. 연결 문제를 진단하고 해결하려면 다음 리소스와 구성을 확인하십시오.

VPC에서 DNS 설정

중요: VPC에서 DNS 확인이 활성화되어야 합니다(게이트웨이 엔드포인트 제한 참조). 자체 DNS 서버를 사용하는 경우 AWS 서비스에 대한 DNS 요청이 AWS 유지 관리 IP 주소로 확인되어야 합니다.

  1. Amazon VPC 콘솔에 로그인합니다.
  2. 탐색 창의 Virtual Private Cloud에서 VPCs를 선택합니다.
  3. 리소스 목록에서 S3 연결 문제가 있는 Amazon VPC를 선택합니다.
  4. 요약 보기에서 DNS 확인yes로 설정되어야 합니다. VPC에 대한 DNS 지원 업데이트를 참조하십시오.

Amazon S3에 대한 라우팅 테이블 설정

  1. Amazon VPC 콘솔에 로그인합니다.
  2. 탐색 창의 Virtual Private Cloud에서 라우팅 테이블을 선택합니다.
  3. S3 연결 문제가 있는 VPC 서브넷과 연결된 라우팅 테이블을 선택합니다.
  4. 라우팅 보기를 선택합니다.
  5. 게이트웨이 VPC 엔드포인트를 사용하는 Amazon S3에 대한 라우팅이 있어야 합니다. 게이트웨이 엔드포인트의 라우팅을 참조하십시오.

보안 그룹 아웃바운드 규칙

  1. Amazon EC2 콘솔에 로그인합니다.
  2. 탐색 창의 [Network & Security] 아래에서 [Security Groups]를 선택합니다.
  3. 리소스 목록에서 Amazon S3에 연결하는 데 사용하는 인스턴스와 연결된 보안 그룹을 선택합니다.
  4. 아웃바운드 보기에서 사용 가능한 아웃바운드 규칙이 Amazon S3으로의 트래픽을 허용해야 합니다.

기본 아웃바운드 규칙은 모든 아웃바운드 트래픽을 허용합니다. 보안 그룹에 기본 아웃바운드 규칙이 없으며 대신 더 제한적인 규칙이 있는 경우 다음 아웃바운드 규칙 중 하나를 추가해야 합니다.

네트워크 ACL 규칙

  1. Amazon VPC 콘솔에 로그인합니다.
  2. 탐색 창의 보안에서 네트워크 ACL을 선택합니다.
  3. 리소스 목록에서 S3 연결 문제가 있는 VPC 서브넷과 연결된 네트워크 ACL을 선택합니다.
  4. 인바운드 규칙 보기에서 규칙이 임시 TCP 포트 1024-65535에서 Amazon S3에서의 인바운드 리턴 트래픽을 허용해야 합니다.
  5. 아웃바운드 규칙 보기에서 규칙이 Amazon S3으로의 트래픽을 허용해야 합니다.

참고: 기본적으로 네트워크 ACL은 모든 인바운드 및 아웃바운드 IPv4 트래픽을 허용하며, 해당하는 경우 IPv6 트래픽도 허용합니다. 네트워크 ACL 규칙이 트래픽을 제한하는 경우 S3에 대한 CIDR 블록(IP 주소 범위)을 지정해야 합니다.

게이트웨이 VPC 엔드포인트 정책

  1. Amazon VPC 콘솔에 로그인합니다.
  2. 탐색 창의 Virtual Private Cloud에서 엔드포인트를 선택합니다.
  3. 리소스 목록에서 S3 연결 문제가 있는 VPC 서브넷과 연결된 엔드포인트를 선택합니다.
  4. 정책 보기를 선택합니다.
  5. 엔드포인트 정책을 검토합니다. 정책이 연결 문제에 영향을 받는 S3 버킷 또는 IAM 사용자에 대한 액세스를 차단하는지 확인합니다. S3 버킷 또는 IAM 사용자에 대한 액세스를 활성화하도록 정책을 편집합니다. Amazon S3에 대한 엔드포인트 정책 사용을 참조하십시오.

S3 버킷 정책

  1. Amazon S3 콘솔에 로그인합니다.
  2. 연결 문제가 있는 S3 버킷을 선택합니다.
  3. 권한 보기를 선택합니다.
  4. [Bucket Policy]를 선택합니다.
  5. 버킷 정책이 연결하려는 게이트웨이 VPC 엔드포인트 및 VPC에서의 액세스를 허용해야 합니다. 게이트웨이 VPC 엔드포인트 및 VPC에서의 액세스를 활성화하도록 정책을 편집합니다. Amazon S3 버킷 정책 사용을 참조하십시오.

참고: 버킷 정책은 Amazon VPC의 인스턴스와 연결된 특정 퍼블릭 IP 주소 또는 탄력적 IP 주소에서의 액세스만 제한할 수 있습니다. 인스턴스와 연결된 프라이빗 IP 주소를 기반으로 액세스를 제한할 수는 없습니다. 특정 IP 주소에 대한 액세스 제한을 참조하십시오.

프록시 서버를 사용하는 경우 이를 통해 VPC 연결이 허용되어야 합니다. S3에 대한 프록시 서버를 사용하지 않는 경우 S3 버킷에 액세스할 때 다음 명령을 사용하여 프록시 서버를 무시합니다.

export no_proxy = mybucket.s3-us-west-2.amazonaws.com

IAM 정책

  1. AWS IAM 콘솔에 로그인합니다.
  2. 인스턴스에서 S3 버킷에 액세스하는 데 사용된 IAM 사용자 또는 역할을 선택합니다.
  3. 권한 보기를 선택합니다.
  4. IAM 사용자 또는 역할에 연결된 사용자에게 Amazon S3에 액세스하기 위한 올바른 권한이 있어야 합니다. 특정 IAM 역할에 대한 Amazon S3 버킷 액세스를 제한하는 방법안내 예제: 사용자 정책을 통해 버킷에 대한 액세스 제어를 참조하십시오.

AWS CLI 구성

AWS CLI(AWS 명령줄 인터페이스)를 구성하고 기본 AWS 리전을 설정해야 합니다. aws configure 명령을 사용하여 기본 리전 이름을 지정합니다.

기본 리전을 지정하지 않거나 기본 리전을 재정의하려면 각 AWS CLI 명령에서 --region 옵션을 설정해야 합니다.


페이지 내용이 도움이 되었습니까? | 아니요

AWS 지원 지식 센터로 돌아가기

도움이 필요하십니까? AWS 지원 센터를 방문하십시오.

게시된 날짜: 2017년 12월 14일

업데이트된 날짜: 2018년 8월 31일