Spring 심화 (보안 그룹, VPC)

KimGwangmin·어제

보안 그룹

AWS 리소스의 가상 방화벽

  • 개별 리소스마다 리소스에 대한 네트워크 트래픽 제어
  • 명단에 없으면 무조건 차단 (Whitelist)
  • 누가 들어오고 나가는지 확인 가능(Stateful)
    • 보통 들어올 때 규칙으로 걸러내고, 나갈 때는 검사하지 않는다

Whitelist

  • 규칙은 허용(Allow)만 존재, 차단(Deny)은 없음
  • 적혀있지 않은 모든 트래픽은 차단

Stateful

  • 인바운드: 들어오는 트래픽, 기본값은 모두 차단
  • 아웃바운드: 나가는 트래픽, 기본값은 모두 허용

VPC (Virtual Private Cloud)

AWS 클라우드 내에 만드는 사설 네트워크
다른 AWS 계정의 네트워크와 논리적으로 격리됨

  • 사설 IP 대역: 내부망 전용으로 할당, 외부 인터넷에서 접근 불가
    • 주로 10.x.x.x 사용
    • AWS에서 많이 사용하는 값은 10.0.0.0/16 (약 65000개 IP 공간)
    • 자세한 내용은 CIDR 참조

사설 IP 대역 구분

  • A클래스: 10.0.0.0 ~ 10.255.255.255
  • B클래스: 172.16.0.0 ~ 172.31.255.255
  • C클래스: 192.168.0.0 ~ 192.168.255.255 (보통 집이나 사무실 공유기에서 많이 사용하는 대역)

Subnet

VPC 네트워크를 작게 쪼갠 구역

  • Region -> VPC -> Subnet으로 포함관계를 가짐
  • 서브넷 = 하나의 가용 영역(AZ, 데이터센터)
  • 고가용성 확보를 위해 데이터센터를 여러 개 두듯, 서브넷 역시 여러 개 만들어야 함
  • VPC 전체 IP(예: 10.0.0.0/16)를 서브넷들이 나눠 가짐

라우팅 테이블 (Route Table)

네트워크 트래픽이 어디로 가야 하는지 결정하는 규칙(표지판)

  • 모든 서브넷은 반드시 하나의 라우팅 테이블과 연결됨

라우팅 규칙

1. Local (내부 통신)

  • 도착지가 VPC 내부(10.0.x.x)일 경우
  • VPC 안에서 찾아서 보냄
  • 필수 규칙(삭제할 수 없음)
  • VPC 내 모든 서버 간에는 별도 설정 없이 통신 가능

2. External (외부 통신)

  • 도착지가 모르는 주소(0.0.0.0/0), 즉 인터넷일 경우
  • 인터넷 게이트웨이(VPC의 정문)로 보냄
  • 규칙의 유무에 따라 Public/Private이 갈림

IGW (Internet Gateway)

VPC와 인터넷을 연결하는 유일한 통로 (VPC 하나는 하나의 IGW만 가질 수 있음)

  • VPC는 기본적으로 고립망이라, IGW가 없으면 내부 인프라에서 인터넷 접속 불가능

Public/Private Subnet

Public Subnet

IGW로 향하는 경로가 있는 서브넷

라우팅 규칙

  1. VPC 내부 통신용 (자동 생성됨): 172.31.0.0/16 -> local
  2. 인터넷 연결용: 0.0.0.0/0 -> igw-xxxxxxxx

172.31.0.0/16는 AWS에서 기본 VPC 생성 시 자동으로 부여하는 표준 사설 IP 대역

Private Subnet

IGW로 향하는 경로가 없는 서브넷

라우팅 규칙

  1. VPC 내부 통신용 (자동 생성됨): 172.31.0.0/16 -> local
  2. 외부 통신용 규칙은 없음

0개의 댓글