보안 그룹은 VPC의 리소스로 오고 가는 트래픽을 제어하는 방화벽 역할을 한다.
인바운드 및 아웃바운드 트래픽을 허용하는 포트 및 프로토콜을 선택할 수 있다.
나중에 분리하려면 까다로워질 수 있으니, 애초에 AWS 리소스마다 따로 설정해주는 것을 추천한다.
보안 그룹을 사용하여 AWS 리소스에 대한 트래픽 제어 - Amazon Virtual Private Cloud
[VPC] - [보안 그룹] 에서 [보안 그룹 생성] 버튼을 누른다.
이 문서는 기본적으로 VPC 구성부터 ECS 배포까지를 가정하고 있다.
그렇기에 우리는 ALB, ECS의 보안 그룹을 생성할 것이다.
간단한 실습이다보니 RDS는 빠졌는데, 방법은 똑같으니 직접 해보자.
[보안 그룹 이름] 에는 기존과 같은 룰로 dev-sg-alb
라고 넣어주었다.
[설명] 은 간단하게 역할에 대해 설명하자.
[VPC] 는 이전에 만든 dev-vpc
를 사용했다.
API 서버의 로드 밸런서니까 [인바운드 규칙] 에는 다음의 두 가지 유형을 만들었다.
로드 밸런서는 외부의 트래픽을 전부 받을 것이기에 [소스] 를 0.0.0.0/0
으로 설정했다.
[보안 그룹 생성] 버튼을 눌러서 작업을 마치자.
[보안 그룹 이름] 에는 기존과 같은 룰로 dev-sg-ecs-nestjs-guide-api
라고 넣어주었다.
[설명] 은 역시 간단한 역할에 대해 설명을,
[VPC] 는 dev-vpc
를 사용한다.
앞서 가정한 NestJS 서버는 3000 포트로만 트래픽을 받기 때문에 유형은 TCP:3000 만 지정한다.
[소스] 는 앞서 생성한 [ALB 보안 그룹] 을 선택한다.
이렇게 하면 ALB를 통해 들어온 트래픽만 받도록 제한할 수 있다.
RDS를 사용한다면 이런 방식으로 똑같이 ECS 보안 그룹에서만 접근하게 제한할 수 있다.
[보안 그룹 생성] 버튼을 누르면 이제 보안 그룹 생성은 끝이다.