[AWS] AWS VPC? (Feat. ChatGPT)
💡 GPT가 소개해준 커리큘럼
- 가상 사설 네트워크(VPC) 개념 이해
- VPC 구성 요소 및 서브넷 설정
- 네트워크 액세스 제어 (NACLs) 및 보안 그룹 설정
가상 사설 네트워크(VPC) 개념 이해
가상 사설 네트워크(VPC)란 ?
AWS 클라우드에서 사용자가 정의한 가상 네트워크이다.
이를 통해 사용자는 독립적인 네트워크를 구성하고 가상 리소스를 배포할 수 있다.
AWS VPC는 전용 네트워크 리소스를 제공하므로 보안과 네트워크 관리에 대한 높은 수준의 제어를 가능하게 한다.
AWS VPC의 구성요소
- 서브넷(Subnet)
- VPC 내에서 IP 주소 범위를 나타내는 서브넷을 정의할 수 있다. 서브넷은 가용 영역(Availability Zone)에 따라 리소스를 배치할 수 있도록 도와준다.
- 라우팅 테이블(Routing Table)
- 트래픽이 어떻게 전달되는지 정의하는 규칙의 집합이다. 서브넷은 라우팅 테이블을 참조하여 트래픽의 경로를 결정한다.
- 인터넷 게이트워이(Internet Gateway)
- VPC 내의 인스턴스가 인터넷과 통신할 수 있도록 해준다. 인터넷 게이트웨이를 통해 외부와의 연결이 가능해진다.
- 보안 그룹(Security Group)
- 인스턴스에 대한 인바운드 및 아웃바운드 트래픽을 제어하는 가상 방화벽 역할을 한다. 보안 그룹을 통해 트래픽의 출입을 제어하여 보안성을 강화할 수 있다.
AWS VPC의 장점
- 보안
- AWS의 다른 서비스와 격리되어 있으며, 보안 그룹과 네트워크 액세스 제어 목록(Network Access Control List, NACL)을 통해 더욱 강화된 보안을 제공한다.
- 확장성
- 필요에 따라 유연하게 조정할 수 있으며, 가용 영역 간에 확장하여 고가용성을 유지할 수 있다.
- 사용자 정의 네트워크
- 사용자는 VPC를 사용하여 고유한 IP 주소 범위와 서브넷을 정의하고, 라우팅 규칙을 설정하여 자체적으로 네트워크를 관리할 수 있다.
AWS VPC를 효과적으로 활용함으로써 클라우트 컴퓨팅의 장점을 최대한 활용할 수 있을 것이다.
서브넷 설정
서브넷 설정 단계
- VPC 생성
먼저 AWS 콘솔이나 AWS CLI를 사용하여 VPC를 생성한다. VPC 생성 시 IP 주소 범위를 지정하고, 가용 영역을 선택한다. - 서브넷 생성
VPC 내에서 서브넷을 생성한다. 서브넷을 생성할 때는 가용 영역, CIDR 블록, 서브넷 이름 등을 지정한다. - 라우팅 테이블 구성
VPC에는 기본 라우팅 테이블이 자동으로 생성되지만, 필요에 따라 사용자 정의 라우팅 테이블을 생성하고 서브넷과 연결할 수 있다. - 인터넷 게이트웨이 연결(선택)
VPC내의 인스턴스가 인터넷과 통신해야 하는 경우, 인터넷 게이트웨이를 생성하고 VPC에 연결한다. 이를 통해 인터넷을 통한 외부 연결이 가능해진다. - 서브넷 보안 그룹 설정
서브넷에 대한 인바운드 및 아웃바운드 트래픽을 제어하기 위해 보안 그룹을 생성하고 서브넷과 연결한다.
서브넷은 VPC 내에서 IP 주소 공간을 분할하여 네트워크 리소스를 관리하는 중요한 구성 요소이다.
서브넷 설정을 통해 VPC 내에서 리소스를 효율적으로 배치하고 네트워크 트래픽을 관리할 수 있다.
네트워크 액세스 제어(NACLs) 및 보안 그룹 설정
네트워크 액세스 제어 목록(NACLs)
네트워크 액세스 제어 목록은 서브넷 수준에서 동작하는 가상 방화벽이다.
각 서브넷에는 연결된 NACL이 있으며, 인바운드 및 아웃바운드 트래픽에 대한 규칙을 정의한다.
NACL은 서브넷 내부와 외부 간의 트래픽을 제어하며 특정 IP 주소, 프로토콜, 포트 등을 기반으로 허용 또는 거부할 수 있다.
NACL은 순서를 가지며, 우선 순위에 따라 트래픽을 처리한다. 가장 먼저 일치하는 규칙이 적용된다.
기본적으로 VPC는 모든 인바운드 및 아웃바운드 트래픽을 허용하는 NACL을 가지고 있다.
사용자는 NACL을 수정하고 사용자 정의 규칙을 추가할 수 있다.
보안 그룹
보안 그룹은 인스턴스 수준에서 동작하는 가상 방화벽이다. 각 인스턴스에는 하나 이상의 보안 그룹이 연결된다.
인스턴스에 대한 인바운드 및 아웃바운드 트래픽을 제어한다. 허용된 IP 주소, 프로토콜, 포트 등을 기반으로 트래픽을 허용하거나 거부한다.
보안 그룹은 상태를 가지며, 인바운드 트래픽에 대한 아웃바운드 트래픽의 응답을 자동으로 허용한다.
하나의 보안 그룹에 여러 개의 규칙을 정의할 수 있으며, 인스턴스에 여러 개의 보안 그룹을 연결할 수 있다.
기본적으로 새로운 보안 그룹은 모든 인바운드 및 아웃바운드 트래픽을 거부하는 규칙으로 생성된다. 사용자는 필요에 따라 보안 그룹을 수정하고 사용자 정의 규칙을 추가할 수 있다.
NACLs와 보안 그룹은 VPC 내의 트래픽을 제어하고 보안을 강화하는 데 중요한 역할을 한다.
NACLs는 서브넷 간 및 서브넷 내부의 트래픽을 제어하는 데 사용되고
보안 그룹은 인스턴스 수준에서 트래픽을 제어하는 데 사용된다.