Information Security Study

240308 VPC, bastion 서버, 웹 서버, 로드밸런서 본문

네트워크 캠퍼스/AWS

240308 VPC, bastion 서버, 웹 서버, 로드밸런서

gayeon_ 2024. 3. 14. 13:39

VPC로 망분리하기

VPC

 

 

VPC 생성 기본 설정

  • VPC 이름
  • IPv4 블록
  • IPv6 블록
  • IP 블록 - CIDR Classless Inter-Domain Routing형태로 정의하는 IP의 대역 범위
  • 테넌시 tenancy : 전용 하드웨어 지정 여부 → 기본값 설정

 

 

네트워크와 라우팅의 필요성

  • 라우터를 적용하면 네트워크 구조가 간단해져 구축 비용이 적게 든다.
  • 라우터가 네트워크의 관문 역할을 하기 때문에 게이트웨이라고도 한다.

 

 

서브넷과 가용 영역

서브넷

  • VPC 내부에서 다시 네트워크 단위를 개별적으로 쪼개는 단위를 의미한다.
  • 내부 네트워크의 조회 범위를 VPC에 비해 좁게 세분화해 지정가능하므로 결과적으로 라우팅시 비용을 줄여준다.

 

가용영역

  • 둘 이상의 물리적인 데이터센터를 나눠서 하나가 사용 불가능해져도 다른곳은 여전히 작동하도록 물리적인 데이터센터의 위치를 분리하는데 어떤 지역에 갖다 놓는지를 지정하는 영역이다.

 

 

서브넷 생성 시 고려사항

  1. 부 접속 허용 여부에 따라 public 영역과 private 영역을 구분
  2. 서버 이중화 설계를 위해 Main 영역과 Slave 영역을 구분

 

 

네트워크 내부 IP 주소 대역 구성 방법

  • 네트워크에 할당된 IPv4 블록의 가변 자릿수를 아래와 같이 편성하여 사용
  • 32 bit = IPv4 블록 고정 비트 수 + 서브넷 비트 수 + 리소스 비트 수
  • 서브넷 개수를 늘리면 서브넷당 리소스 개수가 줄어들고 서브넷 개수를 줄이면 서브넷당 리소스 개수가 늘어난다.

 

 

게이트웨이

이중화 서버여도 사용자는 게이트웨이를 통해 단일 진입점으로 진입해야 한다.

 

 

NAT 게이트웨이 생성하기

  • NAT게이트웨이의 주소가 퍼블릭으로 풀고싶은 영역의 엔드포인트가 된다.
  • public 영역에 갖다 붙이면 public이 다시 private하고 통신하는 구조이다.
  • 이 때 외부에서 private하고 다이렉트로 통신하는 것을 막을수 있다.

 

 

라우팅 테이블

  • 어떤 곳으로 접속했을 때 어디로 라우팅해줄지를 사전에 정의하는 테이블이다.
  • 라우터는 라우팅 테이블에 정의된대로 라우팅을 해 준다.
  • public01에 접속하는 경우 private01로 라우팅이 되어야 하고 public02에 접속하는경우 private02로 라우팅이 되어야 이중화와 가용영역 분리의 목적에 부합한다.

 

 

보안규칙

  • 배스천 서버와 로드밸런서에 대한 보안규칙이 필요하다.
  • 보안규칙을 설정하지 않으면 아무나 접속이 가능하기 때문에 private 영역은 오직 같은 VPC 내부 요소만 접근가능하게 만들어놓고 외부에서 public 영역을 접근할 때 외부에서 인증 없이도 접근가능한 영역과 인증해야만 접근가능한 영역을 나눠서 설정한다.

 

Bastion Server

  • 내부요소를 변경할 필요가 있을 때 내부와 외부를 이어주는 서버이다.
  • 배스천서버 접속시는 반드시 키페어 등의 인증수단을 함께 가지고 있어야 한다.
  • 또한 ssh접속으로만 콘솔접속을 허용할것이기 때문에 ssh에 대한 규칙만 정의한다.

 

 

웹서버 설정

  • 웹서버는 이중화를 위해 가용영역 2개에 나눠놨기 때문에 같은 웹서버 어플리케이션을 2개 배치해야 한다.
  • 외부에서 직접 접근하게 할 필요가 없기 때문에 퍼블릭 아이피는 필요없다.
  • 서브넷은 private1, 2에 배정해야 한다.

 

 

배스천서버와의 차이점

: 배스천서버는 공개되어있으나 인증이 필요하며 관리자가 스크립트만 전달하기 위해 사용하는 서버지만 웹서버는 로드밸런서를 통해 분배되어 연결되며 ssh 연결은 불가능하지만 사용자가 활용하는 영역이다.

 

 

로드밸런서 연결

  • 가용 영역은 서브넷 public 01, 02를 모두 지정해줘야 분배 가능하다.
  • 보안그룹은 외부접근도 되어야 하고 내부접근도 되어야 하기 때문에 default와 elb를 지정한다.
  • 대상 타겟은 web01, web02이다.