[AWS]쉽게 설명하는 AWS 기초 강좌(유튜브 강의)

김정현·2022년 6월 6일
0

기타

목록 보기
1/25

얼마 전 새롭게 시작한 스터디에서 프로젝트를 올릴 서버가 필요해졌고
사다리를 탄 결과 내가 aws계정을 담당하게 되었다

aws관련해서 보안, 과금 이슈는 이전부터 들어왔기 때문에
초기에 공부를 해서 제대로 설정을 해두자라는 생각이 들어 자료를 찾아보았다

처음에는 한 기업의 유료 서비스일뿐이라고 생각했지만
그 내용은 관련 책이나 자격증이 있을 정도로 방대했고
결국 유튜브에서 초기 설정에 관한 강의를 찾아 정리하기로 하였다

참고한 영상:
https://www.youtube.com/watch?v=JjiYqBl2328&list=PLfth0bK2MgIan-SzGpHIbfnCnjj583K2m&index=1


(1/15) 클라우드 컴퓨팅이란?

클라우드 컴퓨팅이란 IT리소스를 인터넷을 통해 온디맨드로 제공하고
사용한 만큼만 비용을 지불하는 것을 말한다
온디맨드: 수요에 반응함

데이터 센터란 서버가 모여있는,
어플리케이션의 서버를 호스팅하는 실제 시설을 뜻한다
데이터 센터에는 몇 가지 문제가 있었는데

데이터 센터의 문제점

  • 운영 비용이 많이 소요됨
  • 느린 구축시간

이런 문제로 인하여 기업들은 클라우드 환경을 구축하기 시작한다
타지를 갈 때, 숙소를 내가 직접 지을지, 호텔에 머물지를 선택하는 것과 비슷하다
내가 숙소를 짓는다면 굉장한 자원과 시간이 들어가는데 비해
호텔은 비용만 지불하면 필요한 만큼 숙박을 제공받을 수 있다

또한 서버를 공동구매하는 효과로 비용이 절감되고
서버의 사용량을 수요에 따라 유연하게 조절하여, 필요한 만큼만 사용할 수 있다는 장점이 있다


(2/15) 자격증 관련 이야기

자격증 따면 좋다는 내용


(3/15) 클라우드 컴퓨팅의 종류

클라우드 컴퓨팅의 분류 유형은 크게 두가지로 나눌 수 있다

클라우드에서 무엇을 제공하는지에 따라 나누는 클라우드 컴퓨팅 모델
클라우드 컴퓨팅을 어떻게 제공하는지에 따라 나누는 클라우드 컴퓨팅 배포 모델이 있다

클라우드 컴퓨팅 모델

IaaS

Infrastructure as a Service의 약자

Network, Storage, Computing을 제공,
OS와 APP은 직접 설치하여 사용해야 한다

가상의 컴퓨터를 임대하는 것과 비슷하다
예)EC2

PaaS

Platform as a Service의 약자

Network, Storage, Computing, OS+runtime환경을 제공,
APP은 직접 설치하여 사용해야 한다
예) Firebase, Google App Engine 등

SaaS

Software as a Service의 약자
Network, Storage, Computing, OS+runtime환경, APP을 모두 제공

서비스 자체를 제공하기 때문에 별도의 세팅 없이 서비스 이용이 가능하다
예)Gmail, DromBox, Slack, Google Docs등

클라우드 컴퓨팅 배포 모델


(4/15) AWS의 구조

리전

AWS 서비스가 제공되는 서버의 물리적 위치
각 리전에는 고유의 코드가 부여되고 리전별로 가능한 서비스가 다르다
리전별로 지연 속도, 관련 법률, 제공하는 서비스가 다르기 때문에 적절한 리전을 선택하는 것이 좋다

가용 영역

리전의 하부 단위이다
리전은 반듯이 2개 이상의 가용영역으로 구성되어 있다
하나 이상의 데이터 센터로 구성되어 있다
리전간의 연결은 매우 빠른 전용 네트워크로 연결되어 있다
재해를 대비하여 반둣이 물리적으로 일정 거리 이상, 100km이내에 위치한다
사용자마다 가용 영역과 연결된 데이터 센터가 다르다

엣지로케이션

CDN등을 빠르게 제공하기 위한 기다

글로벌 서비스/리전서비스

전 지역에 제공되는 글로벌 서비스와
특정 리전에서 제공되는 서비스는 다음과 같다
글로벌 서비스: cloudFront, IAM, Route53, WAF
리전 서비스: 대부분의 서비스, S3(S3은 글로벌 서비스이나 데이터는 리전에 종속됨)

ARN

aws의 모든 리소스는 ARN이라는 고유의 아이디가 부여된다


(5/15) AWS 계정 만들기 및 첫 설정

aws계정에는 크게 두 종류가 있다
첫 번째로, 계정 생성 시 만들어지는, 모든 권한에 접근 가능한 루트 계정
두 번째로, 부여한 권한만을 사용할 수 있는 IAM계정이 있다

IAM 계정은 루트 계정을 만들 때 주어진 아이디로 로그인한다

IAM계정은 외부로부터 탈취당했을 때,
IAM계정 삭제를 통한 제어가 가능하지만 루트 계정은 조치가 어렵다
따라서 루트 계정의 사용은 최소화하는 것이 좋다

따라서 루트 계정으로 관리용 IAM계정을 만들고
그것을 통해 IAM계정들을 관리하여
루트 계정의 사용을 줄이는 것이 가장 좋은 방법이다
단 빌링 관련 권한은 별도로 루트 계정에서의 허용이 필요하다

보안을 위하여 구글OTP사용을 통해
루트 계정과 관리용 IAM계정에 MFA를 설정해줘야 한다

리전 설정하기⭐️

로그인 후 리전을 항상 서울로 바꿔줘야 한다

MFA 설정하기

메뉴창 > 보안 자격 증명 > MFA설정을 들어간 뒤
모바일 기기를 사용한 보안 인증을 위하여 가상 MFA 디바이스를 선택한다

선택 후 계속 버튼을 누르면 QR코드를 확인할 수 있는 창이 나온다
그 QR코드를 통해 구글OTP앱과 연결이 가능하다

이 때 QR코드는 이미지 파일로 안전한 곳에 저장해주는 것이 좋다
휴대폰을 분실할 시 QR코드가 없다면 계정에 관한 조치를 취하기 매우 어려워지기 때문에
이 때 저장해둔 QR코드를 사용할 수 있다

별칭 설정하기

죄측 슬라이드에서 대시보드를 클릭한다
우측 메뉴의 계정 별칭을 원하는 별칭으로 변경한다

IAM 사용자 추가하기

죄측 슬라이드에서 사용자를 클릭한다

사용자 이름을 입력하고 엑세스키, 암호를 체크 후 비밀번호를 입력한다

이 때 비밀번호 재설정 필요칸을 체크하면
첫 로그인 시 비밀번호 변경이 가능하므로
다른 사람에게 IAM계정을 생성할 때 체크해주면 좋다

권한 설정에서 최상단에 있는 항목을 체크하면
해당 계정에 빌링 기능을 제외한 모든 권한을 부여할 수 있다

태그 설정

생략

사용자 추가 성공

사용자 추가 성공 시
엑세스 키 ID와 비밀 엑세스 키를 확인할 수 있는 창이 나온다

재발급이 번거로으므로 .csv를 다운받는 것이 좋다

⭐️비밀 엑세스 키가 노출되면 계정이 노출되는 것이므로 절때 외부로 노출되서는 안된다

MFA 설정하기2

관리자 IAM계정 또한 MFA설정을 해주어야 한다
사용자에서 생성한 admin계정을 클릭한 뒤
보안 자격 증명을 들어가 MFA설정을 해준다

IAM계정의 QR코드는 탈취당할 시 삭제처리가 가능하기 때문에
QR코드를 저장할 필요는 없다


(6/15)IAM 기초

IAM을 사용하면 AWS서비스와 리소스에 대한 액세스를 안전하게 관리할 수 있다
AWS 사용자 및 그룹을 만들고 관리하며 AWS 리소스에 대한 엑세스를 허용 및 거부할 수 있다

IAM의 특징:

  • AWS어카운트 관리 및 리소스/사용자.서비스의 권한 제어
  • 사용자의 생성 및 관리 및 계정의 보안
  • 다른 계정과의 리소스 공유
  • 계정에 별명 부여 가능 -> 로그인 주소 생성 가능
  • IAM은 글로벌 서비스이다

IAM의 구성:

모든 것은 정책으로 구분되며,
상세한 내용까지 권한 부여가 가능하다

IAM 모범 사용 사례:

  • 루트 사용자는 사용하지 않기
  • 불필요한 사용자는 만들지 않기
  • 가능하면 그룹가 정책을 사용하기
  • 최소한의 권한만을 허용하는 습관을 들이기
  • MFA를 활성화 하기
  • AccessKey 대신 역할을 활용하기
  • IAM 자격 증명 보고서 활용하기
profile
개발 공부 블로그

0개의 댓글