728x90
VPN (Virtual Private Network)란?
VPN은 가상 사설망이라고 부르며, 공용 네트워크(예: 인터넷)를 통해 사설 네트워크처럼 안전하게 데이터를 주고받도록 만드는 기술입니다.
쉽게 말하면, 외부에서 회사 내부망에 접속하거나, 공공 Wi-Fi에서도 암호화된 안전한 연결을 만들 때 쓰입니다.
VPN의 주요 기능
- 암호화 (Encryption): 데이터가 중간에서 도청당해도 해독할 수 없도록 암호화합니다.
- 인증 (Authentication): 접속자가 신뢰할 수 있는지 확인합니다.
- 무결성 (Integrity): 데이터가 전송 중에 변조되지 않았는지 확인합니다.
- 터널링 (Tunneling): 데이터를 보낼 때 하나의 ‘터널’ 안으로 감싸서 전송합니다.
VPN의 기본 동작 원리
- 사용자가 VPN 클라이언트를 실행해 VPN 서버에 연결 요청.
- 서버가 인증을 거쳐 연결 승인.
- 연결 후, 사용자 트래픽은 VPN 서버를 거쳐 목적지로 전송.
- 이때 모든 데이터는 암호화되어 안전하게 오갑니다.
VPN의 종류
크게 두 가지 주요 방식이 많이 쓰입니다:
- IPsec VPN
- SSL VPN
IPsec VPN (Internet Protocol Security VPN)
✅ 특징:
- 네트워크 계층(Layer 3)에서 작동.
- 주로 사무실 간의 사이트 간 연결(Site-to-Site VPN) 또는 개인 사용자의 **원격 접속(Remote Access VPN)**에 사용.
- 표준화된 IPsec 프로토콜을 사용해 데이터 암호화, 인증, 무결성 보호.
✅ 작동 방식:
- IP 패킷 자체를 암호화.
- 전용 클라이언트 프로그램 필요 (OS 내장 기능으로 연결 가능할 때도 있음).
- VPN 터널을 만들기 위해 IPsec의 여러 프로토콜 (IKE, ESP, AH 등)을 사용.
✅ 장점:
- 빠르고 안정적.
- 거의 모든 IP 기반 애플리케이션 지원.
✅ 단점:
- 방화벽이나 NAT 환경에서 설정이 복잡할 수 있음.
- 클라이언트 설정 필요.
IPsec VPN의 패킷 구조
IPsec은 크게 두 가지 모드에서 동작합니다:
✅ 전송 모드 (Transport Mode)
✅ 터널 모드 (Tunnel Mode)
IPsec 전송 모드 (Transport Mode)
- IPsec 헤더(ESP or AH)는 원래 IP 패킷의 IP 헤더 뒤에 삽입됩니다.
- IP 헤더는 그대로 두고, **페이로드(상위 계층 데이터)**만 암호화하거나 무결성 보호.
[IP Header][IPsec Header][Payload][IPsec Trailer][IPsec Auth]
특징:
- 두 호스트 간 통신에 적합.
- 네트워크 주소를 숨기지 않음 (IP 헤더는 평문).
IPsec 터널 모드 (Tunnel Mode)
- 전체 IP 패킷(IP 헤더 + 페이로드)을 캡슐화.
- 새 IP 헤더를 붙여서 전송.
[New IP Header][IPsec Header][Original IP Header + Payload][IPsec Trailer][IPsec Auth]
특징:
- 게이트웨이 간 VPN, 사이트 간 VPN에 적합.
- 원래 IP 패킷 구조와 내부 네트워크 주소를 숨김.
사용되는 주요 IPsec 헤더
- AH (Authentication Header): 무결성과 인증만 제공.
- ESP (Encapsulating Security Payload): 암호화 + 무결성 제공, 실제로는 ESP가 더 많이 사용됨.
SSL VPN (Secure Sockets Layer VPN)
✅ 특징:
- 전송 계층(Layer 4)에서 작동.
- 웹 브라우저 기반 접속 가능 (별도 클라이언트 설치 필요 없는 경우 많음).
- HTTPS(SSL/TLS)를 통해 데이터 암호화.
✅ 작동 방식:
- 웹 브라우저를 통해 SSL VPN 포털 접속.
- 필요 시 특정 리소스(웹 애플리케이션, 파일 공유 등)에만 접속 허용.
- SSL/TLS 프로토콜을 사용해 암호화된 통신을 보장.
✅ 장점:
- 사용하기 쉬움 (브라우저만으로 접속 가능).
- 방화벽/NAT 환경에서도 잘 작동.
✅ 단점:
- 전체 네트워크 접속보다는 특정 애플리케이션/서비스 접속에 적합.
- 대용량 트래픽 처리나 복잡한 네트워크 연결에는 한계.
SSL VPN의 패킷 구조
SSL VPN은 SSL/TLS 프로토콜을 사용합니다. 이건 웹 브라우저의 HTTPS 통신과 같은 구조예요.
SSL/TLS 패킷 기본 구조
SSL은 TCP 위에서 동작하므로, 구조는 다음과 같습니다:
[IP Header][TCP Header][SSL Record Header][SSL Payload (Encrypted App Data)]
주요 구성:
- SSL Record Header (5 bytes):
- Content Type (1 byte)
- Protocol Version (2 bytes)
- Length (2 bytes)
- SSL Payload:
- 암호화된 애플리케이션 데이터 (예: HTTP, RDP, FTP 등).
IPsec VPN vs SSL VPN 비교
항목 | IPsec VPN | SSL VPN |
계층 | 네트워크 계층 (Layer 3) | 전송 계층 (Layer 4) |
사용 방식 | 전용 클라이언트 필요 | 웹 브라우저 or 가벼운 클라이언트 |
지원 범위 | 전체 네트워크 | 특정 애플리케이션/리소스 중심 |
NAT/방화벽 호환성 | 설정 복잡 (때로 문제) | NAT, 방화벽 우회 용이 |
보안성 | 강력 (넓은 범위) | 강력 (특정 목적) |
사용 사례 | 사무실 간 연결, 전체 사설망 접근 | 원격 사용자, 특정 서비스 접근 |
728x90
'정보보호' 카테고리의 다른 글
XXE Injection의 개념과 방어 방법 (0) | 2025.05.10 |
---|---|
X.509 인증서의 개념, Openssl을 사용한 인증서 생성 방법 (0) | 2025.05.08 |
SSRF(Server-Side Request Forgery)의 개념, 그리고 CSRF와의 차이 (0) | 2025.05.06 |
Buffer Overflow의 개념과 예방방법 (0) | 2025.05.05 |
TLS 1.3 Handshake 동작 과정 (0) | 2025.05.04 |