목차
시나리오 3. Public과 IPsec VPN 연결 Subnet
VPC 환경에서 이용 가능합니다.
아키텍쳐
이 시나리오의 구성에는 Public Subnet 및 VPN-Only Subnet이 있는 Virtual Private Cloud(VPC)와, IPsec VPN 터널을 통해 고객사의 네트워크와 통신하기 위한 가상 IPsec VPN Gateway가 포함됩니다.
1. VPC
- IPv4 CIDR 블록의 크기가 /16(예: 10.0.0.0/16)으로 제공되며 65,536개의 주소 공간을 제공합니다.
2. Public Subnet
Subnet 크기가 최대 /24(예: 10.0.0.0/24)으로 제공되며 256개의 주소 공간을 제공합니다.
- Public Subnet내의 서버는 인터넷과 연결이 필요한 서버입니다.(공인 IP를 하나씩 보유)
3. Private Subnet
- Subnet 크기가 최대 /24(예: 10.0.0.0/24)으로 제공되며 256개의 주소 공간을 제공합니다.
- Private Subnet 내의 서버는 인터넷 연결이 필요 없으며 고객 사업장과 연결이 필요한 서버의 집합입니다.
4. Internet Gateway
- VPC를 인터넷 및 다양한 네이버 클라우드 플랫폼의 서비스에 연결합니다.
5. IPsec VPN
- 고객사 네트워크 사이의 VPN 연결을 지원합니다.
6. 라우팅 테이블
Public Subnet : 서버가 VPC 내의 다른 인스턴스와 통신할 수 있게 하는 항목(local)과 인터넷과 직접 통신할 수 있게 하는 항목(IQW-ID)이 저장됩니다.
VPN-Only Subnet : 서버가 VPC의 다른 인스턴스와 통신할 수 있게 하는 항목(local)과, IPsec VPN Gateway를 통해 고객의 네트워크와 통신할 수 있게 하는 항목이 저장됩니다.
라우팅
라우팅 정보는 아래와 같습니다.
- Public Subnet
- Private Subnet
보안
보안을 위해 ACG와 Network ACL을 제공합니다. ACG는 서버의 Inbound/ Outbound 트래픽을 제어하고, Network ACL은 Subnet의 Inbound/Outbound 의 트레픽을 제어합니다. 본 시나리오에서 ACG와 Network ACL은 아래와 같이 구성하는 것을 권장합니다.
- Public Subnet : Inbound
우선순위 | 프로토콜 | 접근 소스 | 포트 | 허용 여부 | 메모 |
---|---|---|---|---|---|
1 | TCP | 0.0.0.0/0 | 80 | 허용 | Inbound HTTP 트래픽 허용 |
2 | TCP | 0.0.0.0/0 | 443 | 허용 | Inbound HTTPS 트래픽 허용 |
3 | TCP | 접속자 IP | 22 | 허용 | 접속자 IP로부터 SSH 트래픽 허용(인터넷 게이트웨이를 통해) |
4 | TCP | 접속자 IP | 3389 | 허용 | 접속자 IP로부터 RDP 트래픽 허용(인터넷 게이트웨이를 통해) |
5 | TCP | 0.0.0.0/0 | 32768-65535 | 허용 | Subnet에서 발신되는 요청에 대한 Inbound 리턴 트래픽 허용(표시된 IP 및 포트는 예시이므로 구성에 맞는 설정을 진행하시기 바랍니다) |
197 | TCP | 0.0.0.0/0 | 1-65535 | 거부 | 위 규칙 외의 나머지 규칙은 모두 트래픽이 거부됩니다. |
198 | UDP | 0.0.0.0/0 | 1-65535 | 거부 | 위 규칙 외의 나머지 규칙은 모두 트래픽이 거부됩니다. |
199 | ICMP | 0.0.0.0/0 | - | 거부 | 위 규칙 외의 나머지 규칙은 모두 트래픽이 거부됩니다. |
- Public Subnet : Outbound
우선순위 | 프로토콜 | 접근 소스 | 포트 | 허용 여부 | 메모 |
---|---|---|---|---|---|
1 | TCP | 0.0.0.0/0 | 80 | 허용 | 인터넷 Outbound HTTP 트래픽 허용 |
2 | TCP | 0.0.0.0/0 | 443 | 허용 | 인터넷 Outbound HTTPS 트래픽 허용 |
3 | TCP | 0.0.0.0/0 | 32768-65535 | 허용 | 인터넷에서 클라이언트에 대한 Outbound 응답을 허용(표시된 IP 및 포트는 예시이므로 구성에 맞는 설정을 진행하시기 바랍니다) |
4 | TCP | Private 서버 Private IP | Private 서버 포트(예: DB) | 허용 | Private 서버와 통신을 하기 위한 트래픽 허용 |
197 | TCP | 0.0.0.0/0 | 1-65535 | 거부 | 위 규칙 외의 나머지 규칙은 모두 트래픽이 거부됩니다. |
198 | UDP | 0.0.0.0/0 | 1-65535 | 거부 | 위 규칙 외의 나머지 규칙은 모두 트래픽이 거부됩니다. |
199 | ICMP | 0.0.0.0/0 | - | 거부 | 위 규칙 외의 나머지 규칙은 모두 트래픽이 거부됩니다. |
- Private Subnet : Inbound
우선순위 | 프로토콜 | 접근 소스 | 포트 | 허용 여부 | 메모 |
---|---|---|---|---|---|
1 | TCP | Public Subnet 서버의 비공인 IP | Private 서버 포트(예: DB포트) | 허용 | Public 서버와 통신을 하기 위한 트래픽 허용 |
2 | TCP | On-premise 시스템의 비공인IP | On-premise 시스템 통신포트 | 허용 | On-premise 시스템과 통신하기 위한 트래픽 허용 |
197 | TCP | 0.0.0.0/0 | 1-65535 | 거부 | 위 규칙 외의 나머지 규칙은 모두 트래픽이 거부됩니다. |
198 | UDP | 0.0.0.0/0 | 1-65535 | 거부 | 위 규칙 외의 나머지 규칙은 모두 트래픽이 거부됩니다. |
199 | ICMP | 0.0.0.0/0 | - | 거부 | 위 규칙 외의 나머지 규칙은 모두 트래픽이 거부됩니다. |
- Private Subnet : Outbound
우선순위 | 프로토콜 | 접근 소스 | 포트 | 허용 여부 | 메 |
---|---|---|---|---|---|
1 | TCP | Public Subnet 서버의 비공인 IP | 32768-65535 | 허용 | Public서버에서 Private 서버에 대한 Outbound 응답을 허용(표시된 IP 및 포트는 예시이므로 구성에 맞는 설정을 진행하시기 바랍니다) |
2 | TCP | On-premise 시스템의 비공인IP | On-premise 시스템 통신포트 | 허용 | On-premise 시스템과 통신하기 위한 트래픽 허용 |
197 | TCP | 0.0.0.0/0 | 1-65535 | 거부 | 위 규칙 외의 나머지 규칙은 모두 트래픽이 거부됩니다. |
198 | UDP | 0.0.0.0/0 | 1-65535 | 거부 | 위 규칙 외의 나머지 규칙은 모두 트래픽이 거부됩니다. |
199 | ICMP | 0.0.0.0/0 | - | 거부 | 위 규칙 외의 나머지 규칙은 모두 트래픽이 거부됩니다. |
시나리오 구현
1. VPC를 생성합니다.
(1) 콘솔 > VPC > VPC Management로 이동합니다.
(2) 화면 상단 VPC 생성 버튼을 누른 후, VPC 이름과 IP 주소 범위를 입력합니다.
- IP 주소 범위는 추후 수정이 불가하므로 신중하게 지정하시기 바랍니다.
2. Subnet을 생성합니다.
(1) 콘솔 > VPC > Subnet Management로 이동합니다.
(2) 화면 상단 Subnet 생성 버튼을 누른 후, 정보를 입력합니다.
Subnet 이름 : 목적에 맞는 Subnet명을 입력합니다.
VPC : Subnet을 배치시킬 vpc를 선택합니다.
IP주소 범위 : VPC의 주소 범위 내에서 Subnet 주소 범위를 일부 할당합니다.
가용Zone : Subnet이 배치될 물리적인 가용 Zone을 선택합니다.
- 현재는 Single Zone으로 운영중입니다. 추가 Zone도 준비중이오니 양해바랍니다.
Network ACL : 기본적으로 Default ACL 룰을 제공합니다. 사전에 네트워크 구성 요건에 맞춰 Network ACL을 구성하시면 보안을 더욱 강화하실 수 있습니다.
Internet Gateway 전용 여부 : 사용하고자 하는 Subnet 특성을 고려하여 Public Subnet을 사용할 경우는 Y를, Private Subnet을 사용할 경우는 N을 선택합니다.
Public Subnet을 선택하시는 경우 Subnet 내에서 생성한 모든 VM은 공인 IP가 기본적으로 할당되며, 인터넷망으로 직접 통신이 가능합니다.
이 시나리오를 구현하기 위해서는 Public, Private Subnet을 각각 생성해야 합니다.
3. Network ACL을 설정합니다.
(1) 콘솔 > VPC > Network ACL로 이동합니다.
(2) Network ACL 생성 버튼을 누른 후 정보를 입력합니다.
Network ACL 이름 : ACL의 목적을 고려하여 이름을 입력합니다.
VPC : 생성하고자 하는 Network ACL이 적용될 VPC를 선택합니다.
(3) Rule 설정을 통해 Network ACL의 Inbound와 Outbound 규칙을 수정할 수 있습니다. 본 시나리오의 보안에서 권장하는 룰을 입력하시면 됩니다.
4. Route Table을 설정합니다.
(1) 콘솔 > VPC > Route Table로 이동합니다.
(2) Route Table 생성 버튼을 누른 후 정보를 입력합니다.
Route Table 이름 : 사용하길 원하는 Route Table의 이름을 입력합니다.
VPC : Route Table은 Subnet 단위로 적용됩니다. 적용하실 Subnet이 있는 VPC를 입력하시면 됩니다.
Subnet 지원 유형 : Internet Gateway가 연결되는 Subnet에 적용되는 Route Table 이라면 공인을 선택하며 그렇지 않은 경우 사설을 선택하시면 됩니다.
(3) 연관 Subnet 설정 을 통해 해당 Route Table이 적용될 Subnet을 선택하실 수 있습니다.
(4) Route 설정을 통해 라우팅 테이블을 설정하실 수 있습니다. 본 시나리오에서 위 설정이 자동으로 반영 됩니다.
5. Virtual Private Gateway를 생성합니다.
(1) 콘솔 > Networking > Virtual Private Gateway로 이동합니다
(2) Virtual Private Gateway 생성 버튼을 누른 후 해당하는 정보를 입력합니다.
Virtual Private Gateway 이름 : 목적에 맞는 Virtual Private Gateway 이름을 입력합니다.
VPC : 생성하고자 하는 Virtual Private Gateway가 적용될 VPC를 선택합니다.
- 생성한 Virtual Private Gateway는 IPsec VPN을 연결할 접점이 됩니다.
6. Managed IPsec VPN을 설정합니다.
(1) 콘솔 > Networking > Managed IPsec VPN으로 이동합니다
(2) Managed IPsec VPN생성 버튼을 누른 후 해당하는 정보를 입력합니다.
Managed IPsec VPN 이름 : 목적에 맞는 Managed IPsec VPN 이름을 입력합니다.
VPC : 생성한 Managed IPsec VPN이 연결될 VPC를 선택합니다.
Virtual Private Gateway : 앞서 생성한 Virtual Private Gateway를 선택합니다. 선택한 VPC내에 위치한 Virtual Private Gateway에 한하여 원하는 항목을 선택할 수 있습니다.
7. Route Table을 설정합니다.
(1) 콘솔 > VPC > Route Table로 이동합니다
(2) 앞서 생성한 사설 Subnet과 연관된 Route Table을 선택하고 Route 설정 버튼을 누른 후 해당하는 정보를 입력합니다.
Destination : 통신할 대상 네트워크의 주소형태를 CIDR 형태로 입력합니다.
- 인터넷 전체에 대한 통신이 필요할 경우 “0.0.0.0/0” 이 됩니다.
Target Type : 트래픽이 전달될 대상을 선택합니다.
- 이 시나리오에서는 “NATGW”가 됩니다.
Target Name : 생성한 NAT Gateway를 선택합니다.
(3) 연관 Subnet 설정을 통해 해당 Route Table이 적용될 Subnet을 추가할 수 있습니다.