AWS Managed VPN Service를 이용하여 On-premise와 IPsec VPN을 구성하는 방법을 설명한다.
아래 항목을 순차적으로 구성하도록 하겠다.
1) AWS Managed VPN Service 개요
2) Customer Gateway 생성
3) Virtual Private Gateway 생성 및 VPC 연결
4) Site-to-Site Connection 생성
5) VPN Routing 설정
6) Tunnel 상태 확인
7) considerations
8) Appendix
- IPsec Tunneling 지원 (GRE 등 다른 Tunneling 은 지원하지 않음, 2019년 08월 현재 기준)
- Static Routing과 Dynamic Routing(BGP)을 제공
- 고가용성을 위해 기본적으로 두 개의 Tunnel Endpoint를 제공 (각 Tunnel Endpoint는 서로 다른 AZ에 위치)
- 다른 AWS Managed Service와 동일하게 IPsec 연결에 필요한 설정 외 제어할 수 없음
[구성]
CGW(Customer Gateway) 생성
1) CGW(Customer Gateway) 이름 지정
2) Routing 방식 설정 : Dynamic(BGP)/Static 중 구성하고자 하는 방식 선택 (CGW에서 BGP가 지원되어야 함)
3) VGW와 VPN 구성을 위한 CGW IP 주소 입력 : 인터넷을 통해 접근 가능한 Public IP
4) IPsec VPN 구성 시, PSK(Pre-shared Key) 방식이 아닌 인증서 방식 사용 시 설정
VGW(Virtual Private Gateway) 생성
1) VGW(Virtual Private Gateway) 이름 지정
2) BGP ASN 설정 : CGW와 Dynamic Routing(BGP) 구성 시 사용
3) Customer BGP ASN 설정 : AWS Default ASN이 아닌 다른 AS Number 사용시 설정
VGW(Virtual Private Gateway) 연결
1) VPN을 통해 접근하고자 하는 VPC와 생성한 VGW를 연결
2) 계정 내에 구성되어 있는 VPC 중 VPN을 통해 연결하고자 하는 VPC 선택 후 Attach
Site-to-Site Connection 생성 - 1
1) Site-to-Site Connection 이름 지정
2) IPsec VPN 연결을 하고자 하는 VGW를 지정
3) CGW 선택 : 기존에 생성한 CGW를 지정하거나 ’New’를 선택하여 생성 가능
4) VPN 구성 시 Routing 방식 설정 : Dynamic(BGP)/Static Static 설정 시, VPN Tunnel을 통해 Routing 되어야 할 IP Range를 입력
Site-to-Site Connection 생성 - 2
1) 각 Tunnel Endpoint와 CGW 간 내부 IP CIDR 설정 : 공백으로 두는 경우 Amazon에서 자동 생성
2) 각 Tunnel Endpoint와 IPsec VPN 구성을 위한 PSK 설정 : 공백으로 두는 경우 Amazon에서 자동 생성
VPN Routing 설정 - 1
1) ‘Site-to-Site Connection’ 생성 시, VPN Routing을 설정하거나 이후에도 추가로 설정이 가능
2) 생성한 VPN Connection을 선택 후, ‘Static Route’ 탭에서 수정 가능
VPN Routing 설정 - 2
1) VPC Resource와 Remote Network 간 통신을 위해서는 VGW를 Target으로 하는 Routing 설정이 필요
2) Route Table에서 Remote Network로 향하는 Route Entry를 수동으로 추가 할 수 있지만, VGW에서 자동으로 전파할 수 있도록 ‘Propagation’ 설정을 권장
VPN Tunnel 설정을 위한 ’Configuration Download’
1) IPsec VPN 구성을 위해, Customer Device에서 구성해야 할 설정을 Download 가능 (대부분의 Major Vendor를 지원, 지원하지 않는 경우는 부록을 참조)
2) Download 된 설정을 확인하여, 일부 정보 수정하여 구성 가능 (참조를 위한 Configuration이므로 설정 시 주의 필요)
VPN Tunnel 상태 확인
1) 생성한 VPN Connection을 선택 후, ‘Tunnel Details’ 탭에서 상태 확인 가능 : Status ‘UP’ 이어야 정상 (예시 그림은 참조를 위해 생성하여 Down 상태)
2) Tunnel 연결을 위해서는 Customer Side에서 먼저 Traffic을 발생 시켜야 함 (AWS Managed VPN은 Passive Mode로 동작하여 요청에 대해서만 수락)
Consideration
1) AWS Managed VPN을 통해 VPN 구성 시, 최초 연결은 Customer Side에서 Traffic이 생성 되어야 함 (AWS Managed VPN은 Passive로 동작하여 요청에 대해서만 수락)
2) 생성 된 Tunnel 내에 10초 이상 Traffic이 발생하지 않는 경우, Tunnel Down이 발생 - Tunnel 유지를 위해, Traffic이 흐르지 않으면 DPD(Dead Peer Detect)가 동작 (CGW에서 지원하지 않는 경우, ICMP와 같은 트래픽을 생성 필요)
참조 링크
Appendix - 01
1) ‘Configuration Download’에서 지원하지 않는 장비와 연결하는 경우, 다음 값을 설정
1. Phase 1 : IKE Configuration (IKE Version : IKEv1/IKEv2)
- Authentication Method : PSK or Certificate (설정한 방식에 맞게 설정)
- PSK : 사용자 지정인 경우 해당 값을 입력 (자동 생성인 경우, Configuration을 다운 후 각 Tunnel에 대해 자동 생성된 PSK 확인)
- Authentication Algorithm : SHA1
- Encryption Algorithm : AES128-CBC
- Lifetime : 28800 (Sec)
- PFC(Perfect Forward Secrecy) : DH Group 2
2) Phase2:IPsec Configuration
- Protocol : ESP
- Authentication Algorithm : SHA1 (hmac-sha1-96)
- Encryption Algorithm : AES128-CBC • Lifetime : 3600 (Sec) • PFC(Perfect Forward Secrecy) : DH Group 2
3) Optional (Recommend)
- DPD Interval : 10 • DPD Retry : 3
Appendix - 02
AWS Managed VPN과 원활한 연결을 위해, AWS와 Remote Network 간 다음 트래픽을 허용 (AWS-Remote Network 간 방화벽이 있는 경우) :
1. ESP Allow(Protocol/Port Number): IP 50, UDP 4500(NAT 되는 경우)
2. AH(Authentication Header, Protocol/Port Number): IP 51, UDP 4500(NAT 되는 경우)
3. ISAKMP IKE Negotiate (Protocol/Port Number): UDP 500, UDP 4500(NAT 되는 경우)
- VPN연결이 되지 않는 경우 링크 참조
- VPN 네트워크 관리자 가이드
'Networking > VPC' 카테고리의 다른 글
AWS VPC FLOW LOGS (0) | 2017.11.24 |
---|---|
AWS VPC Security Group ID 포워딩 (0) | 2016.11.03 |
AWS VPC/VPN(Openswan) 연동 (1) | 2016.01.14 |