Contents

VPN 이해 / GRE 터널 + IPSec

   Apr 18, 2023     5 min read

VPN

  • Virtual Private Network
  • eve-ng에서 3725 사용하기

  • 서울에 본사가 있고, 대구에 자사가 있는 경우 이 두 곳의 통신을 안전하게 하려면 ISP를 통한 Leased 회선을 이용하는 방법이 있다.
  • 이렇게 하면 1:1로 직접 연결된 것과 같은 효과가 있어서 보안성은 매우 우수하지만 비용이 비싸다는 단점이 있다.
  • 하지만 VPN을 이용하면 비용이 저렴한 일반 회선을 이용하고도 안전하게 통신할 수 있다.

  • 여러 사람들이 사용하는 Public 네트워크를 Private 네트워크처럼 사용하는 기술

GRE 터널 + IPSec

기본 구성

Untitled (5)

방법

  • R1)
interface Tunnel 0
ip address 19.1.1.1 255.255.255.0
tunnel source 1.1.12.1
tunnel destination 1.1.23.3

router eigrp 100
network 10.1.1.1 0.0.0.0
network 192.168.1.254 0.0.0.0



  • R3)
interface Tunnel 0
ip address 10.1.1.2 255.255.255.0
tunnel source 1.1.23.3
tunnel destination 1.1.12.1

router eigrp 100
network 10.1.1.2 0.0.0.0
network 192.168.2.254 0.0.0.0



결과

Untitled (6)
Telnet 접속이 잘 된다.

Untitled (7)
Wireshark 분석해 보면 telnet 사용자, 패스워드가 잡힌다.

Untitled (8)
Tunnel 의 ip 주소도 잘 나오는 것을 확인할 수 있다.

Untitled (9)

Untitled (10)
사설 주소는 들어오지 않는다.

암호화 수행

  • 원래의 사용자 패킷의 내용을 감추기 위해 암호화를 수행
  • IPSec은 IP Security의 줄임말로 VPN 사용자가 보낸 IP 패킷에 보안을 적용
  • IPSec은 비밀성, 무결성, 인증을 그 목적으로 함.

비밀성

  • Confidentiality
  • 최악의 경우 사용자 패킷에 담겨 있는 정보가 유출되더라도 그 정보를 알아볼 수 없게 만드는 것이다.
  • 암호화와 복호화에 어떤 키(key)가 사용되는지에 따라 대칭형 키(Symmetrical Key)비대칭형 키(Asymmetrical Key)로 구분할 수 있음.

대칭형 키(Symmetrial Key)

  • 대칭형 키는 암호화와 복호화에 동일한 키가 사용된다. (집 열쇠)

비대칭형 키(Asymmetrical Key)

  • = 공개 키 암호화(PKI : Public Key Infrastrucutre)
  • 비대칭형 키는 암호화(공개키)와 복호화(개인키 : 자신PC만 존재)에 다른 키가 사용됨.

무결성

  • Integrity
  • 사용자가 보낸 정보가 전송 중에 가로채여진 후 조작되었는지 여부를 확인하기 위함.
  • 해시 정보가 다르면 폐기됨.
  • 해시 값까지 변경되면 조작 여부를 판단할 수 없다.
  • 해시 기반 메시지 인증 코드(HMAC)
  • HMAC : 해시 정보를 암호화하는 것을 해시 기반 메시지 인증 코드(HMAC)라고 한다.
  • 해커가 조작한 정보에 대한 새로운 해시 값을 계산하더라도 해시 암호화를 위한 키 정보를 모르기 때문에 해시 값을 변경할 수 없다.

인증

  • Authentication
  • IPSec은 자신과 정보를 공유하는 VPN Peer를 인증함으로써 VPN 통신을 위한 세션을 시작한다.
  • IPSec Peer의 인증은 `사전에 공유된 키 정보(PSK, Pre=Shared Key), 전자서명(Digital Signature), 인증서(Digital Certicate)등으로 이루어짐.

IPSec 설정 4단계

  • Step1 : IKE Phase 1(ISAKMP) 정책 설정
  • Step2 : IKE Phase 2(IPSec) 정책 설정
  • Step3 : Phase1 + Phase2 정책 조합
  • Step4 : 인터페이스에 IPSec VPN 적용(활성화)

Step 1 : IKE Phase 1 (ISAKMP) 정책 설정

  • ① VPN 장비간 인증(Authentication) 키 설정
  • pre-shared : 미리 설정한 대칭 키 사용
  • rsa-encr : RSA(Rivest, Shamir, Adleman) 방식으로 미리 만든 비대칭 키 사용
  • rsa-sig : RSA 방식으로 만들 비대칭 키 사용

  • ② 암호화(Confidentiality) 방식 지정 : encryption
  • AES(Advanced Encryption Standard)
  • 3DES(Triple DES)
  • DES(Data Encryption Standard)

  • ③ 키 교환 방식
  • Diffie-Hellman Group 1, 2, 5

④ 무결성(Integrity) 확인 방식 설정

  • md5(Message Digest 5)
  • sha(Secure Hash Standard)

  • ⑤ 현재의 보안 정책 사용시간 : Lifetime 설정

Step 2 : IKE Phase 2 (IPSec) 정책 설정

  • ① VPN으로 보호해야 할 트래픽 지정
  • ② 트래픽 보호용으로 사용할 보안 방식 결정 : Transform set
  • AH, ESP : 하나의 패킷내에서 보호되는 데이터의 범위 및 방식
  • DES, 3DES, AES : 데이터 암호화 방식
  • 무결성 확인(데이터가 중간에 변조되지 않았음을 확인) : MD5, SHA

※ 참고

  • IKE : 인터넷이라는 Public에서 안전하게 키를 주고 받을 수 있을지에 대한 이슈 VPN에서 필수적으로 암호화를 하기 위해 필요한 것이 ‘키’인데, 그 키를 주고 받아야만 같은 키를 갖고 서로 데이터를 암/복호화 할 수 있다. 그 키를 어떻게 안전하게 주고 받을 수 있을 지에 대한 것을 정의

  • ESP : IPsec 헤더. 무결성과 기밀성을 제공한다.

  • AH : 기밀성을 제공하지는 않지만, 무결성과 재생방지를 제공한다.

※ ESP 혹은 AH만 사용할 수 도 있고 두개의 헤더를 같이 사용할 수 도 있다

Ex.

R1)

  • VPN 장비 간 인증에 사용되는 정책 구성
  • Step 01. IKE Phase 1에서 사용할 정책 설정
crypto isakmp policy 1
encryption 3des
hash md5
authentication pre-share
group 2
- 여기까지는 암호화 할 때 사용할 키에 대한 설정 -

crypto isakmp key 7 fz007 address 1.1.23.3
- 여기까지는 Peer 간 ISAKMP 인증을 위한 암호를 지정 - 



  • 보호할 트래픽에 사용되는 정책 구성
  • Step 02. IKE Phase 2에서 사용할 정책 설정
ip access-list extended R13
permit ip host 192.618.1.1 host 192.168.2.1
- 여기까지는 보호할 트래픽을 (GRE 터널) 지정한 것

crypto ipsec transform-set IKE13 esp-3des esp-sha-hmac
- 여기까지는 IKE13 라는 Transform Set을 지정한 것 - 



  • Step 03. 두 정책을 연결
crypto map VPN13 10 ipsec-isakmp
match address R13
set peer 1.1.23.3
set transform-set IKE13
- VPN13이라는 Crypto Map 생성 - 



  • R3)
crypto isakmp policy 1
encryption 3des
hash md5
authentication pre-share
group 2

crypto isakmp key 6 fz007 address 1.1.12.1

ip access-list extended R13
permit ip host 192.168.2.1 host 192.168.1.1

crypto ipsec transform-set IKE13 esp-3des esp-sha-hmac

crypto map VPN13 10 ipsec-isakmp
match address R13
set peer 1.1.12.1
set transform-set IKE13

interface tunnel 0
crypto map VPN13



  • 결과)

Untitled (11)

암호화가 되었다.