안녕하세요!! 이번 포스팅은 AWS의 보안 그룹에 대해 소개하겠습니다.
실제로 클라우드 고객 지원팀에서 업무를 하다가 고객사들이 많이 물어보는 질문 중 하나가 보안 그룹 설정에 관한 것입니다! 지금 부터 보안 그룹에 대한 설명을 시작 하도록 하겠습니다.
보안 그룹은 VPC의 트래픽을 통제하고 제어한는 서비스입니다.
외부에서 접속을 못하게 하는 방화벽 설정을 한다고 생각하면 됩니다.
위 그림에서 보안 그룹 (security group)을 보면 인스턴스의 트래픽을 제어하는 역할을 합니다.
다수의 인스턴스가 하나의 보안 그룹을 쓰거나, 각자의 보안그룹을 쓸 수 도 있습니다.
보안 그룹은 (인스턴스에 대한 외부 & 인스턴스 & 내부 ) 트래픽을 제어하는 가상 방화벽 역할을 합니다.
(* 여기서의 인스턴스는 vpc 내에 탑재될 수 있는 수 많은 가상 컴퓨터를 의미합니다.)
보안 그룹 규칙의 특징을 살펴보겠습니다.
1.보안 그룹은 인바운드 규칙과 아웃바운드 규칙으로 나뉩니다.
2.허용 규칙만 생성가능하고 deny는 불가능합니다.
3.모든 인바운드 트래픽이 처음부터 모두 차단되어 있기 때문에 허용할 규칙만 설정하면 됩니다.
예를 들어) 80번 포트는 모든 트래픽을 허용하지 않고 내 ip주소로 들어오는 것만 허용.
4.보안 그룹의 기본 설정인 아웃바운드 규칙은 모든 아웃바운드 트래픽을 허용합니다.
규칙을 제거할 수 있으며, 특정 아웃바운드 트래칙만 허용하는 아웃바운드 규칙을 추가할 수 있습니다.
5. 규칙을 추가, 업데이트 또는 제거할 때 변경 사랑은 보안 그룹과 연결된 모든 리소스에 자동으로 적용가능합니다.
6. 보안 그룹 규칙을 생성하면 AWS에서는 규칙에 고유한 ID가 할당 됩니다. 따라서 CLI를 사용하여 규칙을 수정하거나 삭제할 때 규칙의 ID를 사용할 수 있습니다.
7.보안 그룹은 인스턴스 단위로 설정되며, 하나의 인스턴스에는 하나 이상의 보안 그룹 설정이 가능합니다.
-최대 5개 동시 적용도 가능합니다.
8.각 인스턴스에 서로 다른 보안 그룹도 할당 가능합니다.
9.설정된 인스턴스는 연결되있는 보안그룹의 모든 룰에 적용 받습니다.
10.보안그룹은 stateful로 상태를 저장하여 한 번 인바운드를 통과하는 트래픽은 아웃바운드의 규칙 적용을 받지 않습니다.
***stateful 에 대해 간단히 설명을 하면 인바운드에만 허용시켜두면 3개 프로토콜은 아웃바운드 규칙에 영향을 받지 않고
트래픽을 왕래 한다는 것입니다.
인스턴스 용도에 따라 쓰이는 보안그룹 프로토콜을 살펴보겠습니다.
웹 서버의 경우
-인바운드 규칙은 80(HTTP)번과 443(HTTPS)울 허용한다. 아웃바운드 규칙도 마찬가지로 80번과 443번 포트를 허용합니다.
애플리케이션 로드밸런스의 경우
-인바운드 규칙은 80번을 허용 합니다.
-아웃바운드는 웹서버와 주로 연결하는데 80번 포트와 443포트로 웹 서버와 연결해야 합니다.
mysql의 경우
-3306포트를 허용합니다.
-외부와의 통신을 차단해야 되기 때문에 아웃바운드는 허용하지 않습니다.
보안 그룹과 함께 NACL도 함께 공부하셔야 합니다.
다음 포스팅때 이어서 설명하도록 하겠습니다.^^
'CSP (Cloud Service Provider) > AWS' 카테고리의 다른 글
AWS Data Lifecycle Manager (0) | 2022.06.08 |
---|---|
[AWS] CDN (AWS CloudFront vs Cloudflare) (0) | 2022.06.08 |
[AWS] IAM (0) | 2022.06.02 |
AWS Snow Family (2) | 2022.06.02 |
AWS Elastic Beanstalk이란? (0) | 2022.06.02 |
댓글