study/TIL🐥

[AWS Cloud Practitioner] 4. 네트워킹

서나쓰 2022. 7. 15. 11:00
728x90

AWS와의 연결

Amazon Virtual Private Cloud(Amazon VPC)

aws 서비스를 사용하는 수백만 명의 고객들을 상상해보자. EC2 인스턴스와 같은 수백만 개의 리소스를 상상해 보자. 이러한 리소스에 경계가 없으면 네트워크 트래픽 제한 없이 리소스 간에 흐를 수 있다.

리소스에 경계를 설정하는데 사용할 수 있는 네트워킹 서비스가 Amazon Virtual Private Cloud이다.

VPC를 사용하여 AWS 클라우드의 격리된 섹션을 프로비저닝 할 수 있다. 격리된 섹션에서는 사용자가 정의한 가상 네트워크에서 리소스를 시작할 수 있다. 한 VPC 내에서 여러 서브넷으로 리소스를 구성할 수도 있다.

서브넷은 리소스를 포함할 수 있는 VPC 섹션이다.

인터넷 게이트웨이

인터넷의 퍼블릭 트래픽이 VPC에 액세스하도록 허용하려면 인터넷 게이트웨이를 VPC에 연결해야 한다.

 

인터넷 게이트웨이는 VPC와 인터넷 간의 연결이다. 고객이 커피숍에 들어가기 위한 출입문과 비슷한 것이다. 인터넷 게이트웨이가 없으면 아무도 VPC 내에 리소스에 액세스 할 수 없다.

가상 프라이빗 게이트웨이

VPC 내의 비공개 리소스에 액세스하려면 가상 프라이빗 게이트웨이를 사용할 수 있다.

가상 프라이빗 게이트웨이는 보호된 인터넷 트래픽이 VPC로 들어오도록 허용하는 구성 요소이다.

가상 프라이빗 게이트웨이를 사용하면 VPC와 프라이빗 네트워크간에 가상 프라이빗 네트워크 연결을 설정할 수 있다. 가상 프라이빗 게이트웨이는 승인된 네트워크에서 나오는 트래픽만 VPC로 들어가도록 허용한다.

AWS Direct Connet

Direct Connet은 데이터 센터와 VPC 간에 비공개 전용 연결을 설정하는 서비스이다.

서브넷 및 네트워크 액세스 제어 목록

커피숍의 카운터 영역을 VPC로 생각할 수 있다. 카운터 영역은 계산원의 워크스테이션과 바리스타의 워크스테이션을 위해 두 개의 영역으로 나뉜다. VPC에서 서브넷은 리소스를 그룹화하는데 사용되는 별개의 영역이다.

서브넷

서브넷은 보안 또는 운영 요구에 따라 리소스를 그룹화 할 수 있는 VPC 내의 한 섹션이다. 서브넷은 퍼블릭과 프라이빗으로 분리된다.

 

퍼블릭 서브넷에는 온라인 상점의 웹 사이트와 같이 누구나 액세스할 수 있어야 하는 리소스가 포함된다.

프라이빗 서브넷에는 고객의 개인 정보 및 주문 내역이 포함된 데이터베이스와 같이 프라이빗 네트워크를 통해서만 액세스할 수 있는 리소스가 포함된다

 

 

 

VPC의 네트워크 트래픽

고객이 AWS 클라우드에 호스팅되는 애플리케이션에 데이터를 요청하면 이 요청흔 패킷으로 전송된다. 패킷은 인터넷이나 네트워크를 통해 전송되는 데이터 단위이다.

패킷은 인터넷 게이트웨이를 통해 VPC로 들어간다. 패킷이 서브넷으로 들어가거나 서브넷에서 나오려면 권환 확인을 해야한다. 이러한 사용 권한은 패킷을 보낸 사람과 패킷이 서브넷 리소스를 통신하려는 방법을 나타낸다.

서브넷 패킷 권환을 확인하는 VPC 구성 요소는 네트워크 ACL(액세스 제어 목록)이다.

네트워크 ACL(액세스 제어 목록)

네트워크 ACL은 서브넷 수준에서 인바운드 및 아웃바운드 트래픽을 제어하는 가상 방화벽이다.

공항에서 여행자들이 입국 절차를 밟을 때 출입국 심사하는 직원을 네트워크 ACL이라고 생각할 수 있다. 출입국 심사할 때 여행자의 신원 정보를 확인하듯이 ACL도 패킷의 권한을 확인하는 과정을 거친다.

VPC를 구성할 때 계정의 기본 네트워크 ACL을 사용하거나 사용자 지정 네트워크 ACL을 생성할 수 있다.

계정의 기본 네트워크 ACL은 기본적으로 모든 인바운드 및 아웃바운드 트래픽을 허용하지만 사용자가 자체 규칙을 추가하여 수정할 수도 있다.

모든 네트워크 ACL에는 명시적 거부 규칙이 있다. 이 규칙은 패킷이 목록의 다른 모든 규칙과 일치하지 않으면 해당 패킷이 거부되도록 한다.

보안그룹

보안 그룹은 EC2 인스턴스에 대한 인바운드 및 아웃바운드 트래픽을 제어하는 가상방화벽이다.

 

보안그룹은 모든 인바운드 트래픽을 거부하고 모든 아웃바운드 트래픽은 허용한다.

서브넷 내에 여러 EC2 인스턴스가 있는 경우 동일한 보안 그룹에 연결하거나 각 인스턴스마다 서로 다른 보안 그룹을 사용할 수 있다.

 

 

상태 비저장 패킷 필터링 & 상태 저장 패킷 필터링

  • 상태 비저장 패킷 필터링
    • 네트워크 ACL은 상태 비저장 패킷 필터링을 수행한다.
    • 아무 것도 기억하지 않고 각 방향으로 서브넷 경계를 통과하는 패킷만 확인한다.
    • 패킷 응답이 서브넷으로 반환될 때도 네트워크 ACL은 이전 요청을 기억하지 못한다. 규칙 목록에 따라서 응답을 확인하여 허용 또는 거부를 한다.
  • 상태 저장 패킷 필터링
    • 보안 그룹은 상태 저장 패킷 필터링을 수행한다.
    • 해당 요청에 대한 응답이 인스턴스로 반환될 때 보안 그룹이 이전 요청을 기억한다.
    • 보안 그룹은 인바운드 보안 그룹 규칙에 관계없이 응답이 진행하도록 허용한다.
💡 네트워크 ACL과 보안 그룹을 모두 사용하려면 VPC에서 트래픽에 대한 사용자 지정 규칙을 구성할 수 있다. 더 자세히 알아보려면 ACL과 보안 그룹간의 차이점을 이해해야 한다.

 

글로벌 네트워킹

Domain Name System(DNS)

고객이 브라우저에 웹 주소를 입력하면 이 주소를 IP로 번역하여 내가 호스팅하는 웹 사이트에 접근할 수 있게 만들어 주는 것이 DNS이다.

  • 브라우저에 도메인 입력하면 요청이 DNS 서버로 전송
  • DNS 서버는 웹 서버에 웹 사이트에 해당하는 IP 주소 요청
  • 웹 서버는 웹 사이트의 IP 주소인 192.0.2.0 응답

Route53

Route53은 DNS 웹 서비스이다. 개발자와 비즈니스가 최종 사용자를 AWS에서 호스팅되는 인터넷 애플리케이션으로 하우팅할 수 있는 안정적인 방법을 제공한다.

Route53의 또 다른 기능에는 도메인 이름의 DNS 레코드를 관리하는 기능이 있다. Route53에 직접 새 도메인 이름을 등록할 수도 있다.

  • 트래픽 지연 시간 기반 라우팅
  • 지리적 위치 DNS
  • 지역 근접성 라우팅
  • 가중치 기반 라운드 로빈

다양한 라우팅 정책을 사용하여 서로 다른 엔드 포인트로 보낸다.

예시 ) Amazon Route53 및 Amazon CloudFront가 콘텐츠를 전송하는 방식

  1. 고객이 웹 사이트로 이동하여 애플리케이션에서 데이터 요청
  2. Route53은 DNS 확인을 하여 IP 주소 식별하여 고객에게 전송
  3. 고객의 요청은 CloudFront를 통해 가까운 엣지 로케이션으로 전송
  4. CloudFront 수신 패킷을 EC2 인스턴스로 전송하는 ELB에 연결
💡 CDN(콘텐츠 전송 네트워크)
지리적 위치 기반으로 사용자에게 엣지 콘텐츠를 제송하는 네트워크

 

728x90