내맘대로 개발 일기/뽀모로 Do!

[AWS] Amazon S3 Bucket 생성하기

bu119 2025. 8. 13. 18:00
728x90
반응형

1. 버킷(Bucket)이 필요한 이유?

Amazon S3에서 버킷(Bucket)은 모든 파일(객체)을 담는 최상위 폴더이자 저장 공간입니다.

쉽게 말해 "S3에서 나만의 클라우드 하드디스크 폴더"라고 생각하면 됩니다.

 

왜 버킷을 사용해야 할까?

  • 이미지, 동영상, 문서, 백업 파일 등을 안전하게 보관
  • 프로젝트별·서비스별로 독립 관리 가능 → 환경(개발/운영) 별로 분리해서 관리하기 좋음
  • 접근 권한, 버전 관리, 암호화 등 보안 설정을 버킷 단위로 적용 가능

2. 버킷 생성 절차

S3 버킷을 만드는 순서는 다음과 같습니다.

  1. AWS S3 콘솔 접속
  2. 버킷 만들기(Create bucket)
  3. 이름 / 리전 설정
  4. 객체 소유권(ACL) 설정
  5. 퍼블릭 접근 차단 여부 선택
  6. 버전 관리·태그·암호화 설정
  7. 버킷 생성 완료

3. 버킷 생성 방법

1️⃣ S3 콘솔 접속

1. AWS Management Console 상단 검색창에 S3 입력 후 서비스에서 [ S3 ]를 클릭합니다.

2. S3 콘솔에서 [ 버킷 만들기 (Create bucket) ]를 클릭합니다.


2️⃣ 버킷 만들기


1.  일반 구성

전 세계에서 유일한 버킷 이름을 입력합니다.

AWS 리전

  • 데이터를 저장할 물리적 위치
  • 한국 서비스 → Asia Pacific (Seoul) ap-northeast-2 권장
    이유: 사용자와 가까울수록 속도가 빠르고 데이터 전송 비용이 절감됨

버킷 이름

  • 전 세계에서 유일해야 함  S3는 전 세계적으로 이름이 겹치면 안 되기 때문
  • 소문자, 숫자, 하이픈(-)만 가능 예) my-service-bucket, project2025-storage

2. 객체 소유권 (ACL)

[ ACL 비활성화 (AWS 권장) ]을 선택합니다.

ACL 비활성화 (AWS 권장)

  • 모든 객체를 버킷 소유 계정이 소유하게 하여 권한 관리가 단순해짐
  • 권한 부여는 IAM 정책 / 버킷 정책으로만 제어

2ACL 활성화

  • 업로드하는 계정이 객체를 소유해야 하는 특수 상황(레거시 시스템)에서 사용

3. 이 버킷의 퍼블릭 액세스 차단 설정 (퍼블릭 접근 차단)

  • 모든 퍼블릭 액세스 차단: 체크해제🟩
  • 현재 설정으로 인해 이 버킷과 그 안에 포함된 객체가 퍼블릭 상태가 될 수 있음을 알고 있습니다.: 체크✅

퍼블릭 액세스 차단을 모두 해제하면, 직접 S3에 접근할 수 있는 URL을 입력하여 이미지가 정상적으로 업로드될 수 있도록 할 수 있습니다.

모든 퍼블릭 액세스 차단 (기본: 체크)

  • 기본 상태(체크)
    외부(인터넷)에서 버킷과 객체에 접근 불가능 → 보안 안전
  • 체크 해제 시
    버킷과 객체가 퍼블릭 상태가 될 수 있음
    URL로 직접 접근해 이미지를 불러올 수 있게 됨
    → 정적 웹사이트, 이미지 CDN 등 공개 파일 제공 시 사용

체크 해제 후 나타나는 확인 옵션

체크를 해제하면 AWS가 보안 경고 문구를 보여줍니다.
이때 [ 현재 설정으로 인해 퍼블릭 상태가 될 수 있음을 알고 있습니다 ]에 체크해야 계속 진행할 수 있습니다.


모든 퍼블릭 액세스 차단 – 4가지 세부 옵션 상세 설명

💡 핵심 개념

  • ACL (Access Control List) → 객체나 버킷 단위로 접근 권한을 주는 오래된 방식.
  • 버킷 정책 (Bucket Policy) / 액세스 지점 정책 → JSON 형식으로 접근 권한을 정의하는 방식.
  • “퍼블릭” → AWS 계정이 없는 익명 사용자도 접근 가능하다는 뜻.
옵션 의미 예시
새 ACL을 통한 퍼블릭 액세스 차단 새로 설정하는 ACL에서 퍼블릭 권한(AllUsers 또는 AuthenticatedUsers)을 주지 못하게 막음 새 파일을 올리면서 ACL을 퍼블릭 읽기로 주려고 하면 자동 차단
기존/임의 ACL을 통한 퍼블릭 액세스 차단 이미 있는 ACL이나 외부에서 설정된 ACL도 퍼블릭 권한이 있으면 무시 다른 AWS 계정이 ACL을 변경해 퍼블릭 권한을 주더라도 적용 안 됨
새 퍼블릭 버킷/액세스 지점 정책 차단 새로 만드는 버킷 정책이나 액세스 지점 정책에서 퍼블릭 허용 조건이 들어가면 거부 누군가 정책을 만들어 Principal: *(모든 사용자) 허용하려 하면 차단
기존/임의 퍼블릭 버킷/액세스 지점 정책 차단 이미 있는 정책이나 외부에서 만든 정책이 퍼블릭 허용이면 무시 예전에 만든 퍼블릭 정책을 그대로 두더라도 접근 불가

 

📌 정리

  • "모든 퍼블릭 액세스 차단"을 켜면 위 4가지가 전부 활성화됩니다.
  • "모든 퍼블릭 액세스 차단"을 끄고, 세부 옵션만 골라서 켜면 더 유연하게 제어할 수 있습니다.
    예: ACL 기반 퍼블릭은 막지만, 버킷 정책 기반 퍼블릭은 허용.

4. 버킷 버전 관리

버킷 버전 관리 [ 비활성화 ]를 선택합니다.

비활성화 (기본)

  • 장점: 비용 절감

활성화

  • 장점: 파일이 실수로 삭제/덮어쓰기 된 경우 복원 가능
  • 단점: 파일 버전이 누적되므로 저장 용량이 늘어나 비용 증가

5. 태그 - 선택사항

버킷이 많아졌을 때 검색·그룹화·비용 분석에 활용할 수 있습니다.  → 예) project: pomorodo, env: production


6. 기본 암호화

[ Amazon S3 관리형 키(SSE-S3)를 사용한 서버 측 암호화 ]를 선택합니다.

암호화 유형

  • Amazon S3 관리형 키(SSE-S3)를 사용한 서버 측 암호화 ✅
    • 설정이 간단하고 추가 비용 없음
  • AWS Key Management Service 키를 사용한 서버 측 암호화(SSE-KMS)
    • 키 접근 권한까지 제어해야 하는 보안·규제 환경에서 사용
  • AWS Key Management Service 키를 사용한 이중 계층 서버 측 암호화(DSSE-KMS)
    • 매우 민감한 데이터의 이중 암호화

버킷 키 (Bucket Key)

SSE-KMS/DSSE-KMS 사용 시 KMS 호출 비용 절감용 옵션

  • 비활성화
  • 활성화 ✅

7. [ 버킷 만들기 버튼 ] 클릭


3️⃣ 버킷 생성 완료

이제 S3에서 파일을 업로드하고 관리할 수 있습니다.


https://celdan.tistory.com/36

https://velog.io/@leeeeeyeon/AWS-S3%EB%A1%9C-%ED%8C%8C%EC%9D%BC-%EC%84%9C%EB%B2%84%EB%A5%BC-%EB%A7%8C%EB%93%A4%EC%96%B4%EB%B3%B4%EC%9E%90

https://inpa.tistory.com/entry/AWS-%F0%9F%93%9A-S3-%EB%B2%84%ED%82%B7-%EC%83%9D%EC%84%B1-%EC%82%AC%EC%9A%A9%EB%B2%95-%EC%8B%A4%EC%A0%84-%EA%B5%AC%EC%B6%95

728x90
반응형