[AWS] Solutions Architect – Associate SAA-C03 (VPC)

https://jayendrapatil.com/aws-certified-solutions-architect-associate-saa-c03-exam-learning-path/ 에서 작성된 내용을 학습 및 번역한 것이다.

VPC(Virtual Private Cloud)

AWS 계정과 분리된 가상 네트워크
AWS에 존재하는 다른 가상 네트워크와 논리적으로 분리되어 있다.
VPC는 IP주소의 범위 지정, 서브넷 생성, 라우팅 테이블 생성, 네트워크 게이트웨이 설정, 보안 설정이 가능하다.

VPC Sizing

  = VPC는 IP주소에 대해 CIDR 설정이 필요하다.(예: 10.0.0.0/16, 2^16(65536개의 IP 허용))
  = 허가되는 CIDR 블록 크기는 다음과 같다.
    최소 /28 netmask
    최대 /16 netmask
내부 IP의 CIDR 블록은 사전에 등록되어 있다.
  = 10.0.0.0 - 10.255.255.255(10/8 prefix)
  = 172.16.0.0 - 172.31.255.255(172.16/12 prefix)
  = 192.168.0.0 - 192.168.255.255(192.168/16 prefix)
외부망으로 라우팅되는 IP주소에 대한 범위도 지정할 수는 있지만, 인터넷으로의 직접 접근은 불가능하다.
VPC의 CIDR 블록은 조절가능하다.
각각의 VPC는 하나의 계정 내에서 같은 CIDR를 가지고 있다 하더라도 분리되어 있다.


VPC Peering

  • VPC Peering은 AWS 계정/리전에 관계없이 서로다른 VPC와의 연결을 가능하게 한다.
  • VPC Peering에서 두 개의 VPC는 단대단(one-to-one) 관계를 가진다.
  • AWS는 VPC의 기존 인프라를 이용하여 Peering 연결을 생성한다. 이 연결은 게이트웨이도 아니고 VPN 연결도 아니며 물리적 하드웨어에 의존하지 않는다.
  • 모든 리전 간(inter-region) 연결은 단일 장비 실패 지점(single point of failure)이나 병목현상을 가지지 않는다. 트래픽은 항상 글로벌 AWS 백본에 머무르며 공용 인터넷을 통과하지 않으므로 일반적인 악용 및 DDOS 공격으로 부터 위협을 줄일 수 있다.
  • VPC Peering은 별도 요금이 부과되지 않는다. 그러나 데이터 전송 요금은 있다.
  • VPC는 회사나 가정의 네트워크에도 연결할 수 있지만 CIDR 블록이 겹치지 않도록 해야 한다.
  • VPC에서 시작된 인스턴스에 대해 테넌시(tanancy)옵션을 사용할 수 있다.
  • VPC의 제거는 VPC 내 모든 인스턴스가 종료되고 난 후에 가능하다. VPC 내의 모든 요소들은 제거된다. 서브넷, 보안그룹, ACL, 라우팅 테이블, 인터넷 게이트웨이, VPC 피어링, DHCP 옵션이 제거된다.


IP 주소

VPC 내에서 실행되는 인스턴스들은 사설(private), 공인(public), 탄력적(elastic) IP를 가질 수 있다. 이 값은 ENI(네트워크 인터페이스)의 속성으로 가진다.

사설 IP(Private IP)

  • 사설 IP는 인터넷환경에서 도달할 수 없다. VPC 내에 있는 인스턴스 간 통신만 가능하다.
  • 모든 인스턴스에 서브넷의 IP 주소 범위 내에 있는 개인 IP 주소가 기본 네트워크 인터페이스에 할당된다.
  • 기본 IP 주소는 인스턴스가 중지, 다시시작, 종료되더라도 인터페이스가 존재하는 동안 유지된다.
  • 추가 사설 IP를 할당받아 네트워크 인터페이스 간에 재할당할 수 있다.


공인 IP(Public IP)

  • 공인 IP는 인터넷을 통해 도달할 수 있다. 외부에서 연결 가능한 endpoint가 있는 AWS 서비스와도 인터넷을 통해 연결할 수 있다.
  • 인스턴스에 대한 공인 IP 할당은 서브넷에 대해 공인 IP 지정 및 사용이 가능한지 여부에 따라 달라진다.
  • 인스턴스를 생성하는 동안 공인 IP 주소를 사용하도록 하여 서브넷의 공인 IP 주소 설정 특성을 재정의(override)하여 공인 IP 주소를 인스턴스에 할당할 수 있다.
  • 공인 IP 주소는 AWS 풀이 가진 IP 주소 중에서 할당되며 AWS 계정과 연결되지 않으므로 인스턴스가 중지되거나 다시 시작될 때 해제된다.


탄력적 IP(Elastic IP)

  • 탄력적 IP는 동적 클라우드 컴퓨팅을 위해 고안된 정적 IPv4 주소이다.
  • 탄력적 IP 주소는 AWS 계정에 할당되며 릴리스할 때까지 할당된 상태로 유지된다.
  • 네트워크 인터페이스에는 공인 IP, 탄력적 IP를 할당할 수 있다. 이미 공인 IP, 탄력적 IP가 있는 인스턴스에 할당하면 공인 IP가 해제된다.
  • 탄력적 IP를 한 인스턴스에서 다른 인스턴스로 이동할 수 있으며, 동일한 계정 내에서 같거나 다른 VPC 내에 존재할 수 있다.
  • 탄력적 IP가 중지된 인스턴스 또는 연결되지 않은 네트워크 인터페이스와 연결되거나 연결되지 않은 비사용에 대해 요금이 부과된다.(=안써도 할당하면 비용나감)

 

Elastic Network Interface(ENI)


각각의 인스턴스는 기본 ENI(eth0)에 연결되어 있다. 이 연결은 해제될 수 없다.

ENI는 다음의 속성을 가질 수 있다.

  • 기본 사설 IP 주소
  • 하나 이상의 사설 IP 주소
  • 하나의 사설 IP 당 하나의 탄력적 IP 주소
  • 하나의 공인 IP 주소, 네트워크 인터페이스가 생성될 때 자동으로 할당될 수 있다.
  • 하나 이상의 보안그룹(Security Groups)
  • 맥 주소
  • 출발지/목적지 확인 플래그
  • 설명(description)
  • ENI의 속성은 ENI가 인스턴스에 부착되거나(attached), 분리되거나(detached) 하더라도 유지된다. ENI가 다른 인스턴스로 이동될 경우 트래픽은 새로운 인스턴스로 리다이렉트 된다.


복수개의 ENI는 다음의 경우로 운영될 수 있다.

  • 네트워크 관리 생성
  • VPN에서 네트워크, 보안 어플라이언스 적용
  • 워크로드, 역할이 서로 다른 dual-home 인스턴스 생성
  • 저비용, 고가용성 솔루션 생성


Route Tables


Route table은 서브넷의 네트워크 트래픽이 라우팅될 위치와 규칙을 정의한다.

각각의 VPC는 네트워크 트래픽을 라우트하기 위해 내부 라우터를 가진다.

각각의 VPC는 메인 Route Table을 가지며, 여러 개의 사용자 지정 route table을 생성할 수 있다.

VPC 내에 위치한 서브넷은 한 번에 하나의 route table과 연결되어야 하며, 하나의 route table에는 여러 개의 서브넷이 연결될 수 있다.

route table에 명시되지 않은 서브넷은 main route table과 암시적으로 연결된다.

모든 route table은 수정하거나 삭제할 수 없는 VPC 내 통신을 가능하게 하는 로컬 경로가 포함되어 있다.

라우팅 우선순위는 route table 내 가장 구체적으로 일치하는 규칙으로 결정된다.

인터넷 게이트웨이, 가상 사설 게이트웨이, VPC Endpoints, NAT 단말 등에 정의된 경로로 route table을 업데이트해야 한다.

Internet Gateways(IGW)

인터넷 게이트웨이는 VPC의 인스턴스와 인터넷 간의 통신을 허용하는 수평 확장, 이중화 및 고가용성 VPC 구성 요소이다.

IGW는 네트워크 트래픽에 가용성 위험이나 대역폭 제약을 가하지 않는다.

IGW는 두 가지 목적으로 제공된다.

  • 인터넷 라우팅 가능한 트래픽에 대한 대상을 VPC route table에 제공
  • 공인 IP 주소가 할당되지 않은 인스턴스에 대해 NAT 변환 수행

인스턴스에 대한 인터넷 접근 허용을 사용하려면 다음이 필요하다.

  • IGW를 VPC에 연결
  • 서브넷에는 IGW를 가리키는 경로와 연결된 테이블이 존재
  • 인스턴스에 공인IP 또는 Elastic IP가 할당
  • 인스턴스와 연결된 보안 그룹 및 NACL은 관련 트래픽을 허용

NAT

NAT는 사설 서브넷 내의 인스턴스를 인터넷 또는 다른 AWS 서비스와의 연결을 가능하게 한다. 그러나 인터넷으로부터 인스턴스로의 연결은 막는다.

사설 서브넷 내에 위치한 인스턴스들의 외부 서비스 접근, 소프트웨어 업데이트를 위해 인터넷 접근이 필요하다.

NAT는 IPv6 트래픽 연결을 지원하지 않는다. 대신 송신 전용 인터넷 게이트웨이(egress-only GW)를 사용할 수 있다.

AWS에서 NAT 설정을 하는 2가지 방법

  • AWS에서 관리하는 NAT Gateway
  • 사용자가 직접 관리하는 NAT Instance

Egress-only Internet gateway

NAT 게이트웨이 처럼 동작하지만, IPv6 트래픽만 제공한다.

수평으로 확장되고 고가용성 VPC 구성 요소로, VPC의 인스턴스에서 인터넷으로 IPv6을 통한 아웃바운드 통신을 허용하고 인터넷이 인스턴스와의 IPv6 연결을 시작하지 못하도록 한다.

VPC & Subnet Sizing

IPv4와 IPv6 주소체계를 지원한다. 각각은 서로 다른 CIDR 블록 크기를 가진다.

IPV6 CIDR 블록을 선택적으로 VPC와 연결할 수 있다.

IPv4 CIDR 블록은 한번 생성되면 수정이 불가능하다.

하지만, 보조 CIDR 블록을 VPC와 연결하여 확장할 수 있다.

제한사항

  • 블록사이즈 제한은 /28, /16 사이만 지원한다.
  • CIDR 블록 크기는 존재하고 있는 VPC와 연결된 기존 CIDR 블록과 겹치지 않아야 한다.
  • CIDR 블록 10.0.0/24의 경우 CIDR 블록 10.0.0/25와 더 작은 CIDR 블록만 연결할 수 있다.

VPC Security

VPC가 제공하는 보안요소들은 다음과 같다.

  • 보안 그룹(Security Groups): 연결된 EC2 인스턴스의 방화벽 역할을 수행한다. 인스턴스 수준에서 인바운드, 아웃바운드 트래픽을 제어한다.
  • Network access contorl(ACLs): 연결된 서브넷의 방화벽 역할을 수행한다. 서브넷 수준에서 인바운드, 아웃바운드 트래픽을 제어한다.
  • Flow logs: VPC의 네트워크 인터페이스에서 송수신되는 IP 트래픽에 대한 정보를 캡처한다.

VPC 내에서 Security Group과 NACL 모두 네트워크 보안 수준 향상에 도움을 준다.

$$ Refer: https://jayendrapatil.com/aws-vpc-security-group-vs-nacls/

 

AWS VPC Security - Security Group vs NACLs

In a VPC, Security Group vs NACLs helps to build a layered network defence acting as a virtual firewall for traffic in and out of the VPC.

jayendrapatil.com

Security Groups

"인스턴스" 수준에서 방화벽 역할을 수행한다.

서브넷 내에 위치한 각각의 인스턴스에 서로 다른 보안 그룹을 할당할 수 있다.

인스턴스에 5개의 보안그룹을 할당할 수 있으며 각 보안그룹에는 60개의 규칙이 있다.

각각의 분리된 규칙은 인바운드와 아웃바운드 트래픽을 허용한다.

새로운 규칙을 추가하거나 제거할 수 있다.(접근을 허가(authorizing)하거나 거부(revoking)할 수 있다.)

  • 보안그룹의 기본 설정은 어떠한 외부로부터 인바운드 패킷은 허용하지 않는다.
  • 하지만, 같은 보안그룹 내 다른 인스턴스로부터의 인바운드 패킷은 허용한다.
  • 보안그룹의 기본 설정은 모든 아웃바운드 트래픽은 허용한다.
  • 새로운 보안 그룹은 모든 트래픽이 인스턴스에서 나가는 것만 허용하는 아웃바운드 규칙으로만 시작한다.

허용 규칙만 지정할 수 있지만, 거부 규칙은 지정할 수 없다.

특정 IP, CIDR 범위 또는 VPC 또는 Peer VPC의 다른 보안 그룹에 대한 접근을 허용할 수 있다.

가장 허용적인 규칙이 우선하는 전체 또는 누적 규칙 집합으로 평가된다. 예를 들어 IP 주소 203.0.113.1에서 TCP 22 포트(SSH)에 액세스할 수 있는 규칙과 모든 사용자의 TCP 포트 22(SSH)에 액세스할 수 있는 다른 규칙이 있으면 모든 사용자가 TCP 22로 접근할 수 있다.

상태 저장 방화벽(Stateful) - 허용된 인바운드 트래픽에 대한 응답은 아웃바운드 규칙에 관계없이 아웃바운드로 통신할 수 있으며, 반대의 경우도 동일하다. 따라서 응답에 대한 아웃바운드 규칙이 필요하지 않다.

보안 그룹과 연결된 인스턴스는 트래픽을 허용하는 규칙을 추가하지 않으면 서로 통신할 수 없다.

ENI(Network Interface)와 연결되어 있다.

인스턴스와 연결되며 변경할 수 있다. 기본 네트워크 인터페이스(eth0)와 연결된 보안그룹이 변경되며 변경 내용은 보안 그룹과 연결된 모든 인스턴스에 즉시 적용된다.

Connection Tracking(연결 추적)

보안 그룹은 연결 추적을 사용하여 인스턴스에 들어오고 나가는 트래픽에 대한 정보를 추적하기 때문에 연결 상태를 유지(Stateful)한다.

인바운드 트래픽에 대한 응답은 아웃바운드 보안 그룹에 대한 규칙 없이도 인스턴스 밖으로 전송 가능하며, 그 반대의 경우도 가능하다.

연결 추적은 인바운드 요청에 대한 명시적 아웃바운드 규칙이 없는 경우에만 유지된다.(그 반대의 경우도 동일)

그러나 인바운드 요청에 대한 명시적인 아웃바운드 규칙이 존재하는 경우 응답 트래픽은 추적 정보가 아닌 아웃바운드 규칙에 따라 허용된다.

흐름추적 예시

  • 인스턴스(host A)가 호스트 B에 대한 트래픽을 시작하고 TCP, UDP, ICMP 이외의 프로토콜을 사용하는 경우, 인스턴스의 방화벽은 호스트 B로부터의 응답 트래픽을 허용할 목적으로 IP 주소와 프로토콜 번호만 추적한다.
  • 호스트 B가 원래 요청 또는 응답 후 600초 이내에 별도의 요청으로 인스턴스에 대한 트래픽을 시작하는 경우 인스턴스는 응답 트래픽으로 간주되므로 인바운드 보안 그룹 규칙에 관계없이 인스턴스를 수락한다.
  • 특정 유형의 아웃바운드 트래픽만 허용하도록 보안 그룹의 아웃바운드 규칙을 수정하여 이를 제어할 수 있다. 또는 네트워크 ACL을 서브넷에 사용할 수 있다. 네트워크 ACL(NACL)은 상태비저장(Stateless)이므로 응답 트래픽을 자동으로 허용하지 않는다.

Network Access Control Lists(NACLs)

NACL은 하나 이상의 서브넷에서 들어오고 나가는 트래픽을 제어하는 방화벽 역할을 하는 VPC의 선택적 보안 계층이다.

NACL은 세분화된 제어를 위한 것이 아니며 서브넷 수준에서 할당되어 해당 서브넷의 모든 인스턴스에 적용된다.

각각의 분리된 인바운드, 아웃바운드 규칙이 있고 각 규칙은 트래픽을 허용(allow)하거나 거부(deny)한다.

  • 기본 ACL 규칙은 모든 인바운드, 아웃바운드 트래픽을 허용(allow)한다.
  • 새로 생성하는 ACL은 모든 인바운드, 아웃바운드 트래픽을 거부(deny)한다.

서브넷은 1개의 NACL만 할당할 수 있으며 명시적으로 연결되지 않으면 기본 NACL과 암시적으로 연결된다.

NACL을 여러 서브넷에 할당할 수 있다.

NACL은 가장 낮은 번호의 규칙으로 시작해서 네트워크 ACL과 연결된 서브넷에 트래픽이 허용되는지 여부를 결정하기 위

해 평가되는 규칙의 번호 목록이다. Allow All을 가진 규칙번호 100이 있고, Deny All이 포함된 규칙 번호 110이 있는 경우, Allow All이 우선하고 모든 트래픽이 허용된다.

상태를 저장하지 않는다(Stateless). 허용된 인바운드 트래픽에 대한 응답은 아웃바운드 트래픽에 대한 규칙의 적용을 받는다. IP 주소에 대해 포트 22에서 인바운드 SSH 사용하도록 설정한 경우 응답에 대한 아웃바운드 규칙도 추가해야 한다.

VPC Flow logs

VPC Flow logs는 IP 트래픽의 출발지, 도착지에 대한 정보를 제공하여 트러블 슈팅과 네트워크 연결 문제를 해결하는 데 도움을 준다.

VPC Flow logs의 데이터는 CloudWatch Logs 내 저장된다.

Flow log는 VPC 전체, 서브넷, 각 네트워크 인터페이스에 의해 생성될 수 있다. 만약 로그가 활성화되면, VPC나 네트워크 인터페이스에 대해 모니터링 된다.

Flow logs는 네트워크 인터페이스에 대한 실시간 로그 스트림은 제공하지 않는다.

Flwo logs는 네트워크 인터페이스를 사용하는 다른 AWS 서비스(ELB, RDS, Elastic Cache, RedShift 등)에 의해 생성될 수 있다.

트래픽 흐름 문제해결(trouble shooting)

  • =ACCEPT 다음에 REJECT가 있으면 보안 그룹 및 ACL이 인바운드를 허가한다. 그러나 아웃바운드 NACL에 의해 거부된다.
  • 거부(REJECT)할 경우, 인바운드가 보안그룹 또는 NACL에 의해 거부된다.

Subnets

서브넷은 단일 가용 영역(AZ: Availability Zone)에 걸쳐 있으며, 다른 AZ의 장애로부터 격리되도록 설계된 별개의 위치이며, AZ 전체에 걸쳐서 확장될 수 없다.

인터넷을 통한 통신을 가능하게 하는 인터넷 게이트웨이 또는 회사 네트워크와의 통신을 가능하게 하는 VPN(가상 사설 게이트웨이) 연결을 사용하여 서브넷을 구성할 수 있다.

서브넷은 IGW를 통해 인터넷으로 라우팅하도록 설정하는지에 따라서 외부에 공개(public)되거나 비공개(private)로 운영될 수 있다.

공인 서브넷 내에 위치한 인스턴스는 공인 IP 또는 탄력적 IP(elastic IP)를 가지고 있는 경우 인터넷에 연결될 수 있다.

인터넷에 연결되지 않지만, 가상사설 게이트웨이를 통해 트래픽을 라우팅하는 경우 VPN 전용 서브넷이라 한다.

서브넷은 기본적으로 서브넷 내에서 시작된 모든 인스턴스에 공용 IP 주소 할당을 사용하도록 구성할 수 있으며 인스턴스를 생성하는 동안 재정의할 수 있다.

Subnet Sizing

  • 서브넷에 할당된 CIDR 블럭은 VPC CIDR과 동일할 수 있다. 이 경우 VPC 내에서 서브넷을 하나만 시작할 수 있다.
  • 서브넷에 할당된 CIDR 블록은 VPC 내에서 여러 서브넷을 시작할 수 있는 VPC CIDR의 부분 집합일 수 있다.
  • 서브넷에 할당된 CIDR 블록은 서로 겹치지(overlapping) 않아야 한다.
  • CIDR 블록 크기에 다음 조건이 있다.

        최소: /28 netmask (최소: 2^4 - 16개 IP 주소)

        최대: /16 netmask (최대: 2^16 - 65535개 IP 주소)

  • AWS에는 5개의 예약된 IP 주소(첫 4개 주소, 끝 1개 주소)가 있다. 이 주소들은 인스턴스에 할당할 수 없다.

CIDR 블록이 10.0.0.0/24 이라면, 다음의 5개 IP 주소는 예약되어 있다.

  • 10.0.0.0: Network Address
  • 10.0.0.1: VPC Router(AWS에서 예약됨)
  • 10.0.0.2: Amazon-provided DNS(AWS에서 예약됨)
  • 10.0.0.3: AWS future use(AWS에서 예약됨)
  • 10.0.0.255: Network Broadcast Address, AWS는 VPC 내에서 브로드캐스트를 지원하지 않는다.

서브넷 라우팅

  • 각 서브넷은 트래픽을 제어하기 위해 route table에 속해 있다.

서브넷 보안

  • 서브넷에 대한 보안은 보안그룹과 NACLs에 의해 설정된다.
  • 보안그룹은 인스턴스 레벨, NACLs는 서브넷 레벨에서 동작한다.

Shared VPCs

여러개의 AWS 계정 간 리소스(EC2, RDS, Redshift, AWS Lamgda)를 공유하기 위해 사용한다.

이 모델에서 같은 AWS Organizations에 속해있는 상태에서 소유자가 VPC 내에 하나 이상의 서브넷을 다른 AWS 계정으로 공유한다.

서브넷이 공유되면, 참여자는 공유된 리소스를 보거나, 생성, 수정, 삭제할 수 있다. 다른 참여자나 기존 소유자의 리소스를 보거나, 수정, 삭제할 수 없다.

VPC Endpoints

VPC Endpoints를 사용하면 VPC와 지원되는 AWS 서비스 간에 전용 IP 주소를 사용하여 PrivateLink를 통해 전용 연결을 생성할 수 있다.

Endpoint는 공인 IP, 인터넷을 통한 연결, NAT 단말, VPN 연결, AWS Direct Connect를 필요로 하지 않는다.

VPC와 AWS 서비스 간의 트래픽은 아마존 네트워크를 벗어나지 않는다.

Endpoint는 수평확장, 이중화 및 고가용성 VPC 구성 요소로, 네트워크 트래픽에 가용성 위험이나 대역폭 제약을 가하지 않고 VPC와 AWS서비스 간에 통신할 수 있는 가상 단말이다.

Endpoint는 리전간 교차요청을 지원하지 않는다. S3처럼 같은 리전에서만 연결을 보증한다.

AWS는 현재 두가지 종류의 endpoint를 지원한다.

  • VPC Gateway Endpoints
  • VPC Interface Endpoints

VPC Gateway Endpoints

VPC Gateway Endpoints는 route table 내 목적지가 AWS 서비스로 구성되어 트래픽을 전송한다.

지원하는 AWS 서비스에는 S3와 DynamoDB가 있다.

VPC Gateway Endpoints는 인터넷 게이트웨이나 NAT 단말이 필요하지 않다.

Gateway Endpoint는 AWS PrivateLink를 사용하도록 설정하지 않는다.

VPC Endpoint 정책과 리소스 기반 정책은 세분화된 접근 제어에 사용할 수 있다.

VPC Interface Endpoints - PrivateLink

VPC Interface endpoints는 AWS PrivateLink 서비스에 의해 AWS 서비스에 연결될 수 있다.

서비스에는 CloudTrail, CloudWatch와 같은 AWS 서비스, 다른 고객 및 파트너가 자체 VPC에서 호스팅하는 서비스, 지원되는 AWS Marketplace 파트너 서비스가 포함된다.

VPC Interface Endpoints는 오직 VPC 리소스에서부터 endpoints로의 트래픽만 허용한다. 그 반대방향의 통신은 허용하지 않는다.

PrivateLink endpoints는 리전 내부, 리전 간 VPC 피어링, Direct Connection 및 VPN 연결 모두에서 접근할 수 있다.

VPC Interface Endpoints에는 기본적으로 서비스를 가리키기 위해 애플리케이션을 변경해야 하는 vpce-svc-01234567890abcdef.us-east-1.vpce.amazonaws.com과 같은 주소가 있다.

사설 DNS 이름 기능을 통해 사용자는 VPC Endpoints 서비스를 가리키는 AWS 서비스 공용 기본 DNS 이름을 사용할 수 있다.

Interface Endpoints를 사용하여 VPC에서 사용자 지정 애플리케이션을 생성하고 네트워크 로드 밸런서를 통해 노출되는 AWS PrivateLink 기반 서비스(엔드포인트 서비스)로 구성할 수 있다.

사용자 지정 애플리케이션은 AWS 내 또는 사내(Direct Connect, VPN)에서 호스팅할 수 있다.

S3 VPC Endpoint 전략

S3 Gateway Endpoint vs S3 Interface Endpoint

  • 둘 다 AWS 네트워크 내에서 트래픽 전송
  • Gateway: Amazon S3 공인 IP 사용 / Interface: S3 VPC의 사설 IP 사용
  • GW: 온프레미스 환경에서 접근 불가 / Interface: 온프레미스 환경에서 접근 가능
  • GW: 다른 리전에서 접근 불가 / Interface: 다른 리전의 VPC에 접근 가능(VPC 피어링, Transit Gateway)
  • GW: 요금 지불하지 않음 / Interface: 요금 지불함

VPC VPN Connections

온프레미스 환경의 데이터센터를 확장하기 위해 사용

VPN 연결은 데이터센터와 AWS 리소스 간 IPSec을 통한 보안 연결을 지원한다.

AWS 사이트 간 VPN, AWS 하드웨어 VPN 또는 AWS 관리 VPN

  • VPC와 원격 네트워크 간에 IPSec 하드웨어 VPN 연결을 생성하여 연결을 설정할 수 있다.
  • AWS 측면에서의 VPN 연결은 자동 페일오버를 위한 Virtual Private Gateway(VGW)을 통해 제공한다.
  • 고객 측에서는 VPN 연결의 원격 측에 있는 물리적 장치 또는 소프트웨어 애플리케이션인 고객 게이트웨이(CGW)를 구성해야 한다.

AWS Client VPN: 온프레미스 네트워크의 AWS 리소스 및 리소스에 안전하게 액세스할 수 있는 관리되는 클라이언트 기반 VPN 서비스이다.

AWS VPN CloudHub: 둘 이상의 원격 네트워크(ex: 여러 지사)의 경우 VPC를 통해 여러 AWS 하드웨어 VPN 연결을 생성하여 이러한 네트워크 간의 통신을 가능하게 한다.

반응형