본문 바로가기

가상화/클라우드

AWS에서 SWAN을 설치하여 Azure와 VPN 연동 예제

Today Keys :    Openswan, ipsec, vpn, virtual, network, gateway, tunnel, 터널, aws, azure,gcp, cloud, 클라우드


이번 포스팅은 IPSec을 지원하는 LibreSwan으로 Azure와 VPN을 연동하는 간단한 예제를 살펴봅니다.

별도의 VPN 장비가 없더라도 Open Source를 활용해서 클라우드와 VPN을 손쉽게 연결 할 수 있습니다.

이번 포스팅에서는 단순히 Tunnel을 맺고 LibreSwan이 설치된 VM에서 직접 클라우드의 VM까지 통신하는 예제입니다.

실제 LibreSwan을 VPN으로 사용하기 위해서는 추가적인 설정이 더 필요하긴 합니다만, 여기에서는 그 부분은 다루지 않습니다.


아래의 그림은 이번 예제에서 다루는 구성입니다.

Libreswan은 AWS의 EC2에서 설치하고, Azure의 Virtual Network Gateway 를 이용해서 VPN을 연결합니다.

그리고 EC2와 Azure의 가상 머신과의 통신 테스트까지가 이번 포스팅에서 다루는 예제입니다.  

 

  EC2 서버에서 libreswan을 설치합니다. 설치 OS는 Redhat입니다.

 설치 이후에는 IPSec을 맺기 위한 설정 파일과 Pre-Shared Key를 위한 secrets 파일을 생성합니다.

위의 구성도와 비교해보면 아시겠지만,

Left쪽이 Swan이 설치된 쪽의 네트워크고, Right쪽이 IPSec으로 연결하고자 하는 네트워크입니다.

 

 

Azure에서 SWAN쪽과 연결하기 위한  Virtual Network Gateway를 설정합니다.

IPSec 연결을 위한 Virtual Network Gateway 설정은 앞선 포스팅을 확인하시면 됩니다.

여기에서는 Azure를 연동하였지만, 앞선 포스팅을 확인하셔서 GCP나 AWS와도 연동 할 수 있습니다.

 

연동 이후에는  다음과 같이 통신이 OpenSwan이 설치된 서버와 Azure의 가상머신과 통신이 되는 것을 확인 할 수 있습니다.

   

   OpenSwan에서 IPSec 상태를 보면, 터널이 터널 상태가 정상적으로 Active로된 것을 확인 할 수 있습니다.