기업용 전용선

VPN터널링 이런거였어???

아이피맨 2012. 12. 19. 11:29

VPN 터널링 이란 걸 알아보기 전에 우선 VPN 에 대해 먼저 알아보자 그러더라구~


VPN ?

VPN(Virtual Private Network) 공용 네트워크를 이용한 지점간 가상 연결이라 그러더라구~

VPN 기술을 사용하여 기업의 본사와 지사간에 전용회선 대신 공용 네트워크를 이용함으로써 비용 절감의 효과를 얻을 수 있다구~

VPN클라이언트는 터널링 프로토콜이라는 특별한 TCP/IP 기반 프로토콜을 사용하여 VPN 서버의 가상 포트에 대해 가상 호출을 

수행한다 그러더라구~

지점 간 링크를 에뮬레이트하기 위해 데이터는 헤더와 캡슐화되거나 래핑되며, 헤더는 데이터가 공유 또는 공용 네트워크를 통과하여 

끝점에 도달할 수 있도록 하는 라우팅 정보를 제공한다 그러더라구~ 

개인 링크를 에뮬레이트하기 위해 전송되는 데이터는 기밀성을 위해 암호화되며, 암호화 키가 없으면 공유 또는 공용 네트워크에서 패킷을

가로채도 해독할 수 없다 그러더라구~ 개인 데이터가 캡슐화 및 암호화되는 링크를 VPN연결 이라 그러더라구~





 

VPN 터널링(tunneling) 기술

VPN을 구성함에 있어 가장 중요한 핵심 기술이 터널링 기술이라 그러더라구~

공용 네트워크를 사용함에 있어 발생하는 보안 문제와 어떻게 공용 네트워크를 사설 네트워크로 이용하도록 할 것인가를 생각해해야하며,

터널링은 이런 문제를 해결해 줄 수 있는 기술로 종단간 통신 경로를 캡슐링과 인캡슐링 과정을 통해 논리적인 단일망으로 연결시켜주는

역할을 한다 그러더라구~

또한, 터널링 프로토콜에는 아래와 같이 여러가지 방식이 있다 그러더라구~


-  PPTP(Point to Point)

-  VTP(Virtual Tunneling Protocol)

-  L2F(Layer2 Forwarding Protocol)

-  L2TP(Layer2 Tunneling Protocol)

-  IPSec(IP Security Protocol)


=> 이중 VTP, L2F등은 하드웨어에 지나치게 의존하기 때문에 독자적인 망으로 VPN서비스를 제공하려는 서비스 제공업자에게 

    적합한 방식이라 그러더라구~

    터널링을 구현 함에 있어 신뢰성 있는 보안 성능을 제공해주는 기술이 암호화 기술이며 터널링을 이용해 VPN 서비스를

    제공할 때 일반적으로 많이 적용하는 암호화 기술이 인증과 암호화, 복호화  라  그러더라구~

 

 

             - 암호화 방법에는 PPTP에 사용하는 RC4(40bit or 128bit) IPSec에 사용되는 데이터암호화 표준

               (DES:Data Encryption Standard) 등 여러가지가 있고 특히 IPSec에 사용되는 DES는 일반적인 DES(56bit)와 3DES(128bit)

               등으로 구분된다 그러더라구~

 

VPN 방식

 

 PPTP

-  마이크로소프트와 몇몇 회사들에 의해서 제안된 표준으로 인터넷 PPP(Point-to-Point Protocol)형태로 데이터를 

전송하여 다른 시스템이나 인터넷에서 보안을 유지한다. 인터넷 프로토콜인 TCP/IP를 그대로 이용하면서도 

외부인이 접근할 수 없는 별도의 VPN을 운용할 수 있도록 해준다 그러더라구~

- 암호화 방식은 MPPE를 사용하며, MPPE방식은 패킷이 순서없이 대상에 도달할 수 있다는 점 때문에 헤더에 

  시퀀스 번호를 사용하여 패킷을 추적한다 그러더라구~

  MPPE는 시퀀스 번호에 따라 각 패킷에 대한 암호화 키를 변경한다 그러더라구~

- PPTP 데이터 패킷이 터널을 통해 이동할 때에는 우선 암호화된 PPP데이터를 PPP헤더로 캡슐화하여 PPP프레임이

  만들어 진 다음 PPP 프레임은 GRE헤더로 캡슐화된다 그러더라구~

  그 결과 페이로드는 원본과 대상 IP주소에 대한 정보가 들어 있는 IP헤더로 캡슐화 되어 마지막으로 IP데이터그램은 

  데이터 링크 계층 헤더와 트레일러로 캡슐화 된다 그러더라구~

 

      

  데이터

   링크 

   헤더

       

   IP 헤더


    GRE 헤더


   PPP 헤더


  암호화된 PPP데이터

   (IP, IPX, NetBEUI)


     데이터 링크 트레일러

<PPP 헤더>


      L2TP

       - L2TP L2F 프로토콜을 향상시키기 위해 PPTP L2F 프로토콜이 결합돼 IETF가 산업 표준으로 제정한 터널링 

           프로토콜이라 그러더라구~

           L2TP IP, IPX, NetBEUI 트래픽을 암호화 한 다음, IP 헤더로 캡슐화해 전송하기 때문에 PPP에서 제공되는

           데이터 암호화 기법을 사용할 수도 있고 IPSec에 의해 제공되는 더 강력한 데이터 암호화 기법을 사용할 수 있다  그러더라구~

        - L2TP IPSec의 결합 형태에서 연결은 DES알고리즘을 사용한 그러더라구~

 

IPSec

  - 네트워크나 네트워크 통신의 패킷 처리 계층에서의 보안을 위한 표준이며, 이전의 보안 기법들에서는 보안이 통신 모델의 응용 계층에

    삽입되었다 그러더라구~

    IPSec은 가상 사설망과 사설망에 다이얼업 접속을 통한 원격 사용자 접속의 구현에 특히 유용하다 그러더라구~

  - IPSec의 장점은 개별 사용자 컴퓨터의 변경 없이도 보안에 관한 준비가 처리될 수 있다 그러더라구~

  - 데이터 송신자의 인증을 허용하는 인증헤더(AH)와 송신자의 인증 및 데이터 암호화와 함께 지원하는 

    ESP(Encapsulating Security Payload) 두 종류의 보안 서비스를 제공한다 그러더라구~

    이러한 각 서비스에 관련된 명확한 정보는 IP 패킷 헤더의 뒤를 잇는 헤더속의 패킷에 삽입되며, ISAKMP/Oakley 프로토콜과 같은

    별개의 키 프로토콜이 선택될 수 있다 그러더라구~

  - AH는 또한 가능한 한 다수의 IP 헤더에 대한 인증을 제공하는데, 심지어 IP 헤더가 AH 봉함 외부에 있을 때도 마찬가지이며, AH 인증은

    IP 헤터 패킷이 전송중일 때 그에 대한 조작을 불가능하게 만든다 그러더라구~

    따라서 AH의 이러한 특성은 NAT (Network Address Translation) 종단간 환경에서의 사용을 부적절하게 만들며, IP 헤더를 조작하는

    것이 NAT 기능에서는 필수적이기 때문이라 그러더라구~

 

 

     ESP 프로토콜은 데이터의 비밀성privacy을 제공하는데, 암호화되어 있지만 인증되지 않은 데이터 스트림에 대한 

     공격을 막기 위해 AH의 모든 기능이 포함돼 있으며, IPSec 사양은 AH 기능을 제외한 ESP를 허용하고 있지만

     하고 있는 일에 대해 정확히 이해하지 못한다면 이것을 사용하지 말 것을 권장한다 그러더라구~

     ESP는 또한 널null 암호화를 사용할 수 있다 그러더라구~ 널 암호화란 IP 헤더 인증을 제외한 AH와 거의 흡사한데

     IP 헤더에서의 주소가 변하기 때문에 NAT 전송을 허용할 수 있다 그러더라구~

 

     ESP AH IANA(Internet Addr-ess Naming Authority)에 의해 프로토콜 50 51로 각각 등록돼 있으며, 사용자의 경계border 라우터에

     기본적인 패킷 필터링 규칙이 구현돼 있다면 이들 프로토콜을 가용 목록에 추가할 필요가 있다 그러더라구~

     IP 헤더의 이러한 프로토콜 유형의 필드는 현재 IPSec 봉함의 필드이기도 하므로 원래의 전송 유형은 IPSec 헤더내에서 다음 프로토콜

     필드로 이동된다 그러더라구~

 

            IPSec 프로토콜은 전송 모드나 터널 모드에서 모두 사용될 수 있으며, 전송 모드에서 IPSec은 네트웍(IP)와 전송(TCP 혹은 UDP)

           봉함간의 평범한 IP 패킷으로 진입한다 그러더라구~

           전송 모드는 종단 시스템용으로 개발되었는데, 그 사용은 완전히 집단에 속한 모든 시스템에서의 전개용으로 서술되어 있기 때문에

           대부분의 경우 애플리케이션의 재 프로그래밍이 필요하다 그러더라구~

 

     IPSec의 터널 모드는 게이트웨이에 의해 사용되도록 개발된 것이며, 터널 모드에서 일상적인 IP 패킷은 IPSec 봉함내에 놓여지며

     그 IPSec은 다시 또다른 IP 봉함으로 들어간다 그러더라구~

     이 모드에서 사용자는 네트웍의 페러미터에서 IPSec 터널 장비를 신속하게 전개할 수 있다 그러더라구~

     구성이 비슷한 네트웍간에 트래픽의 안전을 보장하는 것은 간단하며, 특수한 최종사용자 소프트웨어나 새 애플리케이션을 전개할 필요가

     없다 그러더라구~

     터널 모드를 지원하는 소프트웨어는 게이트웨이나 종단 시스템상에서 동작할 수 있다 그러더라구~

 

     종단 시스템상에서 터널 소프트웨어가 가장 흔하게 사용될 때는 원격 및 이동 사용자를 지원할 때이며, 게이트웨이가 터널을 통해

     대부분의 종단 사용자 데이터를 전송함에도 불구하고 동료 게이트웨이간의 통신을 안전하게 보호하려면 전송 모드를 사용할 수도 있다

     그러더라구~

     이러한 방식은 라우터, ATM 스위치, 방화벽 및 기타 핵심적인 하부구조 컴포넌트를 원격에서 안전하게 관리하는 훌륭한 방편이 될 수

     있다 그러더라구~

 

      IPSec 연결은 SA(Security Associa-tion)에 의해 규정되는데, SA는 미리 방향이 지정된 것이 아니므로 연결시 2개의 SA가 필요하다

      그러더라구~

      SA IPSec 연결의 다양한 패러미터를 정의하는데, 예를 들어 암호화와 인증 알고리즘과 같이 통신 시스템과 암호화용의 세션 키 및

      스스로의 기능을 제어하는 다양한 패러미터간에 사용되는 것을 들 수 있다 그러더라구~

 

      IPSec 알고리즘

         앞서 언급했듯이 IPSec은 그 내부에서 인증 및 암호화 알고리즘을 사용하는 프로토콜로 구성된 거라 그러더라구~

         2개의 인증 및 7개의 알고리즘은 날짜를 규정하는데 사용되고 있으며, AH ESP에 의해 사용되는 인증 알고리즘은 

         HMAC-MD5 HMAC-SHA1 라고 그러더라구~ 

         이들은 세션 참여자가 한 개의 비밀 키(MD용은 128비트로 RFC 1321 Message Digest 5 버전SHA1용은 160비트로,

         FIPS 180-1 Secure Hash Algo-rithm 1 버전)를 공유하는 키 기반의 인증 알고리즘이며, HMAC 절차는 RFC 204(메시지 인증 코드를

         위한  키 해싱Keyed-Hashing)에 정의되어 있다 그러더라구~

 

   HMAC는 비밀 키 인증 알고리즘이며, HMAC와 마찬가지로 비밀 키 분배의 영역에 따라 데이터 무결성과 데이터 기원 인증이 결정된다

   그러더라구~  소스와 목적지만 HMAC 키만 알고 있다면 두 개의 패리티간에 전송된 패킷을 위해 데이터 기원 인증과 데이터 무결성을

   제공한다 그러더라구~

   HMAC용의 키들은 ISAKMP /Oakley에 의해 생성된 키 재료keying material로부터 생성된다고 그러더라구~

 

   분명한 IV(initialization vector)가 수반된 DES(Data Encryption Standard) ESP에서 사용되는 기본적인 암호화 알고리즘이라

   그러더라구~

   IPSec 호환을 위해 이 알고리즘을 구현해야 한다. 이외에도 Triple DES, CAST-128, RC5, IDEA, Blowfish  ARCFour(Bruce Scheier

   저술한 암호관련서적을 토대하여 RC4를 공개적으로 구현한 것) DES의 대안으로 제시된 다양한 사양들이 있다 그러더라구~

 

   CAST(RFC 2144) 64비트 형식에서는 최소한 DES만큼, 128비트 형식에서는 Triple DES만큼 강력하다고 많은 사람들에 의해 주장되는

   양식으로, DES보다 빠르다 그러더라구~

   RC5(RFC 2040)는 많은 사람들이 키 길이Ley length만큼 강격하다고 주장하는 키 길이가 가변적인 스트림으로서256비트까지 가능하다

   그러더라구~

 

   IDEA는 오리지널 PGP 프로그램에서 사용되는 것으로 그 속도가 빠른 것으로 알려져 있으며, Triple DES와 맞먹는 사이퍼cypher 라

   그러더라구~ 

   블로피시는 Scheier에 의해 개발된 가변적 길이의 사이퍼로서 공격자를 쉬지 못하게 만들기 위해 고안된 거라 그러더라구~

 

   DES 이외의 알고리즘을 선택하는 것이 구현자에 달렸는데, 암호화 알고리즘을 선택하게 되면 여러 가지 이점이 있으며, 잠재적인 공격자는

   단순히 사이퍼를 공격하면 되는 것이 아니라 어떤 사이퍼를 깨뜨리고자 할 것인지도 결정해야 한다 그러더라구~

   이는 사이퍼 키의 전환rotation로 함께 단순히 한물 간 데이터를 해독할 수 있다는 희망 이외에는 공격자들이 건질 것이 없게 만든다

   그러더라구~

 

   정말 VPN 터널링이란 건 너무나도 어렵다  막대사탕이 그러더라구~  ㅡ.ㅡ 

 

   출처 : 인터넷에 떠다니는 글들과 하이온넷 지인을 통한 정보