1. AWS의 자격 증명
1) 콘솔 액세스 자격 증명 = 콘솔 로그인을 위해 필요
- Root Email / Password : 루트 로그인을 위해 사용
- IAM 유저 이름 / Password : IAM 유저가 로그인 하기 위해 사용
- Multi-Factor authentication(MFA): 다른 자격 증명(위 2가지)에 보안을 강화하기 위한 임시 비밀번호
2) 프로그램 방식 엑세스 자격 증명
- AWS의 CLI 혹은 SDK를 사용할 때 필요한 자격 증명
- 장기 자격 증명과 임시 자격 증명으로 구성된다.
- 구성 : Access Key ID : 유저 이름에 해당하는 키로 공개되어도 무방하다 / Secret Access Key : 패스워드에 해당하는 키 / Tocken : 임시 자격 증명에만 사용. 임시 자격 증명이 유효한지 검증하기 위해 사용한다.
3) 장기 자격 증명
- IAM 유저로 부터 생성된다. (유저 하나당 2개의 자격 증명 발급 가능)
- 반 영구적이며, 삭제하지 않으면 유효기간 없이 계속 사용가능하다. (주로 어플리케이션에 하드코딩 되어 사용된다. )
- Secret Access Key의 경우 유실시 복구 불가능
4) 임시 자격 증명
- 역할(Role)을 identity가 Assume해서 생성
- 임시적 : 몇 분에서 몇 시간가지 지속기간이 정해져 있음, 만료 된 후에는 더 이상 사용 불가능
- 동적으로 생성되서 사용 : 하드 코딩이 아니라 필요한 시점에 생성해서 활용, 이후 필요에 따라 재 발급
- 보안이 뛰어남 : 지속기간이 정해져 있고 IAM 유저 외에 다양한 Identity에게 자격 증명 부여 가능하다. 예를 들어 Facebook, Google, Open ID, 회사 조직 같이 다양한 Identity에게 권한 부여 가능.
- AWS STS 를 사용해 생성하고, IAM User, Web Identity(ex, Facebook 유저)가 특정 Role을 Assume하여 자격 증명을 생성한다.
- Tocken은 임시 자격증명의 유효성을 검증한다. (시간 제한)
2. 보안그룹 (Security Group)
인스턴스에 대한 인바운드 및 아웃바운드 트래픽을 제어하는 가상 방화벽 역할을 한다. 또한, Network Access Control List(NACL)와 함께 방화벽의 역할을 하는 서비스
- Port 허용 : 기본적으로 모든 포트는 비활성화, 선택적으로 트래픽이 지나갈 수 있는 Port와 Source를 설정가능하다.
- Deny(특정 아이피 차단)은 불가능하다. NACL로 Deny가능하다.
- 인스턴스 단위로 보안그룹을 설정한다, 정확히는 ENI(Elastic Network Interface)단위이고, 하나의 인스턴스에 하나 이상의 보안그룹설정 가능하다.
- NACL의 경우 서브넷 단위이고 설정된 인스턴스는 설정한 모든 보안그룹의 룰을 적용 받음
보안 그룹의 Stateful
- 보안그룹은 Stateful하다. 이말은 Inbound로 들어온 트래픽이 별 다른 Outbound설정 없이 나갈 수 있다는 말이다.
- 반면, NACL은 Stateless하다.
3. 네트워크 ACL(NACL)
- 보안그룹처럼 방화벽 역할을 담당
- 서브넷 단위로 NACL을 설정하고
- 포트 및 아이피를 직접 Deny 가능하다. - 외부 공격을 받는 상황같이 특정 아이피를 블록하고 싶을 때 사용한다.
4. 정리 ( 보안그룹 vs. Network Access Control List(NACL))
보안 그룹 :
- 가상의 방화벽 역할
- 인스턴스 단위
- Port의 허용만 가능(Deny는 NACL에서 가능)
- Stateful
Network Access Control List(NACL)
- 가상의 방화벽
- 서브넷 단위
- Port의 허용과 Deny 가능
- Stateless하다.
5. 보안 그룹의 Source (3가지)
- IP Range(CIDR)
- 접두사 목록 : 하나 이상의 CIDR 블록의 집합, 보안그룹 혹은 Route Table에서 많은 대상을 참조하기 위해 사용한다. 생성 시점에 최대 엔트리 숫자를 지정한다.(이후 변경 가능)
테이블을 이렇게 미리 빼두고 보안그룹에서 참조할 수 있도록 설정하는 것이 접두사 목록이다.
- 다른 보안그룹(보안 그룹 참조)
-> ELB에서 outbound 보안그룹 설정할 때 사용하기도 한다.
※ 참고 : https://www.youtube.com/watch?v=pLlX-uxhsXg
https://www.youtube.com/watch?v=0hXYfi55_Ww&list=PLfth0bK2MgIaceKn-kqXDOAzBzsXlbBb_&index=2
'DevOps > AWS' 카테고리의 다른 글
AccessKey 대신 IAM 역할을 활용한 EC2권한 부여 (0) | 2022.06.18 |
---|---|
NACL(Network Access Control List) (0) | 2022.06.18 |
구조화된 데이터 분석 (0) | 2022.05.07 |
CloudFront (0) | 2022.04.11 |
Part 2. Storage System (0) | 2022.04.10 |