가상 데이터 센터 만들기 - VPC 기본 및 연결 옵션
VCP란? aws 클라우드를 사용하면서 제일 먼저 직면하는 중요한 컴퍼넌트
그렇다면 VPN이란? 가상의 사설망
리소스를 어디에 위치 시킬지 결정하는 것이 VPC임
나만의 네트워크를 구성하고 가상의 데이터센터를 나만의 데이터 센터로 사용할 수 있음
한번 할당되면 절대로 변경되지 않는 private네트워크를 만들 수 있음
흔한 방법 : CIDR(클래스리스 방식)
ex) 172.31.0.0/16
RFC1918의 방법을 사용할 것 -> 연결할 수 있는 다른 네트워크와 겹치지 않게 하기 위해서(public와 private이 엉킴을 방지할 수 있음)
RFC1918
인터넷을 위해 사용하는것이 아닌 우리끼리 사용하는 아이피주소 대역
- 10.0.0.0 ~ 10.255.255.255
- 172.16.0.0 ~ 172.31.255.255
- 192.168.0.0 ~ 192.168.255.255
VPC 서브넷 권고 사항
- /16 VPC (64K addresses)
- /24 subnets (251 addresses)
- One subnet per Availability Zone
Routing in your VPC
- Route table은 패킷이 이동하는 규칙을 포함
- VPC에 기본 route table이 존재
- but, 서브넷에 다른 route table 할당 불가
igw-3376c756 : 지구상에 존재하는 모든 네트워크
0.0.0.0/0 : VPC로 향하지 않는 모든 것을 인터넷으로 보내기
VPC의 네트워크 보안 : Network ACLs / Security Groups
1) Network ACLs : Stateless firewalls
서브넷 단위로 적용 가능
'모든 트래픽을 허용' 등과 같은 네트워크 허용과 관련됨
Statleful과 Stateless
Statleful: 들어올때 허용되면 나갈때도 허용됨 -> 간단
Stateless: 들어올때 허용되어도 나갈때도 허용을 해줘야 나갈 수 있음
2) Security Groups : 어플리케이션 구조
WebServer는 모든 네트워크를 허용하지만 Backends는 WebServer만의 네트워크를 허용( MyWebServers Security Group에 속한 인스턴스만 이 Security Group에 연결 가능)
원하는 곳에서 원하는 포트로 들어온 네트워크만 허용을 하고 불허(거부)할 수 있음
체크 포인트
- 최소 권한 원칙 준수
- VPC는 egress/ingress에 대한 Security Group 생성 가능
VPC의 연결옵션
1. 인터넷 액세스 제한 : 서브넷 별로 다른 라우팅 (서브넷 별로 각기 다른 라우팅)
2. NAT gateway : 아웃바운드 전용 인터넷 허용
3. VPC 간 연결 : VPC peering (ex. 공유 서비스 VPC)