본문 바로가기
네트워크

IPSec VPN과 SSLVPN

by 오늘부터개발시작 2022. 9. 20.

 

 

 

 

 

IPSec VPN과 SSLVPN

VPN이 상용화 되기 전에는 본사와 지사 간에 전용망을 구축하기 위해서 물리적인 연결이 필요했다. 그런데 전용망을 구축하기 위해서는 물리적인 거리에 비례해서 엄청나게 비싼 비용이 필요하다. 이런 문제점을 VPN이 해결해 주었는데 VPN은 인터넷 망을 이용해서 전용망처럼 안전하게 통신을 할 수 있게 해준다. 오피스에서 인터넷망까지만 물리적으로 연결이 되면 전용망 구축이 되게 된 것이다. VPN이 상용화되자 기존의 전용망을 구축했던 기업들은 대부분 VPN으로 갈아탔다고 한다. 이번 포스팅에서는 IPSec VPN과 개인이 네트워크에 접속하기 위해 사용하는 SSLVPN에 대해서 간단하게 알아보도록하겠다.

IPSec VPN 이란?

IPSec VPN은 이름 그대로 IPSec 프로토콜을 따르는 VPN이고 주로 Site to Site 방식에서 사용되는 VPN이다. Site to Site 방식은 본사(Site)와 지사(Site)를 연결할 때 사용하는 Network to Network 연결 방식이다. IPSec VPN은 아래 다이어그램처럼 Site에서 VPN 장비를 이용해서 데이터를 암호화해 인터넷 망을 통해 데이터를 전달한다. 최근에는 네트워크간 VPN을 많이 사용하다보니 VPN 장비가 따로 있는게 아니라 라우터에 내장돼 있는 장비도 있으니 참고 바란다.

 

IPSec VPN Diagram

 

IPSec 프로토콜의 암호화 하는 방법은 https 프로토콜과 매우 유사한데 2개의 site가 통신하기 전에 IKE(Internet Key Exchange) 프로토콜으로 SA(Security Association)를 맺어서 암호화, 복호화할 방법을 사전에 약속한다. 송신측에서는 약속된대로 암호화해서 데이터를 보내고 수신측에서는 약속된대로 복호화를 진행해 통신 한다. IPSec프로토콜을 사용해서 암복호화하기 때문에 SA가 맺어지지 않은 다른 곳에서 패킷을 탈취해도 복호화가 불가능하기 때문에 인터넷 망을 사용해도 전용망처럼 기밀성이 보장된다. VPN을 통해 안전하게 통신하는 것을 터널링을 한다고도 말한다. IPSec 프로토콜에서 암호화를 하는 프로토콜은 AH(Authentication Header)와ESP(Encapsulation Security Payload)가 있는데 이 내용들에 대해서는 IPSec에 대해서 따로 포스팅하도록 하겠다.

 

 

SSLVPN이란?

SSLVPN은 네스케이프사에서 최초로 개발한 SSL을 사용한 VPN이다. 개인과 네트워크 간 통신에 사용되는 방법으로 Remote Access 방식이라고도 불린다. 최근 전염병으로 많은 회사들이 재택근무를 하면서 일반 직장인들도 SSLVPN을 많이 사용해봤을 것이다. SSLVPN 역시 인터넷 망을 이용해서 통신을 하는데 IPSec과의 차이점은 클라이언트 측은 별도의 장비 필요 없이 단말(핸드폰, 컴퓨터, 등)에서 SSLVPN 어플로 네트워크와 연결을 맺어 통신한다.

 

 

SSLVPN의 암호화 방법은 https 통신과 거의 동일하게 서버에서 공개키를 받아서 대칭키를 서버에게 공유한다. SSLVPN 어플로 로그인하는 과정에서 공개키를 받는 과정이다. SSLVPN을 사용 중에 만약 패킷이 탈취 당하더라도 내용을 복호화하는 것이 사실상 불가능하기 때문에 기밀성이 유지된다. 인터넷 망을 사용하지만 그 안에서 개인과 특정 네트워크 망 외에는 데이터를 확인할 수 없으므로 터널링이 됐다고도 말한다.