[AWS] Site to Site VPN

1. AWS Site-to-Site VPN 이란?

AWS에서 제공하는 VPN 서비스는 표준 IPSec VPN 만을 제공한다. Amazon VPC와 온프레미스 장비가 통신할 때 S2S VPN을 사용해 public 네트워크를 이용하지만 private 네트워크를 이용하는 것처럼 사용할 수 있다.

AWS S2S VPN 연결을 생성하면 고가용성을 위해 기본적으로 두 개의 터널 엔드포인트가 서로 다른 영역에 생성된다.

VPC쪽에는 가상 프라이빗 게이트웨이 (Virtual Private Gateway, VGW)를 생성하고, 온프레미스쪽 장비에 대한 정보를 지정한 고객 게이트웨이(Customer Gateway, CGW) 를 생성한다. 두 게이트웨이를 통해 VPN 연결을 하여 VPN 터널 통신을 한다.

2. AWS S2S VPN 구성

구성할 인프라는 다음과 같다.

image

  1. VPN을 제외한 기본적인 인프라를 구성한다.

고객 게이트웨이 디바이스는 VPN 통신을 할 수 있도록 소스/대상 확인 비활성화 하고 다음과 같이 설정한다.

   #!/bin/bash
   hostnamectl --static set-hostname IDC-CGW
   yum -y install tcpdump openswan
   
   cat <<EOF>> /etc/sysctl.conf
   net.ipv4.ip_forward=1
   net.ipv4.conf.all.accept_redirects = 0
   net.ipv4.conf.all.send_redirects = 0
   net.ipv4.conf.default.send_redirects = 0
   net.ipv4.conf.eth0.send_redirects = 0
   net.ipv4.conf.default.accept_redirects = 0
   net.ipv4.conf.eth0.accept_redirects = 0
   net.ipv4.conf.ip_vti0.rp_filter = 0
   net.ipv4.conf.eth0.rp_filter = 0
   net.ipv4.conf.default.rp_filter = 0
   net.ipv4.conf.all.rp_filter = 0
   EOF
   
   sysctl -p /etc/sysctl.conf
   curl -o /etc/ipsec.d/vpnconfig.sh https://cloudneta-book.s3.ap-northeast-2.amazonaws.com/chapter6/6_lab_s2s-vpnconfig.sh
   chmod +x /etc/ipsec.d/vpnconfig.sh
  1. VGW를 생성하고 AWS-VPC에 연결한다.

  2. 고객 게이트웨이 디바이스에 연결된 CGW를 생성한다.

  3. VGW와 CGW를 VPN 연결한다. 10.60.0.0/16 정적 라우팅을 추가하고, 터널 1과 2의 사전 공유 키 (PSK)는 cloudneta (고객 게이트웨이 디바이스 설정에서 openswan으로 생성될 기본 PSK) 로 설정한다.

  4. 고객 게이트웨이 디바이스에 접속해서 VPN 연결을 설정한다.

    $ pwd
    /etc/ipsec.d
    
    $ ./vpnconfig.sh
    CGW 퍼블릭(혹은 탄력적) IP를 입력하세요: 3.38.12.7
    VGW의 Tunnel1의 외부 IP를 입력하세요: 3.35.211.76
    VPN 서비스를 시작합니다.
    Created symlink from /etc/systemd/system/multi-user.target.wants/ipsec.service to /usr/lib/systemd/system/ipsec.service.
    VPN 설정이 완료되었습니다.
    cat /etc/ipsec.d/aws.conf 명령어로 확인해 보세요.
    cat /etc/ipsec.d/aws.secrets 명령어로 확인해 보세요.
    
    $ systemctl restart ipsec
    

    AWS 콘솔에서 VPN 연결되었음을 확인할 수 있다.

    image

  5. AWS-RT의 라우팅 전파를 활성화한다. 라우팅 정보가 VGW로부터 AWS-RT에 전파됨을 확인할 수 있다.

    image

  6. IDC-Private-RT 에서 10.50.0.0/16 으로 향하는 트래픽은 고객 게이트웨이 디바이스의 인터페이스로 향하게 한다.

    image

IDC-EC2에서 AWS-EC2로 ping을 보내어 VPN연결을 확인할 수 있다.

Cloudformation Code

카테고리:

업데이트:

댓글남기기