Amazon VPC 네트워킹 원리와 보안
AWS 토폴로지로 이해하는
목적
VPC에 대해 정확히 모른 상태로 그저 예제를 보고 사용하기만 했었는데, 정확한 이해를 얻는 것
학습 상태
- 1장 AWS 네트워킹 콘셉트
- 2장. VPC 네트워킹 구성 요소의 역할 분류
- 3장. VPC 네트워킹 구성 요소의 포함 관계
- 4장. 나의 AWS 전용 공간 : 계정
- 5장. AWS가 만들어 놓은 네트워크 공간
- 6장. 우리가 만들어 나갈 네트워크 공간
- 7장. 컴퓨팅 서비스의 네트워킹 요건
- 8장. 컴퓨팅 서비스 활용
- 9장. 연결 제어 I : VPC 통제 3요소
- 10장. 연결 제어 II : 분산 제어
- 11장. 연결 서비스 I : 공간과 공간 연결(양방향)
- 12장. 연결 서비스 II : 공간과 서비스 연결(단방향)
학습 메모
1장 AWS 네트워킹 콘셉트
AWS에서 사용할 수 있는 서비스 중에 VPC 네트워킹 서비스는 아래 2개로 분류된다.
- VPC 네트워킹 필수 서비스 : EC2나 RDS 등
- VPC 네트워킹 선택 가능 서비스 : Amazon Redshift는 VPC 안에 있을 수도 우리의 VPC의 연결되지 않을 수도 있다.
3장. VPC 네트워킹 구성 요소의 포함 관계
3.2.1 계정과 리전의 관계
AWS의 모든 서비스는 암묵적으로 12자리 숫자로 구성된 계정 ID 식별자가 있다. AWS Cloud는 계정 전용 공간이며, 그 공간 안에서 리전을 선택할 수 있다.
3.2 리전, VPC, 가용영역, 서브넷
- 각 리전은 VPC를 포함한다. 1개의 VPC가 여러 리전에 걸쳐있을 수는 없다.
- 가용 영역 (AZ)는 리전을 세분화해 격리시킨 공간이다.
- 1개의 VPC는 여러개의 가용영역에 걸쳐 있을 수 있다.
- 가용영역에 포함되지 않는 VPC의 구성요소도 있는데, 보안그룹 네트워크 ACL 등이 이에 포함된다.
- VPC에 의존하지 않지만, 가용영역에 의존하는 구성요소도 있는데, S3처럼 리전에는 포함되지만 VPC와 무관한 서비스이거나 VPC와 연결 해제 상태의 서비스가 이곳으로 반환된다.
- 서브넷은 VPC와 가용영역에 모두 포함되어야한다. 서비넷은 여러개의 VPC 혹은 가용영역에 걸쳐 있을 수는 없다.
4장. 나의 AWS 전용 공간 : 계정
- AWS 계정은 루트 사용자를 의미한다.
- IAM은 AWS 서비스에 접근하는 보안 주체와 인증, 그리고 인증된 보안 주체의 서비스 접근 권한을 관리하는 서비스이다.
- IAM 엔티티에게 필요한 권한만 선별적으로 부여해서 서비스 접근을 허용할 수 있다.
- 각 부서를 위해 IAM 사용자 그룹을 만들고, IAM 사용자를 만들어주는 것을 권장한다. 그러면 각각의 관리자는 자신이 필요한 최소한의 권한만을 가지고 리소스에 접근할 수 있다.
- 또한 루트 계정을 직접 사용하는 것보다, 거의 대부분의 권한을 가지고 있는 SuperUser IAM 사용자를 하나 만들어서 사용하는 것이 보안 측면에서 좋다.
- 각 IAM 사용자에게는 필요한 최소한의 권한을 부여하지 않으면, 나중에 불필요한 권한이 무엇인지 파악하기 힘들어 정책 관리에 어려움을 겪게 될 것이다.
5장. AWS가 만들어 놓은 네트워크 공간
- 데이터센터를 직접 운영하는 것에 드는 비용과 위험 부담을 생각해보면, 클라우드 서비스가 비싸더라도 규모의 경제와 혜택을 누리고 있다고 필자는 생각한다. 이를 통해 우리는 우리의 서비스에 더욱 집중할 수 있다.
- S3와 같은 서비스는 특정 리전에 종속되지 않는 글로벌 계정 직속 서비스이다. 하지만 글로벌은 논리적인 영역일 뿐이고 분명 어느 리전의 데이터 센터에서 서비스를 제공할 것이다.
- 각 리전마다 사용할 수 있는 서비스에 제약이 있기 때문에, 서비스 시작 전 주의해야한다.