본문 바로가기

DevOps

[AWS] AWS S3 버킷 만들기

팀 프로젝트에서 이미지를 업로드 해야 하는 과정이 있는데,

팀 내 인프라 담당이기 때문에 AWS S3 버킷 생성을 시도해 보았다.

 

AWS S3은 Amazon Simple Storage Service 의 약자로, 객체 스토리지 서비스 중 하나이다.

데이터는 “버킷”이라는 리소스에 객체로 저장되며, 한 객체의 크기는 최대 5TB까지 가능하다고 한다.

객체는 S3 액세스 포인트를 통해서 액세스하거나 버킷 호스트 이름을 통해 직접 액세스할 수 있다.

 

또한, IAM, ACL, 버킷 정책 등 설정을 통해 S3내의 데이터에 엑세스 권한 설정을 할 수 있고,

데이터 처리나 전송 관련 기능도 제공한다고 한다.

 

S3을 사용하면서, 필요한 설정이나 기능이 있다면, 아래 AWS 페이지와 구글링을 통해 보다 공부가 필요 할 듯 하다.

 

<Reference>

https://aws.amazon.com/ko/s3/features/

 

Amazon S3 기능 - Amazon Web Services

 

aws.amazon.com

 

1. 버킷 생성

 

AWS 서비스에서 S3을 검색하면 버킷 생성이 가능한 페이지가 나온다.

 

위의 사진에서 주황색 "버킷 만들기" 버튼을 눌른다.

 

 

그 후, 가장 위에 나오는 일반 설정에서,

자신의 버킷 이름과 지역 설정을 해준다.

버킷이 많이 사용될 지역을 설정해 주는 것이 좋다. 프로젝트를 배포하는 ec2와 동일한 지역인 서울로 설정해 주었다.

 

그 후, 객체소유권을 설정하는데,

나는 내 AWS계정으로 ec2를 빌드하였고, 한 계정으로 관리 할 것이기 때문에 ACL 비활성화를 선택하였다.

 

 

그 후, 퍼블릭 엑세스 권한을 설정해 주었는데,

이는 액세스 권한을 모두에게 오픈할 것인지 접근 권한을 제한할 것인지 설정하는 것이다.

 

모든 퍼블릭 엑세스 차단을 하면 모든 접근을 차단하기 때문에, 필요에 따른 차단을 체크한 후 각각의 제한 설정을 세부적으로 하는 것이 좋다고 한다.

 

일단 퍼블릭 상태로 생성하였다.

 

버킷 버전 관리기능을 활성화하면 파일을 버전별로 관리 하기 때문에 비용이 더 들게 된다.
대신 사용자가 실수로 파일을 삭제해도 복원할 수 있다고 한다.

 

비용상 이슈로... 비활성화로 일단 설정을 해놓았다.

 

기본 암호화를 활성화 하면 버킷에 저장되는 모든 새 객체를 암호화해서 저장 한다.
또한 객체를 다운로드할 때 복호화해서 제공해준다.

 

 

설정을 완료한 후, 버킷 만들기 버튼을 누르면 버킷이 생성된다.

 

 

그 후, s3-bucket으로 들어가면, 생성한 버킷을 볼 수 있다.

 

다만 엑세스 쪽을 보면 아직 퍼블릭으로 설정된 것이 아니며, 아직 외부에서 접근이 불가능 하다.

따라서 외부에서 해당 버킷에 접근 가능하도록 하기 위해서는 버킷 정책을 수정해야 한다.

 

2. 버킷 정책 수정

해당 버킷의 이름 (air-planning)을 클릭하면,

 

 

아래의 버킷의 설정이 나오며, 권한으로 들어가, 버킷 정책의 편집을 클릭한다.

 

 

클릭하면 위의 페이지가 나오고, 버킷 ARN을 복사한 후, 정책 생성기를 클릭한다.

 

  • Select Type of Policy 에서 S3 Bucket Policy를 선택
  • Principal에 * 입력
  • Actions에 Get Object, Put Object 체크
  • Amazon Resource Name (ARN) 에 위에서 복사한 ARN을 입력한 후 /* 입력 ex)arn:aws:s3:::air-planning/*
  • Add Statement 클릭

 

 

아래의 Generate Policy를 클릭하여 뜨는 json 구문을 복사한다.

 

다시 버킷 정책 편집 페이지에 돌아가 정책에 복사한 json구문을 붙여넣기 후,

번경 사항 저장을 클릭한다.

 

그 후, 다시 S3 - 버킷에서 해당 버킷을 클릭하면,

위의 페이지가 뜨며 퍼블릭 엑세스 가능이라는 표시가 뜬다.

 

 

<전체 Reference>

https://aws.amazon.com/ko/s3/features/

 

Amazon S3 기능 - Amazon Web Services

 

aws.amazon.com

 

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-

 

[AWS] 📚 S3 개념 정리 & 버킷 생성 · 권한(Policy / ACL) 설정하기

S3 (Simple Storage Service) 개념 AWS S3는 업계 최고의 확장성과 데이터 가용성 및 보안과 성능을 제공하는 온라인 오브젝트(객체) 스토리지 서비스이다. (참고로 S 앞글자가 3개라서 S3 이라고 한다.) 쉽

inpa.tistory.com

https://chordplaylist.tistory.com/259

 

[AWS S3] 버킷 생성

버킷 생성 AWS S3 페이지에서 버킷 만들기를 클릭합니다. 버킷 이름에는 사용자가 원하는 이름을 작성합니다. AWS 리전은 현재 살고 있는 지역(나라)을 선택합니다. 객체 소유권의 경우에는 현재

chordplaylist.tistory.com

 

'DevOps' 카테고리의 다른 글

[AWS] AWS S3 Bucket 와 EC2 Instance연결  (0) 2023.01.31
[AWS] AWS S3 Access Key 발급  (2) 2023.01.31
[AWS] AWS S3 버킷에 이미지 업로드  (2) 2023.01.30