[네트워크] VPN

hugingstar·2026년 3월 25일

Network

목록 보기
20/21
post-thumbnail

VPN : Virtual Private Network

가상 사설 네트워크 > Tunneling + Encrytion

  • Public Network를 Private Network처럼 사용하기 위한 기술이다.

  • 본사/지사(or) 외부 각각의 Network를 연결하여 하나의 전용선처럼 연결

  • Tunneling을 통해 논리적인 연결을 생성 인증/암호화/접근제어 등을 통해 보안성을 높인다.

  • 구성 방법

    • VPN 전용 장비
      • VPN용으로 제작된 전용 H/W를 이용하여 구축
        • 장점 : 확장이 요이
        • 단점 : 별도의 H/W를 구매해야 한다. (초기 구축 비용이 높다.)
    • Router를 이용한 VPN
      • Router (Access Server)에서 지원하는 VPN 기능을 이용하여 구축한다.
        • 장점: 별도의 장비 구입이 필요하지 않고, Topology 의 변화가 없다.
        • 단점: Router 자체 성능에 따라 VPN 성능을 결정, Router 자체의 보안 문제가 VPN에 영향을 준다.
    • Firewall을 이용한 VPN
      • Firewall에 지원하는 VPN 기능을 이용하여 구축
        • 장점: 별도의 장비 구입 없이 기존 장비로 구축하기 때문에 관리 및 유지보수가 용이하다.
        • 단점: 병목 현상(Bottleneck) 발생 가능

Tunneling

  • 정의

    • 물리적으로 떨어진 특정 장소들을 논리적으로 하나로 연결하는 기술
    • 송신측 + 수신측 : Data Encapsulation
    • 수신측: Data Decapsulation
  • 목적

    • Protocol이 호환되지 않는 Network를 통해 Data를 전달
      ex) IPX는 IP망에서 통신이 불가(Routing X)
    • Tunnel로 전달되는 Data를 암호화하여 보안을 높임
  • 기능

    • Packet 암호화
      • 암호화 키 관리 -> 협상을 통해서 지정
    • Tunnelling 생성 관리

용어 정리

  • Passenger protocol
    - 원본 Data를 담고 있는 Protocol
  • Encapsulation protocol
    - source에서 destination으로 data를 전달할 때 Encapsulation/Decapsulaion을 수행하는 Protocol
    • Layer2 Tunneling Protocol - PPTP, L2TP, L2F ...
    • Layer3 Tunneling Protocol - Cisco GRE, 표준 GRE, IPSec(ESP),...
  • Carrier Protocol
    • Tunneling Protocol로 Re-Encapsulation된 Data의 물리적인 Source와 Destination 정보를 지정하기 위해 추가되는 protocol
    • Tunneling된 Data를 물리적인 Network로 전송하기 위해 사요
    • 모든 장비에서 지원하는 범용적인 Layer 3 Protocol을 사용 - IP

GRE(Generic Routing Encapsulation)

  • CISCO에서 개발한 Tunneling Protocol > 산업 표준으로 사용됨.

  • 다양한 Passenger Protocol을 Encapsulation하여 전달한다.

  • 단순한 Tunnering 기능만 제공한다. > 암호화 X

  • 인터페이스 설정을 모두 해준다.

  1. 구간별 통신 확인 (PC-Router, Router-Router)
  2. PC0 <-> PC1 통신되게 Static Routing
    HQ, BR - Default Route
HQ(config)#ip route 0.0.0.0 0.0.0.0 1.1.1.2
BR(config)#ip route 0.0.0.0 0.0.0.0 2.2.2.2
ISP(config)#ip route 192.168.53.0 255.255.255.0 1.1.1.1
ISP(config)#ip route 172.16.0.0 255.255.0.0 2.2.2.3
  • TTL이 125가 출력된 것을 볼 수 있다.(기준값)

  • HQ : Tunnel 설정을 해준다.
HQ(config)#interface tunnel 0
HQ(config-if)#tunnel mode gre ip
HQ(config-if)#tunnel source g0/0
HQ(config-if)#tunnel destination 2.2.2.3
HQ(config-if)#ip address 10.0.0.1 255.0.0.0
  • BR에서도 Tunnel 설정을 해준다.
BR(config)#interface tunnel 0
BR(config-if)#tunnel mode gre ip
BR(config-if)#tunnel source g0/0
BR(config-if)#tunnel destination 1.1.1.1
BR(config-if)#ip address 10.0.0.2 255.0.0.0
  • Static routing을 적용해준다.
Tunnel로 Routing
HQ(config)#ip route 172.16.0.0 255.255.0.0 10.0.0.2
BR(config)#ip route 192.168.53.0 255.255.255.0 10.0.0.1

IPSec

  • IP Security
  • Network Layer에서 동작하는 IP망에서 사용하는 표준 보안 Protocol
    • 3계층 Tunneling을 위한 방식
    • Protocol suite: 여러개의 Protocol의 지합(AH, ESP, ...)
      • AH(Authentication header) : 무결성 / ESP(Encapsulation Security Payload) : 무결성 + 기밀성
  • 암호화 알고리즘을 위한 키 결정, 인증키 협상
    • Protocol로 협상 : IKE(Internet Key Exchange)
    • 무조건 지정 : Manual (수동)
  • IPSec에서 사용하는 알고리즘
    • 기밀성
      • 대칭키 알고리즘 : DES, 3DES, AES
      • Key 교환 알고리즘 : DH1, DH2, DH5
    • 무결성
      • HMAC-MD5, HMAC-SHA-1
    • 인증
      • PSK, 인증
    • Tunneling Mode
      • Transport Mode: 통신 대상이 암호화에 대한 설정
      • Tunnel Mode: 통신 대산에 암호화 설정 X
  • PPP, PPTP
    - PPP
    - VPN 인증, 암호화
    - Point-to-Point Protocol 두 지점간 데이터 전송을 목적으로 사용하는 Protocol
    - Layer2에서 동작하는 프로토콜
    - 인증 방식 : PAP, CHAP 같은 인증 Protocol 내장
    - PAP (Password Authentication Protocol) : 단순 사용자명/비밀번호를 평문으로 전송한다.
    - CHAP (Chanllenge Handshake Authetication Protocol) : 암호화 된 Challenge/Response 방식
    • PPTP
      • Point-to-Point Tunneling Protocol
        • Layer2에서 동작(MS에서 개발)
        • No-ip-protocol들이 ip망에서 이동하도록 지원 > 별도의 IP헤더를 사용하여 Routing (Carrier)

(03-25)

PPTP

  • TCP 1723, GRE 47
  • 암호화: MS-CHAP v1/v2, 매우 취약함
  • 구성 단계
    - TCP 1723 port로 제어 연결을 연다.
    • GRE Protocol을 통해 Data tunneling
    • CHAP 방식으로 암호화 - 로그인 정보가 확인됨.
  • PPTP를 실습하기 위해서 아래와 같이 IP를 설정한다.
  • Window 2022 server : Ethernet0 (10.17.0.150, VMnet0), Ethernet1 (192.168.17.1, VMnet1)
  • Window client : Ethernet0 (10.17.1.150, VMnet0)

  • Win Client(10.17.1.150)에서 Win server(10.17.0.150)으로 값이 가는지를 확인한다.

  • Win server에서 역할 및 기능 추가를 클릭한다.

  • 서버 역할에서 원격 액세스를 체크한다.

  • 원격 액세스 > 역할 서비스에서 라우팅을 선택한다.

  • 다 넘어가고, 확인 페이지로 간다.
  • 필요한 경우 자동으로 대상 서버 다시 시작 체크한다.
  • 설치 시작

  • 라우팅 및 원격 액세스 서버 설치 마법사를 시작한다.

  • VPN 액세스 및 NAT를 체크한다.

  • 두 개의 포트가 있는지 확인한다.

  • 지정된 주소에 대해서를 체크한다.

  • 1 부터 50까지로 범위를 설정한다.

  • 나중에 할거라고 체크한다.

  • RADIUS 서버와 작동하는 것 : 아니오 체크한다.

  • 조금 기다리면 생성된다.

  • 2022-00 부분 우클릭해서 들어가고, 보안 탭을 클릭한다.

  • EAP 체크를 해제한다.
  • 적용하고 라우터 다시시작 예 클릭한다.

lusrmgr.msc

  • 새 사용자 체크하고 암호기간 제한 없음으로 놓고 만든다.

  • 액세스 허용을 체크한다.

  • 네트워크 및 공유 센터를 클릭

  • 새로운 네트워크 설정 > 회사에 연결을 클릭
  • 내 인터넷에 연결 사용 (인터넷 연결 상태를 확인해야 한다.)

  • 네트워크에 연결 들어가서 VPN 연결에 보안을 설정한다.

  • VPN 고급으로 수정해야하는데, 사용자 이름, 암호를 입력하고 저장한다.

  • 연결이 완료되었다.

  • 이 부분 보면, VPN이 올바르게 연결되어 있는 것을 볼 수 있다.
  • tracert 8.8.8.8로 가는 경로를 확인해본다. (끝)

L2TP

  • L2F + PPTP

  • PPTP의 단점인 보안을 향상시킨 Protocol (+확장성)

  • 로그인 전까지 암호화가 되지 않는다.

  • 구성 단계

    • IPSec으로 인증 (Pre-Shared-Key)
    • 암호화
    • PPP로 사용자 인증
  • 실습

    • PPTP 실습 구성이 되어있는 상태로 진행 (거의 동일하다.)
  • Win 2022 서버에서 L2TP 체크하고 아래 키에 입력한다.

  • L2TP 미리 공유한 키 체크하고, 입력한다.

0개의 댓글