Gateway VPC Endpoint

도은호·2025년 10월 10일
0

AWS SAA

목록 보기
31/46

게이트웨이 VPC 엔드포인트VPC 내부 라우팅만으로 S3·DynamoDB에 사설로 접속하게 해주는 엔드포인트예요. NAT/Internet Gateway 없이도 가능하고, 추가 시간당 비용이 없음(전송·요청료는 별도).


1) Gateway VPC Endpoint란?

  • 종류: VPC Endpoint의 한 타입(= Gateway).
  • 대상 서비스: Amazon S3, Amazon DynamoDB만.
  • 형태: ENI(네트워크 인터페이스) 없이 라우트테이블에 프리픽스 라우트(서비스 Prefix List) 를 추가하는 구조.

2) 어떻게 동작하나?

EC2(프라이빗 서브넷)
   └─ Route Table:  S3 Prefix →  Gateway Endpoint
                      │
                 (VPC 내부 전용 경로)
                      │
                S3/DynamoDB (리전)
  • 서브넷 Route Table에 서비스 프리픽스(pl-xxxx)엔드포인트로 향하도록 자동 추가.
  • 트래픽은 공인 인터넷을 통과하지 않고 AWS 내부 경로로 전달.
  • Security Group을 붙이지 않음(게이트웨이형이므로). 접근 통제는 엔드포인트 정책 + 리소스 정책으로.

3) 왜 쓰나? (장점)

  • 인터넷 차단 환경에서도 S3/DynamoDB 접근 가능(IGW·NAT 불필요).
  • 비용 절감: NAT Gateway 시간당·처리량 과금 제거(S3/DynamoDB 트래픽에 한해).
  • 간단·확장성: 관리형, 수평 확장 고민 없음.
  • 보안 강화: 퍼블릭 경로 미사용 + 엔드포인트/버킷 정책으로 VPC 한정 가능(예: aws:sourceVpce).

4) 보안(정책) 포인트

  • 엔드포인트 정책(VPCE Policy): 이 엔드포인트로 어떤 S3 버킷/DynamoDB 테이블에 어떤 액션을 허용할지 정의.

  • 리소스 정책과 결합: S3 버킷 정책에서

    • Condition: { "StringEquals": { "aws:SourceVpce": "vpce-abc..." } }해당 VPC 엔드포인트 경유만 허용.
    • 필요 시 aws:SourceVpc특정 VPC에서만 접근 허용.

5) 설정 절차 (콘솔/CLI 공통 흐름)

  1. VPC → Endpoints → Create
  2. Service: com.amazonaws.<region>.s3 또는 dynamodb 선택
  3. VPC/서브넷 라우트테이블 선택(연결할 서브넷의 Route Table 지정)
  4. Policy: 기본 허용 or 커스텀 최소권한
  5. S3 버킷/테이블 정책 보완(원하면 SourceVpce로 강제)

6) 비용

  • 엔드포인트 자체 비용: 없음(시간당 과금 X).
  • 유지 비용: 해당 서비스의 요청·데이터 전송 요금은 정상 과금.
  • 절감 효과: NAT GW를 우회하므로 NAT 처리량 과금/시간당 과금 절감.

7) 제약/주의사항

  • 지원 서비스 제한: S3 / DynamoDB만 게이트웨이형. (그 외 서비스는 보통 Interface Endpoint(PrivateLink) 사용)
  • 접근 범위: 동일 VPC 내부만 사용. VPC Peering/TGW/Direct Connect 경유 접근 불가(게이트웨이형 특성).
  • Security Group 미적용: 네트워크 레벨 제어는 NACL/라우트, 세부 권한은 정책으로.
  • 리전 종속: VPC와 같은 리전의 서비스에만 연결.
  • DNS 특성: 별도 엔드포인트 DNS를 쓰지 않고, 라우트가 내부로 바뀜(애플리케이션 코드는 기존 S3/DynamoDB 엔드포인트 그대로 사용).

8) 자주 쓰는 정책 예시

(A) 엔드포인트 정책(특정 버킷만 허용)

{
  "Statement": [{
    "Effect": "Allow",
    "Principal": "*",
    "Action": ["s3:*"],
    "Resource": [
      "arn:aws:s3:::my-logs-bucket",
      "arn:aws:s3:::my-logs-bucket/*"
    ]
  }]
}

(B) S3 버킷 정책(해당 VPC 엔드포인트에서만 허용)

{
  "Statement": [{
    "Effect": "Allow",
    "Principal": "*",
    "Action": ["s3:GetObject","s3:PutObject"],
    "Resource": "arn:aws:s3:::my-logs-bucket/*",
    "Condition": { "StringEquals": { "aws:SourceVpce": "vpce-0abc123xyz" } }
  }]
}

9) 운영 체크리스트

  • 필요 서브넷의 Route Table 전부 연결했는가? (빠진 서브넷은 퍼블릭 경로로 나가거나 실패)
  • 엔드포인트/버킷(또는 테이블) 정책 최소 권한인지?
  • NAT 절감 효과 모니터링(CloudWatch + 청구 리포트)
  • VPC 밖(온프렘/다른 VPC) 에서는 게이트웨이형 불가Interface Endpoint/프록시 검토

10) 언제 무엇을 선택?

요구권장
VPC 내부에서 S3/DynamoDB 사설 접근Gateway Endpoint
다른 서비스(Secrets, SQS, API 등) 사설 접근Interface Endpoint(PrivateLink)
온프렘/다른 VPC에서 사설 접근Interface Endpoint + DX/TGW 구성

요약

  • 게이트웨이 VPC 엔드포인트 = 라우트 기반 사설 경로(S3·DynamoDB 전용).
  • NAT/IGW 없이 접근 가능, 엔드포인트 요금 없음, 정책으로 버킷/테이블 제한.
  • VPC 내부 전용(피어링/DX 경유 X). 그 외 서비스/크로스 VPC/온프렘은 Interface Endpoint 검토.
profile
`•.¸¸.•´´¯`••._.• 🎀 𝒸𝓇𝒶𝓏𝓎 𝓅𝓈𝓎𝒸𝒽💞𝓅𝒶𝓉𝒽 🎀 •._.••`¯´´•.¸¸.•`

0개의 댓글