피드로 돌아가기
Dev.toInfrastructure
원문 읽기
Terraform 기반 S3-CloudFront-OAC 결합을 통한 보안 정적 웹사이트 구축
Hosting a Static Website on AWS with S3 and CloudFront using Terraform
AI 요약
Context
S3 단독 호스팅 시 발생하는 Public Bucket 노출 위험과 글로벌 캐싱 부재로 인한 지연 시간 증가 문제를 해결하고자 함. 인프라 관리의 일관성을 위해 Terraform 기반의 Infrastructure as Code(IaC) 도입이 필요했던 상황임.
Technical Solution
- Public Access를 완전히 차단한 Private S3 Bucket 설계를 통한 데이터 보안 강화
- OAI의 대안인 Origin Access Control(OAC) 적용으로 CloudFront 전용 보안 액세스 경로 구축
- Bucket Policy 최적화를 통한 CloudFront 외의 모든 직접 접근 차단 구현
fileset()과for_each조합을 이용한 정적 자산의 동적 업로드 자동화 로직 설계lookup()함수를 활용한 파일 확장자별 MIME Type 매핑으로 브라우저 렌더링 정확도 확보aws_s3_object최신 리소스 적용을 통한 Provider 버전 호환성 및 안정성 유지
실천 포인트
1. S3 정적 호스팅 시 Public Access를 차단하고 CloudFront OAC를 적용했는지 확인
2. Terraform `for_each`와 `fileset`을 활용해 파일 업로드 프로세스를 자동화했는지 검토
3. `lookup` 함수를 통해 Content-Type이 올바르게 설정되어 MIME Type 오류가 없는지 검증
4. 최신 Terraform Provider 문서를 참조하여 Deprecated 된 리소스를 적시에 교체