✍학습 내용
AWS의 유저
루트유저란?
- 생성한 모든 권한을 자동으로 가지고 있음.
- 생성시 만든 이메일 주소로 로그인
- 탈취당했을 때 복구가 매우 힘듬: 사용을 자제하고 MFA 설정 필요
- 루트 유저는 관리용으로만 이용 : 계정 설정 변경 빌링 등
- AWS API 호출 불가(AccessKey/Secret AccessKey 부여 불가)
IAM유저란?
- IAM(Identity and Access Management)을 통해 생성한 유저
- 만들 때 주어진 아이디로 로그인
- 기본 권한 없음 : 따로 권한을 부여해야 함
- 꼭 사람이 아닌 어플리케이션 등의 가상의 주체를 대표할 수도 있음.
- AWS API 호출 기능
- AccessKey:아이디 개념, Secret Access Key : 패스워드 개념(공개되면 x, 재발급x)
- AWS의 관리를 제외한 모든 작업은 관리용 IAM User를 만들어서 사용
- 권한 부여시 루트유저와 같이 모든 권한을 가질 수 있지만, 빌링 관련 권한은 루트 유저가 허용해야 함
실습순서 :
- AWS 계정 만들기 / 루트유저로 로그인 , MFA 설정(OTP필요)(보안자격증명 → qr코드찍기 →mfa코드) / 계정별명생성 (대시보드→계정별칭생성)/ 관리권한 가진 IAM유저 생성(사용자→사용자추가) / IAM유저 MFA 설정 / 루트유저로 로그아웃하고 IAM유저로 로그인하기(빌링빼고 다 아에임유저로 가능)
- 사용자 그룹 만들고 사용자 만들고 그룹에 넣기도 해봄
IAM
IAM이란
- AWS 서비스와 리소스에 대한 액세스를 안전하게 관리 할 수 있게 하기 위해, AWS사용자 및 그룹을 만들고 관리하며 AWS 리로스에 대한 액세스를 허용 및 거부 가능
- AWS 어카운트 관리 및 리소스/사용자/서비스의 권한제어
- 사용자의 생성 및 관리 및 계정의 보안
- 사용자의 패스워드 정책 관리 (일정 시간마다 패스워드 변경 등)
- 다른 계정과의 리소스 공유
- Identity Federation(facebook 로그인, 구글 로그인 등..)
- 계정에 별명 부여 가능 → 로그인 주소 생성 가능
IAM구성
- 사용자
- 실제 aws를 사용하는 사람 혹은 어플리케이션을 의미
- 그룹
- 사용자의 집합
- 그룹에 속한 사용자는 그룹에 부여된 권한을 행사
- 정책
- 사용자와 그룹, 역할이 무엇을 할 수 있는지에 관한 문서
- JSON형식으로 정의
- 역할
- AWS리소스에 부여하여 AWS리소스가 무엇을 할 수 있는지를 정의
- 혹은 다른 사용자가 역할을 부여받아 사용
- 다른 자격에 대해서 신뢰 관계를 구축 가능
- 역할을 바꾸어 가며 서비스를 사용 가능


IAM 자격 증명 보고서
- 계정의 모든 사용자와 암호, 엑세스 키, MFA 장치등의 증명 상태를 나열하는 보고서를 생성하고 다운 가능
- 4시간에 한번씩 생성 가능
- AWS 콘솔,CLI,API에서 생성 요청 및 다운로드 가능
- 포함되는 정보
IAM모범사용
- 루트 사용자 사용X
- 불필요한 사용자 만들기 X
- 가능하면 그룹과 정책 사용하기 , 최소한의 권한만 허용하는 습관 들이기
- MFA 활성화 하기 , ACCESSKEY 대신 역할 활용하기
가상화
가상화란?
- 단일 컴퓨터의 하드웨어 요소를 일반적으로 가상머신(VM)이라고 하는 다수의 가상 컴퓨터로 분할할 수 있도록 해주는 기술( ex)빌드/웹/메일 ..⇒가상화 후 하나의 서버로 )
가상화의 역사
- 1세대 : 모든 시스템 요소가 에뮬레이터 안에서 돌아 감 ⇒즉 CPU, 하드디스크, 마더보드 등 모든 요소를 에뮬레이터로 구현하여 OS와 연동
- 2세대 :게스트OS = 하이퍼바이저(OS와 하드웨어 사이 존재하는 가상화 매니저)와 통신, 속도의 향상 but 몇몇 요소 에뮬레이터 필요 ⇒ 느림
- 3세대 : HVM ⇒ 하드웨어에서 직접 가상화 지원 , 직접 Guest-OS가 하드웨어와 통신 =빠른속도
⇒ 이미 구축되어있는 가상화 가능한 서버의 한 부분 할당해주는 것
프리티어 서비스
- 1대 기준 750시간 ( 각각아님)
- 계정→결제대시보드→Free tier통해 확인 가능