본문 바로가기

개발자정보

1.5 AWS Networking

반응형

AWS에서 네트워킹 살펴보기

학습 목표

이 단원을 완료하면 다음을 수행할 수 있습니다.

  • IP 주소를 설명합니다.
  • IPv4에 대해 설명합니다.
  • CIDR(Classless Inter-Domain Routing) 표기법을 설명합니다.

메모

이 모듈은 여기에 설명된 AWS 제품, 서비스 및 기능을 소유, 지원 및 유지 관리하는 Amazon Web Services(AWS)와 협력하여 제작되었습니다. AWS 제품, 서비스 및 기능의 사용에는 AWS에서 유지 관리하는 개인 정보 보호 정책 및 서비스 계약이 적용됩니다.

이 모듈을 완료하기 전에 AWS Compute 를 완료했는지 확인하십시오 . 여기에서 수행하는 작업은 그곳에서 배운 개념을 기반으로 합니다.

AWS Compute 모듈에서 고양이 사진 애플리케이션을 호스팅할 서버를 시작하고 인터넷을 통해 액세스했습니다. Amazon Elastic Compute Cloud(EC2) 인스턴스를 생성할 때 인터넷 및 기타 AWS 리소스에 연결된 네트워크를 선택해야 했습니다. 이 네트워크가 없으면 애플리케이션에 대한 인바운드 또는 아웃바운드 트래픽이 없습니다. 

이 단원에서는 네트워킹의 기본 사항과 AWS 리소스 및 인터넷에 대한 연결을 활성화하는 방법에 대해 알아봅니다.

네트워킹이란 무엇입니까?

네트워킹은 전 세계의 컴퓨터를 연결하고 서로 통신할 수 있도록 하는 방법입니다. 이 트레일에서 네트워킹의 몇 가지 예를 이미 보았습니다. 하나는 AWS 글로벌 인프라입니다. AWS는 데이터 센터, 가용 영역 및 리전을 사용하여 리소스 네트워크를 생성했습니다. 

고양이 사진 애플리케이션은 인터넷을 통해 AWS의 다른 서비스에 액세스해야 하므로 올바른 연결 옵션을 선택하려면 네트워킹에 대해 잘 알고 있어야 합니다. 

네트워킹 기본 사항 이해

편지를 보낼 때를 생각해 보십시오. 편지를 보낼 때 필요한 정보는 세 가지입니다. 

  • 봉투 안의 페이로드 또는 편지.
  • 보낸 사람 섹션에 있는 보낸 사람의 주소입니다.
  • 받는 사람 섹션에 있는 받는 사람의 주소입니다.

더 가자. 각 주소에는 다음과 같은 정보가 포함되어야 합니다.

  • 보내는 사람과 받는 사람의 이름
  • 거리
  • 도시
  • 국가 또는 지방
  • 우편번호
  • 국가

편지가 목적지에 도착하도록 하려면 주소의 모든 부분이 필요합니다. 주소가 정확하지 않으면 우편 직원이 메시지를 제대로 전달할 수 없습니다. 

디지털 세계에서 컴퓨터는 유사한 방식으로 메시지 전달을 처리합니다. 이것을 라우팅이라고 합니다. 

IP 주소란 무엇입니까?

메시지를 특정 위치로 올바르게 라우팅하려면 주소가 필요합니다. 집마다 메일 주소가 있는 것처럼 컴퓨터마다 IP 주소가 있습니다. 그러나 거리, 도시, 주, 우편 번호 및 국가의 조합을 사용하는 대신 IP 주소는 비트, 0 및 1의 조합을 사용합니다. 

다음은 이진 형식의 32비트 주소의 예입니다. 

32자리 숫자를 가지고 있기 때문에 32비트라고 합니다. 마음껏 계산하세요! 

IPv4 표기법이란 무엇입니까?

일반적으로 이 바이너리 형식에서는 IP 주소가 표시되지 않습니다. 대신 10진수 형식으로 변환되고 IPv4 주소로 표시됩니다. 

아래 다이어그램에서 32비트는 옥텟이라고도 하는 8비트 그룹으로 그룹화됩니다. 이러한 각 그룹은 마침표로 구분된 10진수 형식으로 변환됩니다.

결국 이것은 IPv4 주소라고 하는 것입니다. 이것은 단일 컴퓨터와 통신하려고 할 때 아는 것이 중요합니다. 그러나 네트워크와 함께 작업하고 있음을 기억하십시오. 여기에서 CIDR 표기법이 등장합니다.

CIDR 표기법 사용

192.168.1.30은 단일 IP 주소입니다. 192.168.1.0과 192.168.1.255 사이의 IP 주소를 표현하고 싶다면 어떻게 해야 할까요?

한 가지 방법은 CIDR(Classless Inter-Domain Routing) 표기법을 사용하는 것입니다. CIDR 표기법은 IP 주소 범위를 지정하는 압축된 방법입니다. 범위를 지정하면 사용할 수 있는 IP 주소가 결정됩니다. 

CIDR 표기법은 다음과 같습니다. 

시작 IP 주소로 시작하고 슬래시("/" 문자)와 숫자로 구분됩니다. 끝에 있는 숫자는 고정된 IP 주소 비트 수를 지정합니다. 이 예에서 IP 주소의 처음 24비트는 고정되어 있습니다. 나머지는 유연합니다.

총 32비트에서 24개의 고정 비트를 빼면 8개의 유연한 비트가 남습니다. 이러한 유연한 비트 각각은 2진이므로 0 또는 1이 될 수 있습니다. 즉, 8비트 각각에 대해 두 가지 선택이 가능하여 해당 CIDR 범위에 256개의 IP 주소를 제공합니다. 

/ 뒤의 숫자가 높을수록 네트워크의 IP 주소 수가 작아집니다. 예를 들어, 192.168.1.0/24의 범위는 192.168.1.0/16보다 작습니다. 

AWS 클라우드에서 네트워크로 작업할 때 CIDR 표기법을 사용하여 네트워크 크기를 선택합니다. AWS에서 가질 수 있는 가장 작은 CIDR 범위는 16개의 IP 주소를 제공하는 /28입니다. 가질 수 있는 가장 큰 CIDR 범위는 65,536개의 IP 주소를 제공하는 /16입니다.

이제 이 모든 IP 주소로 무엇을 하시겠습니까?

마무리

이 단원에서는 IP 주소 및 CIDR 표기법과 같은 기본 네트워킹 개념을 배웠습니다. 다음 단원에서는 AWS 클라우드에서 네트워크를 구성하는 방법을 학습하여 이 정보를 적용합니다. 

 

Quiz

1. What does Classless Inter-Domain Routing (CIDR) enable you to do?

A.Simplify an IP address with 8-bit groups.

B.Specify a range of IP addresses.

C.Send an email.

D.Send a letter.

 

2. True or false: When you create an EC2 instance, you need to select a network to provide your application connectivity to the internet and other AWS resources.

A.True

B.False

 

Amazon VPC 살펴보기

학습 목표

이 단원을 완료하면 다음을 수행할 수 있습니다.

  • Amazon Virtual Private Cloud(VPC)의 기능을 설명합니다.
  • Amazon VPC 및 서브넷을 생성하는 방법을 설명합니다.
  • 서브넷에서 예약된 IP의 목적을 설명합니다.

AWS에서 고양이 사진 애플리케이션을 위한 자체 보안 네트워크를 구축하려면 Amazon Virtual Private Cloud(Amazon VPC)를 사용합니다. 

VPC란 무엇입니까?

VPC는 데이터 센터의 기존 네트워크와 유사하게 AWS 클라우드에서 생성하는 격리된 네트워크입니다. 

VPC를 생성할 때 세 가지 주요 사항을 선택해야 합니다. 

  1. VPC의 이름입니다.
  2. VPC가 상주할 리전. 각 VPC는 ​​선택한 리전 내의 여러 가용 영역에 걸쳐 있습니다.
  3. VPC의 CIDR 범위. 이것은 네트워크의 크기를 결정합니다. 각 VPC는 ​​최대 4개의 /16 CIDR 범위를 가질 수 있습니다.

AWS는 이 정보를 사용하여 해당 네트워크에 대한 네트워크 및 IP 주소를 프로비저닝합니다.

VPC 서브넷 생성

VPC를 생성한 후 이 네트워크 내부에 서브넷을 생성해야 합니다. 

서브넷을 기본 네트워크 내부의 소규모 네트워크 또는 기존 온프레미스 네트워크의 VLAN(가상 영역 네트워크)으로 생각하십시오. 

온프레미스 네트워크에서 서브넷의 일반적인 사용 사례는 네트워크 트래픽을 격리하거나 최적화하는 것입니다. 

AWS에서 서브넷은 고가용성을 위해 사용되며 리소스에 대한 다양한 연결 옵션을 제공합니다.

서브넷을 생성할 때 세 가지 설정을 선택해야 합니다.

  1. 서브넷이 상주할 VPC(이 경우 VPC(10.0.0.0/16))입니다.
  2. 서브넷이 상주할 가용 영역(이 경우 AZ1).
  3. VPC CIDR 블록의 하위 집합이어야 하는 서브넷의 CIDR 블록(이 경우 10.0.0.0/24).

EC2 인스턴스를 시작할 때 선택한 가용 영역 내에 위치할 서브넷 내에서 시작합니다.

VPC로 고가용성 달성

서브넷을 생성할 때 고가용성을 염두에 두십시오. 중복성과 내결함성을 유지하려면 두 개의 서로 다른 가용 영역에 구성된 서브넷을 두 개 이상 생성하십시오. 

앞서 학습한 것처럼 "모든 것은 항상 실패한다"는 점을 고려하는 것이 중요합니다. 이 경우 이러한 AZ 중 하나에 장애가 발생해도 다른 AZ의 리소스는 여전히 백업으로 사용할 수 있습니다.

예약된 IP 알아보기

AWS가 VPC를 적절하게 구성할 수 있도록 AWS는 각 서브넷에 5개의 IP 주소를 예약합니다. 이러한 IP 주소는 라우팅, DNS(Domain Name System) 및 네트워크 관리에 사용됩니다.

예를 들어, CIDR 범위가 10.0.0.0/22인 VPC를 생각해 보십시오. VPC에는 총 1,024개의 IP 주소가 포함됩니다. 

이것은 4개의 동일한 크기의 서브넷으로 나뉘며 각 서브넷에는 256개의 IP 주소가 있는 /24 CIDR 범위가 있습니다. 

이러한 각 CIDR 범위 중 AWS는 5개를 예약하기 때문에 사용할 수 있는 IP 주소는 251개뿐입니다.

AWS는 이 5개의 IP 주소를 예약하므로 네트워크 설계 방식에 영향을 미칠 수 있습니다. 클라우드를 처음 사용하는 사람들을 위한 일반적인 시작 위치는 CIDR 범위가 /16인 VPC를 만들고 CIDR 범위가 /24인 서브넷을 만드는 것입니다. 이는 VPC 및 서브넷 수준 모두에서 작업할 수 있는 많은 양의 IP 주소를 제공합니다. 

마무리

이 단원에서는 고양이 사진 애플리케이션용 VPC를 생성하는 방법과 서브넷을 사용하여 애플리케이션 리소스를 그룹화하는 방법을 배웠습니다. 다음 단원에서는 VPC 내부의 애플리케이션 리소스 간에 트래픽을 라우팅하는 방법을 알아봅니다. 

 

Quiz

1. Which of the following pieces of information do you need to create a Virtual Private Cloud (VPC)?

A.The Availability Zone it will reside in.

B.The subnet it will reside in.

C.The AWS Region it will reside in.

D.The group of subnets it will reside in.

 

2. How many IP addresses does AWS reserve when you create a new subnet?

A.251

B.5

C.10.0.3.255

D.256

 

Amazon VPC 라우팅에 대해 알아보기

학습 목표

이 단원을 완료하면 다음을 수행할 수 있습니다.

  • VPC에서 라우팅 테이블의 목적을 설명합니다.
  • 기본 라우팅 테이블과 사용자 지정 라우팅 테이블을 구분합니다.

이제 고양이 사진 애플리케이션을 위한 VPC와 서브넷이 있으므로 VPC 내의 모든 리소스로 트래픽을 라우팅하는 방법을 알아보겠습니다. 

VPC에서 트래픽 라우팅

지난 단원에서 배웠듯이 네트워킹을 활성화하기 위해 예약된 특정 IP 주소가 있습니다. 

이 주소 중 하나는 VPC 라우터용으로 예약되어 있습니다. 기존의 온프레미스 환경에서는 트래픽을 라우팅하기 위한 네트워킹 하드웨어가 필요합니다. AWS에서 해당 하드웨어는 VPC의 일부입니다. 

VPC 내에서 통신 흐름을 활성화하기 위해 라우터나 스위치를 프로비저닝할 필요가 없습니다. 

그들은 이미 제공됩니다. 또한 IP 할당 및 라우팅과 같은 네트워킹의 논리적 측면을 라우터 및 스위치와 같은 네트워킹 장비의 성능과 분리합니다.

기본 라우팅 테이블 이해

VPC를 생성할 때 AWS는 기본 라우팅 테이블이라는 라우팅 테이블을 생성합니다. 

경로 테이블에는 네트워크 트래픽이 전달되는 위치를 결정하는 데 사용되는 경로라는 규칙 집합이 포함되어 있습니다.

AWS는 서브넷이 있는 새 VPC를 생성할 때 서브넷 간에 트래픽이 흐르기를 원한다고 가정합니다. 따라서 기본 라우팅 테이블의 기본 구성은 로컬 네트워크의 모든 서브넷 간의 트래픽을 허용하는 것입니다. 

다음은 기본 라우팅 테이블의 예입니다.

이 라우팅 테이블에는 두 가지 주요 부분이 있습니다.

  • 트래픽을 보낼 IP 주소 범위인 대상입니다. 편지를 보내는 예에서는 편지를 적절한 장소로 보낼 목적지가 필요합니다. 라우팅 트래픽도 마찬가지입니다. 이 경우 대상은 VPC 네트워크의 CIDR 범위입니다.
  • 트래픽을 보낼 연결인 대상입니다. 이 경우 트래픽은 로컬 VPC 네트워크를 통해 라우팅됩니다.

이러한 대상과 대상의 조합을 통해 VPC 내에서 트래픽이 자유롭게 흐를 수 있습니다. 

사용자 지정 라우팅 테이블 추가

기본 라우팅 테이블이 VPC에 대한 라우팅을 제어하는 ​​동안 특정 서브넷에 대한 트래픽 라우팅 방법에 대해 더 세분화할 수 있습니다. 

예를 들어 고양이 사진 응용 프로그램은 프론트엔드와 데이터베이스로 구성될 수 있습니다. 

이러한 리소스에 대해 별도의 서브넷을 만들고 각각에 대해 다른 경로를 제공할 수 있습니다.

사용자 지정 라우팅 테이블을 서브넷과 연결하면 서브넷이 기본 라우팅 테이블 대신 이를 사용합니다. 

기본적으로 생성한 각 사용자 지정 라우팅 테이블에는 내부 경로가 이미 있으므로 VPC 내부의 모든 리소스와 서브넷 간에 통신이 흐를 수 있습니다.

새 라우팅 테이블의 경계 파악

새로 생성된 라우팅 테이블은 데이터를 로컬로만 라우팅합니다. 

이는 새 VPC가 인터넷에 연결되지 않고 완전히 격리되었음을 의미합니다. 또한 VPC 내부의 모든 리소스가 서로 자동으로 통신할 수 있음을 의미합니다.

한 서브넷에 고양이 사진 애플리케이션이 있고 다른 서브넷에 데이터베이스가 있는 경우 이 두 리소스는 기본적으로 트래픽을 서로 자동으로 라우팅할 수 있습니다.

마무리

이 단원에서는 라우팅 테이블을 생성하여 VPC 내의 고양이 사진 애플리케이션 리소스로 트래픽을 라우팅하는 방법을 배웠습니다. 그러나 여전히 퍼즐 조각을 놓치고 있습니다. 인터넷 트래픽이 애플리케이션에 액세스하도록 허용하려면 어떻게 해야 합니까? 

다음 단원에서는 라우팅 테이블과 인터넷 게이트웨이를 사용하여 인터넷을 오가는 트래픽을 라우팅하는 방법을 배웁니다. 

 

Quiz

1. True or false: By default, when a route table is created, it contains a route to allow local traffic.

A.True

B.False

 

2. Which of the following can a route table be attached to?

A.AWS Accounts

B.Availability Zone

C.Subnets

D.Regions

 

Amazon VPC 게이트웨이에 연결

학습 목표

이 단원을 완료하면 다음을 수행할 수 있습니다.

  • 인터넷 게이트웨이의 사용 사례를 설명합니다.
  • NAT(Network Address Translation) 게이트웨이의 사용 사례를 설명합니다.
  • 퍼블릭 서브넷과 프라이빗 서브넷을 구분합니다.

마지막 단원에서는 새 VPC가 격리되고 로컬 리소스에만 액세스할 수 있다는 것을 배웠습니다. EC2 인스턴스와 같은 리소스를 새 VPC의 서브넷 내부에 배치하면 기본적으로 인터넷에 노출되지 않도록 보호할 수 있습니다. 

그러나 고양이 사진 응용 프로그램과 같은 웹 사이트의 경우 사용자가 인터넷을 통해 사이트의 고양이 사진을 보도록 하려고 합니다.

인터넷 게이트웨이 생성

VPC에 대한 인터넷 연결을 활성화하려면 인터넷 게이트웨이를 생성해야 합니다. 이 게이트웨이를 모뎀과 유사하다고 생각하십시오. 모뎀이 컴퓨터를 인터넷에 연결하는 것처럼 인터넷 게이트웨이는 VPC를 인터넷에 연결합니다. 때때로 다운되거나 오프라인 상태가 되는 가정의 모뎀과 달리 인터넷 게이트웨이는 가용성과 확장성이 뛰어납니다. 

인터넷 게이트웨이를 생성한 후 VPC에 연결해야 합니다. 하지만 그렇다고 해서 VPC 내부의 모든 리소스가 즉시 인터넷에 액세스할 수 있는 것은 아닙니다. VPC는 트래픽을 인터넷 게이트웨이로 보내는 방법을 모릅니다. 

VPC 및 서브넷에 대한 라우팅 테이블은 VPC가 트래픽을 전송하는 방식을 결정한다는 점을 기억하십시오. 즉, 인터넷 게이트웨이로 트래픽을 보내려면 cat photo 애플리케이션이 있는 서브넷의 라우팅 테이블을 구성해야 합니다.  

인터넷 게이트웨이에 대한 경로가 있는 서브넷을 퍼블릭 서브넷이라고 하고 이 라우팅 테이블을 퍼블릭 라우팅 테이블이라고 합니다. 이 구성은 인터넷 게이트웨이(igw-로 시작하는 대상)를 통해 서브넷을 인터넷에 연결합니다. 그러나 EC2 인스턴스도 인터넷에 노출되어 보안 취약성이 발생할 수 있습니다.

이 구성을 사용하면 통신을 쉽게 주고받을 수 있습니다. 그러나 이는 또한 잠재적으로 알 수 없는 발신자로부터 원치 않는 통신을 받을 수 있음을 의미합니다.

NAT 게이트웨이 이해

인터넷의 사용자가 액세스하지 못하도록 하려는 데이터베이스와 같은 개인 리소스가 있을 수 있습니다. 그러나 인터넷에서 패치를 풀다운하는 등의 작업을 수행하기 위해 인터넷에 대한 아웃바운드 통신을 위해 이러한 개인 리소스가 필요할 수 있습니다.

인터넷 사용자가 대가로 연락을 시작하도록 허용하지 않고 인터넷에 대한 아웃바운드 액세스를 어떻게 안전하게 제공합니까?

NAT(네트워크 주소 변환) 게이트웨이가 필요합니다. NAT 게이트웨이는 퍼블릭 서브넷에 있습니다. NAT 게이트웨이를 생성한 후에는 라우팅 테이블에 경로를 추가하여 이를 사용하도록 서브넷 내부의 리소스를 구성할 수 있습니다.

이 구성에는 인터넷 게이트웨이(igw-로 시작하는 대상)가 포함되어 있지 않습니다. 대신 리소스가 NAT 게이트웨이(nat-로 시작하는 대상)로 트래픽을 라우팅하도록 허용합니다. 인터넷에 직접 연결할 수 없기 때문에 이 구성을 일반적으로 개인 라우팅 테이블이라고 합니다. 또한 프라이빗 라우팅 테이블과 연결된 서브넷인 프라이빗 서브넷의 이름을 결정합니다.

모두 함께 넣어

이 구성에서 인터넷에 노출하려는 리소스에는 인터넷 게이트웨이 또는 NAT 게이트웨이에 대한 직접 경로가 있습니다. 라우팅 테이블의 이 연결은 서브넷이 퍼블릭인지 프라이빗인지를 결정합니다. NAT 게이트웨이가 인터넷과 통신할 수 있도록 게이트웨이는 인터넷 게이트웨이에 대한 경로가 있는 퍼블릭 서브넷에 배포됩니다. 

마무리

요약하자면, 세 가지 라우팅 테이블 구성을 사용하는 방법을 배웠습니다. 

  • 로컬 트래픽을 허용하는 VPC를 생성할 때 생성되는 기본 라우팅 테이블입니다.
  • 인터넷 게이트웨이를 사용하여 리소스에서 인터넷으로 또는 그 반대로 연결할 수 있는 공용 라우팅 테이블입니다.
  • 프라이빗 라우팅 테이블은 리소스에서 인터넷으로의 연결만 허용하지만 인터넷이 NAT 게이트웨이를 사용하여 리소스에 연결하는 것을 허용하지 않습니다.

다음 단원에서는 고양이 사진 애플리케이션과 같이 네트워크와 네트워크 내부 리소스를 보호하는 방법을 배웁니다!

 

 

Quiz

1. What must you do to allow resources in a public subnet to communicate with the internet?

A.Create a route to a private subnet.

B.Attach an internet gateway to your VPC.

C.Create a route in a route table to the internet gateway.

D.A and B

E.B and C

2. True or false: NAT gateways enable private resources to access the internet without having direct contact to the internet.

A.True

B.False

 

Amazon VPC 보안으로 네트워크 보호

학습 목표

이 단원을 완료하면 다음을 수행할 수 있습니다.

  • Amazon VPC의 보안 메커니즘을 이해합니다.
  • 네트워크 액세스 제어 목록(네트워크 ACL)과 보안 그룹을 구분합니다.
  • Amazon VPC에서 트래픽이 어떻게 흐르는지 설명합니다.

이제 VPC, 서브넷, 라우팅 테이블 및 게이트웨이 생성의 필수 사항을 배웠으므로 이 네트워크에서 리소스를 보호하는 방법을 배워야 합니다. 이 단원에서는 네트워크 액세스 제어 목록(네트워크 ACL)과 보안 그룹에 대해 배웁니다. 

네트워크 ACL로 서브넷 보호

네트워크 ACL을 서브넷 수준의 방화벽으로 생각하십시오. 네트워크 ACL을 사용하면 서브넷에 들어오거나 나갈 수 있는 트래픽 종류를 제어할 수 있습니다. 필터링할 항목을 정의하는 규칙을 설정하여 이를 구성할 수 있습니다. 여기 예가 있습니다.

인바운드
규칙 # 유형 규약 포트 범위 원천 거부 허용
100 모든 IPv4 트래픽 모두 모두 0.0.0.0/0 허용하다
* 모든 IPv4 트래픽 모두 모두 0.0.0.0/0 부인하다
배 밖으로
규칙 # 유형 규약 포트 범위 원천 거부 허용
100 모든 IPv4 트래픽 모두 모두 0.0.0.0/0 허용하다
* 모든 IPv4 트래픽 모두 모두 0.0.0.0/0 부인하다


위 표에 표시된 기본 네트워크 ACL은 서브넷 안팎의 모든 트래픽을 허용합니다. 데이터가 서브넷으로 자유롭게 흐르도록 하려면 여기에서 시작하는 것이 좋습니다. 

그러나 서브넷 수준에서 데이터를 제한할 수 있습니다. 

예를 들어 웹 애플리케이션이 있는 경우 웹 서버에 대한 HTTPS 트래픽 및 원격 데스크톱 프로토콜(RDP) 트래픽을 허용하도록 네트워크를 제한할 수 있습니다.

인바운드
규칙 # 소스 IP 규약 포트 거부 허용 코멘트
100 모든 IPv4 트래픽 TCP 443 허용하다 어디서나 인바운드 HTTPS 트래픽 허용
130 192.0.2.0/24 TCP 3389 허용하다 홈 네트워크의 공용 IP 주소 범위에서 웹 서버로의 인바운드 RDP 트래픽 허용(인터넷 게이트웨이를 통해)
* 모든 IPv4 트래픽 모두 모두 부인하다 이전 규칙에 의해 아직 처리되지 않은 모든 인바운드 트래픽을 거부합니다(수정 불가).
배 밖으로
규칙 # 대상 IP 규약 포트 거부 허용 코멘트
120 0.0.0.0/0 TCP 1025-65535 허용하다 인터넷의 클라이언트에 대한 아웃바운드 응답 허용(서브넷의 웹 서버를 방문하는 사람들에게 서비스 제공)
* 0.0.0.0/0 모두 모두 부인하다 이전 규칙에서 아직 처리하지 않은 모든 아웃바운드 트래픽을 거부합니다(수정 불가).


위의 네트워크 ACL 예에서는 인바운드 443 및 아웃바운드 범위 1025-65535를 허용합니다. HTTP는 포트 443을 사용하여 연결을 시작하고 임시 포트에 응답하기 때문입니다. 네트워크 ACL은 상태 비저장으로 간주되므로 프로토콜에 사용되는 인바운드 및 아웃바운드 포트를 모두 포함해야 합니다. 아웃바운드 범위를 포함하지 않으면 서버는 응답하지만 트래픽은 서브넷을 떠나지 않습니다. 

네트워크 ACL은 기본적으로 수신 및 발신 트래픽을 허용하도록 구성되어 있으므로 추가 보안 계층이 필요하지 않는 한 초기 설정을 변경할 필요가 없습니다.

보안 그룹으로 EC2 인스턴스 보호

다음 보안 계층은 EC2 인스턴스를 위한 것입니다. 여기에서 보안 그룹이라는 방화벽을 만들 수 있습니다. 보안 그룹의 기본 구성은 모든 인바운드 트래픽을 차단하고 모든 아웃바운드 트래픽을 허용합니다.

"이렇게 하면 모든 EC2 인스턴스가 고객 요청에 대한 응답을 수신하는 것을 차단하지 않을까요?" 보안 그룹은 상태 저장이 됩니다. 즉, 연결이 원래 EC2 인스턴스에 의해 시작되었는지 아니면 외부에서 시작되었는지 기억하고 일시적으로 트래픽이 인바운드 규칙을 수정하지 않고도 응답하도록 허용합니다. 

EC2 인스턴스가 인터넷 트래픽을 수락하도록 하려면 인바운드 포트를 열어야 합니다. 웹 서버가 있는 경우 보안 그룹을 통해 들어오는 해당 유형의 트래픽을 허용하려면 HTTP 및 HTTPS 요청을 수락해야 할 수 있습니다. 

아래와 같이 포트 80(HTTP) 및 포트 443(HTTPS)을 허용하는 인바운드 규칙을 생성할 수 있습니다.

인바운드 규칙

유형 규약 포트 범위 원천
HTTP (80) TCP (6) 80 0.0.0.0/0
HTTP (80) TCP (6) 80 ::/0
HTTPS(443) TCP (6) 443 0.0.0.0/0
HTTPS(443) TCP (6) 443 ::/0

이전 단원에서 서브넷을 사용하여 네트워크의 컴퓨터 간에 트래픽을 분리할 수 있다는 것을 배웠습니다. 보안 그룹을 사용하여 동일한 작업을 수행할 수 있습니다. 일반적인 디자인 패턴은 리소스를 서로 다른 그룹으로 구성하고 각 그룹에 대한 보안 그룹을 만들어 리소스 간의 네트워크 통신을 제어하는 ​​것입니다.

이 예에서는 3개의 계층을 정의하고 정의한 보안 그룹 규칙으로 각 계층을 격리할 수 있습니다. 이 경우 HTTPS를 통해 웹 계층으로, HTTP를 통해 웹 계층에서 애플리케이션 계층으로, MySQL을 통해 애플리케이션 계층에서 데이터베이스 계층으로만 인터넷 트래픽을 허용합니다. 이는 VLAN 구성을 통해 리소스 그룹을 격리하는 기존의 온프레미스 환경과 다릅니다. AWS에서 보안 그룹을 사용하면 네트워크에 연결하지 않고도 동일한 격리를 달성할 수 있습니다.

마무리

AWS에서 구축할 수 있는 네트워크 설계의 많은 예가 있습니다. 

이는 Amazon VPC를 자신 있게 구축하고 설계하기 위해 알아야 할 몇 가지 기본 사항일 뿐입니다. 

네트워크 ACL 및 보안 그룹을 강력한 도구로 사용하여 단일 인스턴스 또는 서브넷의 트래픽에 대한 네트워크 전체 트래픽을 필터링할 수 있습니다.

이제 Amazon VPC를 사용하여 서버를 구성하고 보안 네트워크에 배치했으므로 다음 모듈에서는 고양이 사진 애플리케이션의 스토리지를 관리하는 방법을 알아봅니다. 

 

 

Quiz

1. True or false: A network ACL filters traffic at the EC2 instance level.

A.True

B.False

 

2. Which of the following is true for the default settings of a security group?

A.Allows all inbound traffic and blocks all outbound traffic.

B.Blocks all inbound traffic and allows all outbound traffic.

C.Allows all inbound and outbound traffic.

D.Blocks all inbound and outbound traffic.

Check the Quiz to Earn 100 Points

Second attempt earns 50 point

 

반응형

'개발자정보' 카테고리의 다른 글

1.7 AWS Databases  (0) 2021.09.12
1.6 AWS Storage  (0) 2021.09.12
1.4 AWS Compute  (0) 2021.09.12
1.3 AWS Identity and Access Management  (0) 2021.09.12
1.1 AWS Cloud  (0) 2021.09.11