본문 바로가기
정보보안 지망이!/Windows 심화

VPN 개념 (터널링 프로토콜_암호화_인증)

by Edes Kim 2020. 7. 9.

- Public Network : 누구나 쉽게 접근, 사용 가능하며 보안에 취약

- Private Network :  그 네트워크를 구축한 (인증된)  사용자들끼리 사용하며 보안성이 높다

                                        [단점] 독립적인 망을 구축할때 거리에 따른 전용선 설치, 관리 = 비용이 많이 든다.

                                                 * 그 해결책으로서 VPN이 계발됨

VPN 

( Virtual Private Network )

인터넷과 같은 Public Network를 Private Network(전용 회선)처럼 사용할수 있게 해주는 기술 또는 네트워크 

 

  분산된 사설망들을 공중망을 이용하여 사설망처럼 사용하는 것이다. 공중망을 이용해도 데이터가 안전하도록 주소 및 라우터 체계의 비공개, 데이터 암호화인증 및 액세스 권한제한 등의 보안이 강화된다.

=   터널링 + 암호화 + 인증기술 을 통한 통신 서비스 !!!

 

[장점] 

- ISP가 제공하는 인터넷 Network를 사용하므로 전용선에 비해 가격이 훨신 낮다.

- 이 말은 즉, ISP망이 구축되어 있는 곳이라면 ISP의 POP(Point Of Presence)에 접속하여 어디에서든 VPN 이용가능

- Private Network를 구성하는 장비를 ISP에서 직접 관리 -> 관리 비용이 줄어든다.

 

[단점] 

- 명확한 표준 x = ISP 업체마다 다른 기술을 사용해 서로 다른 ISP 간의 연동에서 문제발생

 

[특징]

- 기존의 Private Network의 서비스를 그대로 제공.

- Network를 통해 전달되는 Data의 안전성 제공 ( 인증, 엑세스 제어, 데이터 기밀성 및 무결성 제공)            

터널링 및 인증, 암호화 기술이 요구됨.

 

구성유형 

- L2L (LAN to LAN)

  본사와 지사간VPN 장비를 설치하여 네트워크를 연결하는 유형

- L2C (LAN to Access)

  재택근무, 이동 근무, 소규모 사무실 연결 유형

  각 PC에서 VPN Client 프로그램을 이용하여 접속하는 단말 연결 형태

 

VPN 구축 방식

- 방화벽 기반

- 라우터 기반

- VPN 전용 장비

- Managed VPN Service (ISP를 통한 ASP 방식) 등...

 


Tunneling Protocol의 종류

Tunneling Protocol : VPN 구현의 핵심기술

VPN 종류

 Layer 2 -> PPTP, L2TP 

: L2C를 위한 client-server model 로 개발되어 remote access VPN에 주로 사용된다

client가 접속할때 아이디와 암호를 사용하여 인증 절차를 걸친후 터널링을 시작한다.

PPP를 기반으로 하며 ATM, fram-releay를 지원한다.

 

 Layer 3 -> IPSec 

: IPSec이 대표적인 프로토콜이며 주로 L2L VPN에 이용

L2L은 VPN 터널을 이용하여 LAN 단위의 네트워크(본사-지사) 사이에 사용       

네트워크 계층 레벨의 VPN을 구성

L2L 모델, 링크 계층과 독립적으로 구성

우수한 보안성

 

그 외...

OpenVPN, SSTP, IKEv2


1. PPTP

(Point to Point Protocol)

: 전화 접속 네트워크에 가상 사설 통신망을 구축하는 VPN용 표준 프로토콜이다.

  캡슐화 및 보안을 하는 Tunneling Protocol이다.

 MS-CHAP v2의 다양한 인증 방법을 이용하여 보안을 제공한다.

 

[장점] 가장 대중적이다. (거의 모든 VPN 이용 가능 장치 및 플랫폼에서 표준으로 사용을 지원한다)

            속도가 가장 빠르고 설치가 쉽다.

[단점] 캡슐화가 되지 않는 이 MS-CHAPv2 인증은 보안 취약점을 가진다.

           + MS사가 급하게 결점을 보완했지만 기술 전문가들은 사용자에게 대신 SSTP 또는 L2TP 사용을 권장한다.

 

2. L2TP 및 L2TP/IPSec

(Layer 2 Tunnel Protocol): 다른 VPN 프로토콜과 달리 통과하는 트래픽에 개인 정보 또는 암호화를 제공하지 x이 때문에, 이는 일반적으로 전송 에 데이터를 암호화 하여 사용자의 개인 정보 보호와 보안을 제공하는 IPSec 프로토콜과 함께 구현된다.모든 현대 VPN 호환 장치 및 운영 체제는 L2TP/IPSec을 내장하고 있다.

 

[장점] PPTP만큼 쉽고 빠르다.

[단점] UDP 500 포트를 사용하므로 NAT 방화벽에 의해 차단되기 쉽다.

            -> 방화벽과 함께 사용하는 경우 포트포워딩이 필요하다.

 

3. IPSec

: IP 데이터그램의 인증과 무결성, 기밀성 제공

전송모드/터널모드

IPSec헤더는 AH와 ESP가 있다.

            

4. OpenVPN

: 상대적으로 새로운 오픈소스 기술이다. 

SSLv3/TLSv1 프로토콜과 OpenSSL 라이브러리를 다른 기술과 함께 사용하여 사용자에게 안정적이고 강력한 VPN 솔루션을 제공.

 

[장점] UDP 포트에서 구성하기 쉽고 가장 잘 실행되면서 다른 포트에서도 구성, 실행된다.

            즉, 구성이 용이하다.

                                   = Google 및 기타 유사 서비스가 이 프로토콜을 차단하는 것은 극도로 어렵다.

            다양한 암호화 알고리즘 지원 (3DES, AES, Camellia, Blowfish, CAST-128 등)

            매우 안전하다. ( 몇 취약점 빼고는.)

            암호화 수준에 따라 다르지만 보통 IPSec 보다 빠르다.

            임시 키교환을 사용하기 때문에 NSA 공격에 면역이 된것으로 간주

            대부분의 방화벽을 우회할 수 있다.

 

[단점] 모든 플랫폼에서 지원되는 것은 아니다. 

            L2TP/IPSec 및 PPTP에 비해 설정이 까다롭다.

            추가 구성 파일도 설치해야한다.  (여러 VPN제공 업체는 앚춤화 VPN 클라이언트의 공급 때문에 이 구성 문제를 직면한다.)

 

5. SSTP

: MS사의 독점 소유로, 다른 os에서도 사용될수 있지만 여전히 주로 Windows 전용 플랫폼이다. (Windows통합)

SSLv3를 사용 -> NAT 방화벽 문제를 방지 (OpenVPN 처럼.)

 

[장점] VPN을 안정적이고 쉽게 사용할수 있게 한다.

            대부분의 방화벽을 우회할 수 있음

           암호에 따라 보안 수준이 다르지만, 일반적으로 안전하다.

            MS 지원

[단점] 백도어 검사 불가

            Windows 전용 플랫폼에서만 작동함

 

6. IKEv2

(Internet Key Exchange Vsersion 2)

: IPSec 기반 Tunneling Protocol 이다.

Cisco와 MS 에 의해 개발.Linux 및 다양한 플랫폼과 호환 가능 (<-> SSTP)

 

[장점] Blackberry 장치를 지원하는 소수의 VPN 프로토콜중 하나다.           

표준이 제공하는 Mobility 및 Muti-homming 프로토콜이 네트워크 변경을 극도로 유연하게 만들기때문에 VPN 연결이 일시적으로 끊어졌을때 자동으로 VPN 연결을 재설정하는데 뛰어나다.           

다양한 암호 알고리즘 지원 = 매우 안전              

L2TP, PPTP 및 SSTP보다 상대적으로 빠르다. [단점] 비교적 적은 수의 제한된 플랫폼에서만 이용가능.             

UDP 500이 쉽게 차단된다.             

서버 측에서 IKEv2 구현이 까다롭다. -> 몇몇 문제가 발생가능


인증 방식의 종류

MS-CHAPv2 

: 암호화 지원 x

 

ECDSA-P256

:

 

PSK

: 양쪽의 키가 동일하면 통신가능(?)

 

RSA ( Ron Rivest, Adi Shamir, Leonard Adleman)    >> 뚫렸음...

: 공개키와 개인키로 분류

  이산 대수, 소인수 분해를 이용하여 공개키/개인키를 인증

  기밀성, 키 분배, 인증분야에서 사용됨

 

Kerberos

: 제 3의 컴퓨터가 서비스를 이용하려는 클라이언트의 사용자를 인증함으로서 서로간에 비밀통신이 가능해진다.

서로 도메인 내의 Trust관계여야 한다.

Spoofing 이나 Sniffing 을 막을수 있다. 


암호화의 종류

ESP