1.Defalut VPC
1)vpc는 Region레벨의 리소스로 여러 가용 영역에 걸쳐 하나의 vpc를 생성,
- 서브넷, EC2, RDS 등의 가용 영역으로 구성된다.
- 서브넷구성, 라우트 테이블, 방화벽 설정을 통해 네트워크의 흐름을 제어하고 vpc 내 자원 보호 가능
2)서브넷은 지역마다 다르지만 최소 2개이며, 서울의 경우 4개로 구성된다.
- 디폴트 VPC의 서브넷은 모두 public 으로 되어있다.
3)NACL(Network access control list)
- 순서가 매우 중요하다.
- 100번룰에서 허용이되고 1000번 룰에서 허용이 안된다면, 순차적용에 의해 100번룰에 의해 허용이 된다.
4)보안그룹
- 기본적으로 같은 보안그룹에 포함되어 있다면 통신가능, 인바운드를 설정해놨다면 따로 아웃바운드를 설정하지 않아도 된다.
2.보안 강화된 네트워크를 위한 VPC 설계 전략
1)CIDR(classless Inter-Domain Routung)
- 클래스 없이 유연하게 네트워크 영역을 나누어 IP 주소를 할당하는 방식
2)VPC 대역 정하기
- IPv4의 경우 /16(65536개)/ 28(16개) 넷마스크 허용
- RFC 1918에 정의된 사설 IP 대역 사용 권장
- VPC CIDR 변경 불가, 대역 추가는 가능
- 서브넷 마다 예약된 IP 고려 필요
3)적절한 Subnetting
- 서브넷 : 네트워크 내부의 네트워크, 네트워크 트래픽은 불필요한 라우터를 통과하지 않고 더 짧은 거리를 이동하여 대상에 도달 가능
- public subnet : 서브넷이 인터넷 게이트웨이로 향하는 라우팅이 있는 라우팅 테이블과 연결되는 경우 퍼블릭 서브넷이라고 한다.
- private subnet : 외부에서 다이렉트로 접근이 불가능한 네트워크 영역, DB서버, 내부 애플리케이션서버, 벡엔드 서비스 등을 호스팅 하기 위해 사용
- Network Load balancer(NLB) : 클라이언트 요청을 여러 대상 인스턴스 또는 서비스로 분산시켜 네트워크 트래픽을 효율적으로 분산하여 응답시간을 최적화하고 시스템의 가용성괴 확장성을 향상
4) RDS(Relational Database Service)
5)SecurityGroup
- 클라우드 상의 가상 서버에서 발생하는 인바운드/아웃바운드 트래픽을 제어하는 가상의 논리적 방화벽
- 허가 받지 않은 트래픽을 필터링 함으로써 가상의 네트워크 환경으 보호
3. VPC와 외부 인터넷과 연결
1)게이트웨이 엔트포인트, 인터페이스 엔드포인트
- 온프레미스(On-premise) : 기업의 서버를 클라우드와 같이 가상의 공간이 아닌 자체적으로 보유하고 있는 서버에 직접 설치하고 운영하는 방식
2) 하나 이상의 VPC 사용하기
- VPC peering : 서로 다른 VPC를 연결하여 두 VPC 간에 트래픽을 라우팅 할 수 있도록 하기 위한 연결
- ex) 1과 2를 연결하고 2와 3을 연결했을 때 1과 3은 연결이 되어 있는 것이 아니다.
- 트랜짓 게이트 웨이 : 서로 다른 VPC를 한번에 연결시켜주어 모든 VPC가 연결 되는 방식
3) VPN(Virtual Private Network) : 인터넷을 통해 디바이스 간에 사설 네트워크를 연결한다. 데이터를 안전하게 익명으로 전송하고 사용자 IP주소를 마스킹하고 데이터를 암호화하여 수신 권한이 없는 사람이 읽을 수 없도록 한다.
- 보안 : 데이터를 암호화하여 안전한 통신을 제공. VPN 클라이언트와 VPN 서버 간에만 복호화 될 수 있다.
- 개인 정보 보호 : IP 주소를 가려서 웹사이트나 온라인 서비스에서 사용자의 실제 위치를 숨김
- 원격 액세스 : 원격지에서 회사의 사설 네트워크에 안전하게 액세스 가능
- 지역 제한 우회 : 다른 지역에 있는 서베에 연결하여 해당 지역의 제한된 컨텐츠를 액세스 가능