a hand holds a lock; IPSEC is written on it.

간단히 말해 IPsec VPN(가상 사설망)은 IPsec 프로토콜에서 실행되는 VPN입니다. 하지만 이 외에도 다양한 기능이 있습니다. 이 글에서는 IPsec, IPsec 터널링IPsec VPN이 무엇인지 알아보겠습니다. 모든 개념을 이해하기 쉽게 간단하면서도 상세하게 다룰 테니 유익한 글이 되었으면 합니다. 기본 개념부터 시작하겠습니다.

목차

    IPsec이란 무엇인가요?

    IPsec은 인터넷 프로토콜 보안(Internet Protocol Security)의 약자입니다. IP 부분은 데이터의 목적지를 뜻하고 sec은 데이터를 암호화하고 인증하는 것을 의미합니다. 다시 말해 IPsec은 공용 인터넷을 통해 기기 간에 안전하고 암호화된 연결을 설정하는 일련의 프로토콜 모음입니다.

    IPsec 프로토콜은 일반적으로 다음과 같은 작업에 따라 그룹화됩니다.

    • 인증 헤더(Authentication Header, AH)
    • 보안 페이로드 캡슐화(Encapsulating Security Payload, ESP)
    • 보안 연결(Security Association, SA)

    IPsec은 무엇으로 구성되나요?

    무엇으로 구성되었는지 묻는 것은 어떻게 작동하는지 묻는 것과 유사합니다. IPsec의 주요 목표는 보안 연결을 암호화하고 설정하는 것입니다. 그리고 세 개의 작은 프로토콜 그룹으로 세분화되고 이를 통해 달성할 수 있게 이루어집니다. 세분화된 세 개의 프로토콜 그룹은 각각 별도의 고유한 작업을 처리합니다. 

    A town and a village are connected by a stream that leads into a fortified castle. The town is named AHtown, the village ESPville and the castle is named Fort SA.

    보안 인증 헤더(AH) — 모든 데이터의 출처가 동일하고 해커의 데이터 일부를 정상적인 데이터로 위장하지 못하도록 확인합니다.

    봉인된 봉투를 받았다고 가정해 보겠습니다. 봉인이 훼손되지 않았다면 아무도 편지를 손대지 못한 것을 의미하겠지요? 인증 헤더는 IPsec VPN을 통해 전송되는 모든 데이터에 대해 동일한 기능을 수행합니다. 하지만 해당 작업은 IPsec의 두 가지 동작 중 하나에 불과합니다. 다른 동작은 보안 페이로드 캡슐화입니다.

    보안 페이로드 캡슐화(ESP) — 암호화 프로토콜로 데이터 패키지를 읽을 수 없는 형태로 변환합니다. 암호화 기능 외에도 ESP는 인증 헤더와 유사한 기능인 데이터 인증 및 무결성 확인을 수행할 수 있습니다.

    앞서 언급한 편지와 봉인 예시로 돌아가자면, 누군가가 편지를 가로채서 연다 해도 이해할 수 없는 문자로만 가득 찬 편지를 손에 들고 있게 되는 것과 같습니다. 사용자 입장에서 보자면 VPN 클라이언트에서 암호화가 이루어지고 반대쪽에 있는 VPN 서버에서 암호화를 처리합니다. 

    보안 연결(SA)IPsec 연결을 설정하는 두 장치 간에 합의된 사양 집합입니다.

    인터넷 키 교환(IKE) 또는 키 관리 프로토콜은 해당 사양의 일부입니다. IKE는 다른 장치의 보안 연결과 협상하고 이를 인증합니다. IKE는 암호화 키를 다른 장치의 SA와 교환함으로써 안전한 통신 채널을 제공합니다.

    더욱 쉽게 설명하자면, SA는 두 스파이 사이의 암호와 같습니다. SA는 암호화된 메시지를 어떻게 해석하고 누구에게 전달해야 하는지를 알려줍니다. 즉 두 장치 간에 통신 중 정보를 보호하는 방법에 대한 합의입니다.

    IPsec은 정보를 어떻게 전송하나요?

    AH 또는 ESP를 사용하도록 IPsec을 설정하면 전송 모드(전송 또는 터널)를 선택합니다.

    IPsec 전송 모드: 이 모드는 보내는 데이터를 암호화하지만, 목적지에 대한 정보는 암호화하지 않습니다. 따라서 사이버 범죄자는 가로챈 통신 데이터를 읽을 수는 없지만 언제 어디서 보내졌는지는 파악할 수도 있습니다. 

    IPsec 터널 모드: 터널링은 인터넷을 통해 두 장치 간에 안전한 암호화된 연결을 생성합니다. 따라서 연결은 비공개적이고 안전합니다. IPsec VPN은 이 모드에서 작동하며 IPsec VPN 터널을 생성합니다.

    중요한 점은 웹을 통해 데이터를 전송하는 데 사용되는 두 프로토콜(UDP vs TCP) 중 IPsec은 방화벽을 무시하는 유형의 전송인 UDP(사용자 데이터그램 프로토콜)를 사용하는 것입니다.

    지금부터 위에서 알아본 모든 내용을 IPsec VPN이라는 앱으로 살펴보겠습니다.

    IPsec VPN은 무엇이며 어떻게 작동하나요?

    VPN은 인터넷 (또는 다른 기기에) 사용자 연결을 암호화하는 앱입니다. VPN은 연결을 암호화하기 위해 프로토콜을 사용하며 암호화하는 방법은 다양합니다. IPsec 사용은 그중 하나입니다. IPsec 프로토콜 제품군을 사용하는 VPN을 IPsec VPN이라고 합니다.

    IPsec VPN 클라이언트가 실행 중이라고 가정해 보겠습니다. IPsec VPN 동작 원리는 어떻게 될까요?

    1. 연결을 클릭합니다. 
    2. ESP와 터널 모드를 사용하여 IPsec 연결을 시작합니다. 
    3. SA는 사용될 암호화 유형과 같은 보안 매개변수를 설정합니다. 
    4. 데이터는 암호화된 상태에서 송수신할 준비가 완료됩니다.
    An infographic showing how IPsec connection works between two devices.

    이것이 IPsec의 기본입니다. 단순해 보일 수 있지만, 실제 IPsec VPN 동작 원리는 이보다 조금 더 복잡합니다.

    IPsec은 단계별로 어떻게 작동하나요?

    IPsec을 사용하여 통신하려는 두 대의 장치가 있다고 가정해 봅시다. 한 장치가 메시지를 보내려고 할 때 다음과 같은 일이 발생합니다.

    1. 키 교환 —  IPsec은 각 장치의 메시지를 암호화하고 해독하기 위해 암호화 키(랜덤 문자열)를 설정합니다.
    2. 헤더 및 트레일러 — 인터넷에서 전송되는 모든 데이터는 패킷이라고 불리는 작은 조각으로 나누어집니다. IPsec 프로토콜은 패킷 앞부분(헤더)과 끝부분(트레일러)에 인증 및 암호화 정보를 넣습니다. 해당 헤더와 트레일러는 장치에 데이터 패킷으로 처리해야 할 작업을 알려줍니다.
    3. 인증 — IPsec은 각 데이터 패킷에 고유한 “이름” 또는 ID를 부여하여 인증합니다.
    4. 암호화 — IPsec은 데이터 패킷의 내용을 암호화합니다.
    5. 전송 — 패킷은 전송 또는 터널링 프로토콜을 사용하여 전송됩니다. 
    6. 암호 해독 — 다른 장치가 메시지를 수신하고 해독 키를 사용하여 메시지를 해독합니다.

    IPsec은 MSS와 MTU에 어떤 영향을 미치나요?

    모든 데이터는 데이터 패킷에 담겨 전송되며, 이는 바이트 단위로 측정됩니다. 

    MSS또는최대 세그먼트 크기는 데이터 패킷최대 크기(1460바이트)를 나타내는 값입니다.

    MTU최대 전송단위는 인터넷에 연결된 기기가 수용할 수 있는 최대크기(1500바이트)를 나타내는 값입니다.

    해당 패킷에는 전송되는 정보, IP 헤더(20바이트) 및 TCP 헤더(20바이트)가 포함되어 있으며, 모두 크기 제한이 있습니다.

    IPsec은 최대 전송 단위를 변경하지 않지만, 최대 세그먼트 크기 값은 항상 낮춥니다. 아래는 수식으로 증명한 것입니다.

    인터넷을 통한 IP 패킷의 표준 전송량

    MTU(1500바이트) – (IP 헤더(20바이트) + TCP 헤더(20바이트)) = MSS(1460바이트)

    그러나 IPsec은 전송된 데이터에 추가 헤더를 더하므로 전체 IP 패킷의 “가중치”는 저절로 변경됩니다.

    MTU(1500바이트) – (IP 헤더(20바이트) + TCP 헤더(20바이트) + IPsec 바이트) = MSS(1460바이트 – IPsec 바이트)

    직접 IPsec 체험하기

    이제 VPN 내에서 IPsec VPN이 무엇인지 알게 되었습니다. 스마트폰에서 앱을 실행하는 Surfshark VPN 사용자의 경우, IPsec 프로토콜의 일부인 IKEv2 이름으로 IPsec VPN을 사용 중일 것입니다. 아직 Surfshark 사용자가 아니라면 구독해 보세요. Surfshark는 IPsec 그 이상을 제공합니다!

    Surfshark를 사용하면 개인 정보가 완벽하게 보호됩니다

    차원이 다른 VPN

    보안 설정하기

    자주 묻는 질문

    IKEv2란 무엇인가요?

    IKEv2(인터넷 키 교환 버전 2)는 IPsec 프로토콜 제품군의 보안 연결 부분에서 사용되는 프로토콜입니다.

    사용자를 인증하고, 연결 끝에 있는 장치가 해당 사용자가 맞는지 확인한 다음, Diffie–Hellman 키 교환을 사용하여 암호화된 연결을 설정합니다. 암호화된 데이터를 해독하기 위해 암호화 암호를 키로 만들지 않고, 공용 네트워크를 통해 암호화 암호를 전송하는 데 일반적으로 사용하는 방법입니다.

    IKEv2 프로토콜을 실행하는 IPsec을 IKEv2/IPsec이라고 칭하지만 업계 표준 명칭은 IKEv2입니다. IKEv2는 2005년에 출시되었으며 1995년에 개발된 IKEv1을 사용하는 기존 IPsec의 일부 문제를 개선하고 수정한 것입니다.

    IPsec은 안전한가요?

    전 세계 주요 VPN 제공업체는 IPsec을 IKEv2와 함께 사용하면 안전하다고 여깁니다. 하지만 2015년경에 미국 국가안보국(NSA)이 IPsec을 침해했을 가능성이 있다는 주장이 제기되었습니다. 만약 이 주장이 맞는다면 NSA는 IPsec에 백도어를 설치했거나 Diffie–Hellman 키 교환을 조작하는 방법을 알아냈을 것입니다. 그러나 일부 보안 전문가들은 해당 주장에 대해 이의를 제기하고 있습니다.

    이로 인해 IPsec의 안전성에 의구심이 든다면, 대부분의 VPN 제공업체는 IPsec VPN 프로토콜을 대체할 대안을 제공합니다.

    IPsec이 SSL보다 더 좋은가요?

    IPsecSSL(Secure Sockets Layer, 보안 소켓 계층)을 비교하는 것은 사과와 오렌지를 비교하는 것과 같습니다. 두 프로토콜은 OSI(개방형 시스템 상호연결) 모델에서 서로 다른 방식으로 작동합니다. 두 프로토콜을 간략히 비교하자면 다음과 같습니다.

    IPsec
    SSL
    네트워크 계층에서 작동
    응용 계층에서 작동
    프로토콜의 집합
    프로토콜
    VPN으로 작동하려면 소프트웨어 필요(전체 장치 보호)
    소프트웨어로 사용 가능(전체 장치 보호) 및 브라우저를 통해 VPN 연결 가능(브라우저 트래픽만 보호)
    IPsec VPN은 사용자에게 네트워크 전체 액세스 허용
    SSL VPN은 네트워크에 대한 액세스를 사용자가 지정 가능
    클라우드에 구현하기 더 쉬움
    클라우드에 대한 추가 구성 필요

    IPsec과 SSL 모두 안전하며 VPN을 구축하는 데 사용할 수 있습니다. 하지만 두 프로토콜의 안전성은 최종적으로 VPN의 구성, 목표, 및 환경 설정과 VPN 개발자에게 달려있습니다.