IT/Cloud

AWS 네트워킹 서비스 - VPC

보띵 2022. 11. 19. 15:17
728x90
반응형
AWS 네트워킹 서비스 종류

 

VPC(Virtual Private Cloud)

  • 사용자가 정의한 가상의 네트워크 환경(논리적 격리)
  • 사용자 별 네트워크 제어 가능
    • IP  범위 지정
    • 용도에 맞는 Subnet 분리
    • Routing Tables
    • 보안 : Security Group, Network ACL
    • Gateway : Internet Gateway, NAT Gateway, Virtual Gateway
    • On-Premise 데이터 센터와 연결 옵션(VPN, DirectConnect)
VPC 만들기

VPC를 만드는 일반적인 절차

1) Region 선택

  • Region : AWS의 데이터 센터가 위치하는 큰 지역

2) CIDR 설정

  • IP Range 결정 시 고려사항
    • VPC 확장 시나리오 고려 : 서비스 확장, 동일 Region/ 다른 Region 과의 확장, On-Premise Network 과의 연동
    • VPC의 Network 범위는 /16 ~ /28 까지 가능
    • VPC CIDR 은 생성 후 변경 불가(Secondary CDIR은 4개까지 추가 가능)
    • RFC 1918(Private IP 표준) 권장 : 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16

3) 가용영역에 Subnet 생성

  • Subnet 생성 시 고려 사항
    • 최소 /24 subnet 지정
    • 예약된 IP 주소 (10.0.0.0/24 인 경우)
      • 10.0.0.0 : 네트워크 주소
      • 10.0.0.1 : VPC 라우터용으로 예약된 주소
      • 10.0.0.2 : AWS에서 예약한 DNS 주소, AmazonProvidedDNS
      • 10.0.0.3 : AWS에서 향후 사용을 위하여 예약
      • 10.0.0.255 : 브로드캐스트 주소, VPC에서는 브로드캐스트를 지원하지 않으며, AWS에서 예약
    • Subnet의 CIDR은 생성 후 변경할 수 없음
    • Application의 고가용성을 위해 복수개의 가용 영역에 Subnet 생성(Multi-AZ 아키텍처)
Subnet 구성 예시

4) Routing

  • Main Route Table
    • 동일 VPC 내 서로 다른 Subnet의 Resource 간 통신 목적
    • Main Route Table 은 VPC 생성 시 자동으로 생성
    • VPC 내 모든 Subnet에 암시적으로 적용
    • Subnet : Route Table = 1:1
    • 삭제 불가

Main Route Table

  • Custom Route Table
    • VPC 외부 리소스와 통신을 위한 Route rule 추가
    • 명시적으로 Subnet에 적용

Custom Route Table

5) 네트워크 트래픽 통제

네트워크 트래픽 통제 구성

① Route Table

  •  Subnet 단위 라우팅 통제

② Network ACL

  • Subnet 단위
  • Stateless 방화벽
  • Allow/Deny
  • Rule # ordering

③ Security Group

  • 인스턴스 단위
  • Stateful 방화벽
  • Allow only
Security Group 예시
Security Group 구성도
AWS 콘솔에서 Security Group 설정

 

 

VPC 확장

VPC 확장 시나리오

Internet 확장

1) VPC Internet Gatewat

  • Managed Service
    • 확장성, 가용성, 중복성 보장 설계
  • VPC 당 Attach 가능한 Internet Gateway : 1개
  • VPC 인스턴스와 인터넷 간의 통신
  • 1:1 NAT
    • 인터넷 구간과 연결하려는 EC2 인스턴스는 Public IP 나 EIP(Elastic IP)를 가져야 함
  • Public Subnet의 Routing Table 수정
  • IPv4, IPv6 지원

Internet Gateway 구성

2) VPC NAT Gateway

  • AWS 가 완전하게 관리하는 NAT Gateway
  • Internet Access가 불가능한 Private Subnet에 있는 인스턴스들의 패치, 업데이트, 다운로드 등을 위해 구성
  • 고가용성 및 최대 45Gbps의 대역폭 제공
  • Internet facing Interface를 위해 NAT Gateway당 하나의 Elastic IP 필요
  • TCP, UDP, ICMP Protocol 지원
  • Network ACL을 통하여 트래픽 통제
  • VPC Flow Logs를 통해 트래픽 모니터링
  • CloudTrail 지원

NAT Gateway 구성

3) EIP(Elastic IP)

  • Account에 할당되어 변경되지 않는 Elastic IP를 할당
  • EC2 Instance 장애 시, 다른 EC2 Instance로 EIP를 Re-Associate
  • Region 당 기본 5개의 EIP 할당 가능(Soft-Limit)
  • Allocation/Release
    • Account에 EIP 할당 또는 반납
  • Associate/Disassociate
    • EC2/NAT GW Instance에 EIP 연결 또는 분리

EIP 구성

On-Premise 확장

1) VPN Gateway

  • IPSec Site-to-Site VPN 을 통해 고객사 Network과 암호화 터널 구성
  • 터널 이중화, TLS 통신

VPN Gateway 구성

2) AWS Direct Connect

  • 전용회선을 통해 고객사와 직접 연결

AWS Dircet Connect 구성

Other AWS Regions

1) VPC Peering

  • 동일 Region 내 VPC 간 완전히 격리된 전용의 연결
  • VPC간 하나의 VPC Peering만 제공, VPC간 IP 주소가 중복될 수 없음
  • 고가용성 및 트래픽에 대한 수평적 확장 제공
  • Routing Table 을 통하여 통제가 가능하고, Transit Routing 은 제공되지 않음
  • 전송 중 암호화(Inter Region VPC)

VPC Peering 구성

AWS 서비스와 연계

1) VPC Endpoints - Gateway Type

  • 인터넷을 경유하지 않고 VPC 내 EC2 인스턴스와 S2, DynamoDB 를 연결
  • VPC Endpoint 생성 시 Routing Policy 추가
  • 다양한 접근 제어 정책 적용
    • Route Table
    • VPC Endpoint Policy
    • S3 Bucket Policy
    • Security Group with Prefic list

VPC Endpoint - Gateway Type 구성
VPC Endpoint - Gateway Type 예시

2) AWS Private Link VPC Endpoints - Internet Type

  • AWS 서비스, 다른 AWS 계정에서 호스팅 된 VPC Endpoint Service 나 AWS Marketplace 파트너 서비스의 VPC를 비공개로 연결
  • VPC 내 생성된 VPC endpoint network interface를 이용하므로 서비스 연결 시 IGW, NAT GW, Public IP, DX 불필요
  • 사용 사례 : 중앙화된 Internal Services(DB, 로깅, 모니터링), Microservices, Saas

AWS Private Link VPC Endpoints - Internet Type 구성

 

VPC 관리

1) VPC Flow Logs

  • VPC, Subnet, EC2 인스턴스 ENI 단위로 적용 가능한 Network Packet 수집
  • 생성되는 모든 패킷에 대한 정보를 CloudWatch Logs Group에 기록 (10분에서 15분 지연)
  • 수집되지 않는 정보
    • Amazon DNS Server 로의 트래픽
    • Amazon Windows 라이센스 인증을 위해 Windows 인스턴스에서 생성한 트래픽
    • EC2 인스턴스의 Metadata를 위해 169.254.169.254 와의 트래픽
    • DHCP 트래픽
    • VPC의 Default Router의 예약된 IP 주소로 보내는 트래픽
  • AWS 계정과 워크로드를 보호하기 위한 지능형 위협 탐지 및 지속적 모니터링을 위한 Guard Duty에서 사용

VPC Flow Logs in CloudWatch Logs

  • 수집된 로그들은 Amazon Kinesis Firehose + Athena + QuickSight 또는 Elastisearch + kibana 구성으로 분석 가능

CloudWatch Logs + Elastisearch + kibana 구성

728x90
반응형