베지밀
[VPN 프로젝트] VPN이란? (IPSec VPN, SSL VPN) 본문
VPN이란?
VPN(Virtual Private Network, 가상 사설망)이란 사용자가 공인 인터넷을 통해 마치 전용 네트워크인 사설망에 연결된 것처럼 안전하게 통신할 수 있게 해주는 기술이다. 기업이나 기관에서 멀리 떨어진 본사 네트워크와 지사 네트워크를 연결할 때 주로 활용된다. 기업은 비싼 전용 회선 대신 VPN 기술을 활용하여 저렴한 비용으로 안전한 내부 네트워크를 구축할 수 있게 된다.
VPN은 네트워크 특성에 맞춰 라우터, 방화벽, 스위치 등 다양한 위치에서 유연하게 동작한다. 또한 공인 인터넷을 통해 사설망 간 연결을 가능하게 하고, 데이터 암호화와 터널링 기술을 통해 데이터의 기밀성과 무결성을 보장한다. 이를 통해 외부인이 패킷을 쉽게 탈취하지 못하고, 가상의 터널을 통해 데이터를 주고받을 수 있게 된다.
전용 회선과 VPN의 등장 배경
기업 환경에서 사설망(Private Network)이 등장하면서 멀리 떨어져 있는 본사와 지사의 네트워크를 연결할 필요성이 높아졌다. 사설망은 공인 IP가 아닌 사설 IP를 사용하므로 공인 IP를 통한 연결이 아닌 사설 IP를 통한 연결이 필요했는데, 이를 위해 인터넷 서비스 제공업체(ISP)의 망 일부를 임대하는 전용 회선(Leased Line)이 도입되었다.
전용 회선은 공인 인터넷이 아닌 인터넷 서비스 공급자(ISP)의 망 일부를 독점하여 사용하기 때문에 데이터의 안전성이 보장되며 사설 IP로 본사 사설망과 지사 사설망을 연결할 수 있다. 그러나, 망 일부를 독점적으로 사용하는 만큼 비용이 매우 높았으며 회선 설치와 유지보수가 복잡하며 유연성이 부족하고 장거리 연결에도 한계가 있었다.
이러한 전용 회선의 단점을 해결하기 위해 VPN 기술이 등장했다. VPN은 공인 인터넷을 사용하여 사설망과 사설망을 연결하고, 데이터 암호화와 터널링 기술을 통해 공인 인터넷 상에서도 안전한 통신이 가능해졌다.
VPN 통신 과정
VPN 통신 과정은 크게 다음과 같은 단계를 거친다.
1. 터널링(Tunneling)
터널링 프로토콜과 계층에 맞게 공인 인터넷망 상에 가상의 터널을 생성하여 양측 단말이 안전하게 통신할 수 있게 한다.
2. 패킷 암호화
VPN은 IP 패킷을 캡슐화하고 데이터의 암호화를 수행한다. 이를 통해 공인 인터넷 상에서도 패킷 데이터가 외부에 노출되지 않도록 보호한다.
3. 암호화/인증 방식 협상
VPN 양측은 데이터 암호화와 상호 인증을 위한 방식을 협상한다. 이 과정을 거쳐 보안 수준이 결정된다.
4. 터널 통신
위 과정을 거쳐 가상 터널이 형성되면 양측은 이 터널을 통해 암호화된 패킷을 주고받는다. 외부에서는 공인 인터넷 상에서 데이터 통신이 이루어지는 것처럼 보이지만 실제로는 사설 네트워크 간 안전한 통신이 가능해진다.
이처럼 VPN은 터널링과 암호화 기술을 통해 공인 인터넷 상에서도 안전한 사설 네트워크 연결을 제공한다.
IPSec VPN
IPSec(Internet Protocol Security)은 IP 패킷의 암호화와 인증을 제공하는네트워크 계층 인터넷 프로토콜이다. IPSec VPN은 이 프로토콜을 사용하여 공인 인터넷을 통해 가상 사설 네트워크를 구축하는 기술이다.
IPSec은 주로 터널 모드(Tunnel Mode)를 사용하는데, 터널 모드에서는 새로운 IP 헤더(공인 IP)를 추가하여 원래의 IP 헤더(사설 IP)를 캡슐화하고 전체 IP 패킷을 인증 및 암호화한다. 패킷의 무결성과 출처를 인증하는 AH(Authentication Header)와 데이터 암호화와 무결성 보장을 수행하는 ESP(Encapsulating Security Payload) 프로토콜을 사용하여 데이터의 무결성, 인증, 기밀성을 보장한다. 또한 DES, AES 등의 다양한 암호화 알고리즘과 해시 알고리즘을 지원하고 IKE(Internet Key Exchange) 프로토콜을 통해 VPN 간 안전한 통신 경로를 설정한다.
이처럼 IPSec VPN은 터널 모드와 암호화/인증 프로토콜을 사용하여 네트워크 계층에서 VPN을 구축할 수 있다.
SSL VPN
SSL VPN(Secure Sockets Layers)은 전송 계층의 SSL/TLS 프로토콜을 터널링 프로토콜로 사용하며, 주로 Client to Site 방식으로 사용되어 기업 사용자가 어디서든 웹 브라우저를 통해 기업의 내부 네트워크에 안전하게 접속할 수 있도록 지원한다.
SSL VPN의 주요 장점은 웹 브라우저만으로도 VPN 접속이 가능하다는 점이다. 별도의 설치 없이 인터넷이 연결된 환경이라면 어디서든 기업 내부 네트워크에 접속할 수 있다. 또한 강력한 암호화와 인증 기능을 제공하며, 애플리케이션 수준의 세밀한 보안 정책 적용이 가능하다. 하지만 IPSec VPN에 비해 성능이 떨어지고 TCP 트래픽에 대해서만 터널링을 지원한다는 차이점이 있다.
따라서 보안성, 사용 편의성, 성능 등을 고려할 때, 기업 환경에서 본사와 지사 등의 네트워크-네트워크 연결에는 IPSec VPN이, 원격 근무자의 네트워크 접속과 같은 클라이언트-네트워크 연결에는 SSL VPN이 적합하다.
<참고자료>
https://aws-hyoh.tistory.com/entry/VPN-%EC%89%BD%EA%B2%8C-%EC%9D%B4%ED%95%B4%ED%95%98%EA%B8%B0
위 블로그의 IPSec, SSL VPN 내용 포함