취약점분석 (Blue Team)/Network

[Network] 가상사설망 VPN ( Virtual Private Network )

poiri3r 2026. 3. 12. 17:34

저번에 프록시에 이어서 이번 포스팅에서는 VPN에 대해서 알아보겠습니다.

 

프록시랑 VPN은 어느정도 비슷한 부분이 있습니다.

차이점을 알아보기 전에 먼저 VPN이라는게 뭔지 살펴보겠습니다.

 

VPN은 제목처럼 Virtual Private Network로 가상 사설망이라는 뜻입니다.

https://docs.tosspayments.com/resources/glossary/vpn

 

VPN(Virtual Private Network) | 토스페이먼츠 개발자센터

VPN이란 네트워크 망을 암호화해서 다른 지역에서도 인터넷으로 사설망을 안전하게 접근할 수 있게 하는 기술입니다

docs.tosspayments.com

여기 용어사전에서 보면 VPN은 네트워크 망을 암호화해서 다른 지역에서도 인터넷으로 사설망을 안전하게 접근할 수 있게 하는 기술입니다.

처음에 정확한 개념이 이해가 안되는데, 그림으로 살펴보겠습니다

(*자꾸 되도않는 그림을 그리는 이유는 제 스스로의 이해를 돕기 위함입니다.,.ㅎ)

 

VPN을 없이 사용한다 생각해보겠습니다.

내 PC에서 나온 패킷이 공유기를 걸쳐서 ISP이라는 통신사 공급망을 걸쳐서 리버스 프록시 서버에 걸친 뒤 서버로 전달이 됩니다.

이때 프록시 서버에 기록되는 로그는 내 PC의 IP인 1.2.3.4가 기록될 것 입니다.

 

VPN을 키면 암호화 터널링을 통해, 내 패킷이 암호화되어 공유기로 전달되고, 암호화된 패킷이 다시 ISP를 걸쳐 VPN 서버에 도착합니다. 이때의 VPN 서버에서 도착한 암호화된 패킷을 다시 복호화 한 뒤에 프록시서버로 도착합니다.

이때 프록시 서버에 기록되는 로그는 내 PC의 IP가 아닌 VPN 서버의 IP인 5.6.7.8이 됩니다.

이때 ISP에서 패킷 내부를 들여다보고 싶어도 목적지가 VPN서버라는것만 알아낼 뿐 그 이외의 정보를 알아낼 수 없습니다.

 

VPN은 크게 두가지 종류가 있습니다.

 

하나는 토스 용어사전에서는 원격 액세스 VPN이라고 하고, 흔히 SSL Vpn이라고도 합니다.

다른 하나는 Site-to-Site VPN이라고도 하고 IpsecVPN이라고도 표현합니다

 

원격 액세스 VPN먼저 살펴보겠습니다

 

원격 액세스 VPN

해당 방식은 저희가 보통 생각하는 VPN이랑 비슷합니다.

재택근무나, 협력 업체에서 사내 사설망에 접근이 필요할 때 사용하는데, 주로 전용 어플리케이션 형태로 설치를 합니다.

개념이 조금 어려운데, 내 집에 있는 PC에 VPN 어플리케이션을 설치하고 켰다고 생각을 해보겠습니다.

만약에 VPN이 내 집의 IP자체를 10.8.0.5(사내망대역)으로 바꾼다면, 통신사의 ISP가 출발지 주소를 보고 패킷을 폐기할 것 입니다.

따라서 VPN은 실제 IP주소 대신 가상 LAN 주소를 10.8.0.5로 변경해서 패킷을 보냅니다.

즉 ISP로 갈때 겉으로 보이는 출발 주소는 1.2.3.4 이지만, 패킷을 풀었을 때 출발지 주소는 10.8.0.5로 보이는것입니다.

 

사내망의 VPN 서버는 해당 패킷을 받으면 패킷암호화를 해제해 내부 출발지 주소인 10.8.0.5를 확인합니다. 

(*이 부분은 어떻게 보면 프록시와 역할이 비슷하다고 해도 될 것 같습니다)

 

그 뒤에 출발지 주소가 사내망의 대역과 일치하다고 판단하여 실제 서버로 전송을 합니다.

여기서 VPN이 내부 LAN 주소를 바꾼다는 부분을 확인하기 위해 VPN을 설치해서 켜보겠습니다.

먼저 기본 상태입니다. ipconfig.me에서 확인을 했습니다.

검색결과와 비교해봤을 때 대한민국의 KT망을 사용중인걸 확인할 수 있습니다.

 

VPN을 켜서 연결을 했을때도 확인해보겠습니다.

 

IP주소 대역이 완전 바뀐걸 확인할 수 있습니다.

여기서 직접 cmd에서 ipconfig를 쳐보면

(*학교 내부망을 쓰기 때문에 IP주소는 가려놨습니다)

실제 IP 주소와는 별개로, 알 수 없는 어댑터라는 VPN에서 설정한 주소를 확인가능합니다.

그리고 서브넷 마스크를 보면 255.255.255.255로 되어있는데 일반적으로 서브넷 마스크는 255.255.255.0을 많이 사용합니다.

VPN을 사용하는 경우 네트워크 대역에는 오직 하나만 이용한다는 뜻으로 1:1 터널 통신중인걸 확인할 수 있습니다.

 

Site-to-Site VPN

이전에 배운 원격 액세스 VPN이 개인을 위한 통로라면 Site to Site VPN은 이름 그대로 지점끼리의 연결다리라고 생각을 하면 편합니다.

사실 저희가 직접 접하기는 어려운 일이라, 해당 기술은 서로 물리적으로 떨어져있는 두 개 이상의 네트워크를 연결하는 기술입니다.

사용자 PC (엔드포인트)에서 직접 VPN 앱을 설치하는게 아니라 라우터 <-> 라우터끼리 설정을 하는 방식입니다.

다음과 같이 서울에 본사 서버가 있고 부산에 지사가 있다고 했을 때 개인 PC에서 라우터까지의 패킷 이동 이후 본사와 지사의 라우터 간의 패킷 교환에서 터널링을 진행하여 연결합니다

Ipsec을 통해 구현하며, 개인 PC에서 설치할 필요 없이 자동으로 연결된다는 장점이 있습니다.

 

VPN은 사설망을 안전하게 통제하고, 보안을 강화할 수 있다는 장점이 있지만 당연히 암/복호화 과정, 인증이 필요하기 때문에 많이 느려지고, 운영 비용도 많이 든다는 단점이 있습니다.

특히 site to site vpn의 경우엔 고성능 라우터가 필요하기에 초기 비용도 많이 들 수 있습니다.

 

하지만 VPN의 장점도 있지만, 최근에는 제로 트러스트와 같은 보안 아키텍쳐들이 떠오르면서 VPN으로 들어온 사용자를 무조건적으로 신뢰한다! 는 또 아니기 때문에 대기업들에서 선호하는 방향은 아닌 것 같습니다. 그래도 보안관점에서 또 재택근무와 같은 특수 환경에서 확실히 필요한 기술인 듯 합니다.

 

이상으로 포스팅을 마치겠습니다.

두 개 연속으로 제 수작업이 들어간 정성글을 적었네요. 읽어주셔서 감사합니다