Skip to content

Private Amazon S3 Bucket 운영

김동철 edited this page Jan 24, 2024 · 4 revisions

문제 상황

  • 이미지 저장용 S3 버킷이 외부에 노출되어 있어 비인가 접근 가능성이 존재함


해결 과정

1. Amazon CloudFront를 활용한 S3 Origin 보호

  • CloudFront의 엔드포인트를 사용함으로써 S3 버킷의 주소를 감출 수 있음

2. Gateway VPC Endpoint 설정

  • VPC에서 Amazon S3로 향하는 트래픽을 Gateway Endpoint로 라우팅
  • EC2 <-> S3 통신을 프라이빗으로 전환

3. S3 버킷 퍼블릭 액세스 차단

  • 더 이상 퍼블릭 액세스를 허용할 이유가 없으므로 이를 완전히 차단
    • 클라이언트 : CloudFront를 통해 이미지를 다운받기 때문에 S3 버킷에 접근하지 않음
    • 서버 : AWS 내부망을 통해 S3 버킷으로 접근하여 프라이빗 액세스가 필요 없음

개선 결과

  • S3 버킷의 퍼블릭 액세스를 차단하여 비인가 접근을 방지
  • CloudFront를 활용한 DDOS 방어 및 이미지 조회 속도 개선
  • EC2 인스턴스와 S3 버킷간의 프라이빗 연결을 통한 통신 비용 절약

보완할 점