[Cisco] IPSec 구축으로 데이터 보호하기 [GNS3]
Nowhere 와 Now here 의 차이

IT/ㄴ Cisco

[Cisco] IPSec 구축으로 데이터 보호하기 [GNS3]

TIENE 2023. 8. 14. 09:05
반응형

 

IPSec 구축으로 데이터 보호하기

- 아래의 두 링크에서 IPSec의 개요와 통신 과정을 살펴보았다. 이를 토대로 직접 통신장비에 IPSec을 적용시켜서, 구동하는 메커니즘을 살펴보고자 한다. 정말로, ESP헤더가 붙어서 통신이 되는지 확인해보자.

 

[Cisco] IPSec 알아보기

 

[Cisco] IPSec 알아보기

2020년 국비지원 교육 내용 정리 중 IPSec - IETF가 개발한 공개 표준 - IP는 비연결형이지만 IPsec은 연결지향형 - 송/수신하는 IP 트래픽 보호를 위해서 암호화 및 다양한 보안 Protocol을 사용한다. - IPse

a-gyuuuu.tistory.com

[Cisco] Wireshark로 IPSec 통신 과정 살펴보기 [GNS3 / Wireshark]

 

[Cisco] Wireshark로 IPSec 통신 과정 살펴보기 [GNS3 / Wireshark]

#1 IKE Phase 1- Main Mode - IKE Phase-1의 주요 목적은 IKE Phase-2에 사용할 수 있는 보안 터널을 설정하는 것이다. 1) Negotiation 항목 - Hashing: 무결성을 검증하기 위해 해시 알고리즘을 사용하고, 이를 위해 MD

a-gyuuuu.tistory.com

 


 [구성도]


목차

1. Router 별 기본 Configuration

2. IPSec Configuration

3. IPSec 구축 환경에서 확인해보기

4. Wireshark에서 확인하기  


1. Router 별 기본 Configuration

ISP-1#
hostname ISP-1
interface Gi0/0
 ip address 11.11.11.10 255.255.255.252
 no sh
 duplex auto
!
interface Gi0/1
  no sh
 ip address 111.111.111.110 255.255.255.252
 duplex auto
!
router ospf 1
 network 11.11.11.10 0.0.0.0 area 0
 network 111.111.111.110 0.0.0.0 area 0
!

ISP-2#
hostname ISP-2
interface Gi0/1
   no sh
 ip address 111.111.111.109 255.255.255.252
 duplex auto
!
interface Gi0/0
   no sh
 ip address 22.22.22.21 255.255.255.252
 duplex auto
!
router ospf 1
 network 22.22.22.21 0.0.0.0 area 0
 network 111.111.111.109 0.0.0.0 area 0
!

A-BB# 
hostname A-BB
interface Gi0/0
 no sh
 ip address 192.168.1.254 255.255.255.0
 duplex auto
!
interface Gi0/1
 no sh
 ip address 11.11.11.9 255.255.255.252
 duplex auto
!
router ospf 1
 network 11.11.11.9 0.0.0.0 area 0
 network 192.168.1.254 0.0.0.0 area 0
!

C-BB#
hostname C-BB
username test password 0 test
enable password test
!
interface Gi0/0
 no sh
 ip address 192.168.2.254 255.255.255.0
 duplex auto
!
interface Gi0/1
 no sh
 ip address 22.22.22.22 255.255.255.252
 duplex auto
!
router ospf 1
 network 22.22.22.22 0.0.0.0 area 0
 network 192.168.2.254 0.0.0.0 area 0
!
line vty 0 4
 login local
 transport input telnet
!

PC-1
hostname PC-1
interface e0/0
 no sh
 ip address 192.168.1.100 255.255.255.0
 duplex auto
!
ip route 0.0.0.0 0.0.0.0 192.168.1.254
!

PC-2
hostname PC-2
interface e0/0
 no sh
 ip address 192.168.2.100 255.255.255.0
 duplex auto
!
ip route 0.0.0.0 0.0.0.0 192.168.2.254
!

- 모든 설정을 마치고 A-BB의 Routing Table을 확인한다. 반대편 192.168.2.0/24에 대한 Routing 정보를 OSPF를 통해 출력된다.

 

- Routing 정보가 있으니, PC-1에서 PC-2로의 Ping을 보내어 반대편까지 통신이 되는지 확인한다.

- 정상적으로 완료되었으며 traceroute를 통하여 경로까지 확인한 결과, 정상이다.

 

- IPSec 설정 전과 후를 살펴보기 위해서 PC-1에서 C-BB로 Telnet 접속을 해본다.

- 아래와 같이 접속하면, 평문으로 접속되어 접속 후 입력한 모든 값이 출력된다. 

- 이제, 데이터 암호화 통신을 위하여 IPSec Configuration을 진행한다.

 

2. IPSec Configuration

2.1 ) A-BB# - IKEv1 Phase 1

# IPSec Enable
crypto isakmp enable
!
# Phase-1 조건 설정
crypto isakmp policy 10
 encr 3des                           <------ 암호화 알고리즘 설정
 hash md5                           <------ 인증 알고리즘 설정
 authentication pre-share <------ 사전 인증방식
 group 2                              <------ Key 길이 설정
 lifetime 3600                    <------ Key 교환 주기 설정
!
crypto isakmp key cisco address 22.22.22.22   <---- 사전 Key 조건 및 Phase-1의 연결장비 주소 설정
!

 

2.2 ) A-BB# - IKEv1 Phase 2

# Phase-2 조건 설정 
crypto ipsec transform-set IPSEC esp-des esp-md5-hmac 
!
# Interface에 적용하기 위한 crypto map 생성
crypto map IPSEC-A 10 ipsec-isakmp 
 set peer 22.22.22.22           <----- Phase-2의 연결장비 주소 설정
 set transform-set IPSEC     <----- Phase-2 통신시 사용할 암호화 알고리즘 및 인증 알고리즘 적용
 match address 101              <----- 정보 보호에 포함할 네트워크 대역 적용(ACL Number)
!

 

2.3 ) A-BB# - Interface 적용하기

#ACL을 통하여, 데이터 보호가 필요한 대역 지정 - 출발지 192.168.1.0/24 <-> 목적지 192.168.2.0/24
access-list 101 permit ip 192.168.1.0 0.0.0.255 192.168.2.0 0.0.0.255
!
#위에서 생성한 crypto map을 공인망 Interface 에 적용
interface GigabitEthernet0/1
 crypto map IPSEC-A
!

 

2.4 ) C-BB# - IKEv1 Phase 1

crypto isakmp policy 10
 encr 3des
 hash md5
 authentication pre-share
 group 2
 lifetime 3600
!
crypto isakmp key cisco address 11.11.11.9
!

 

2.5 ) C-BB# - IKEv1 Phase 2

crypto ipsec transform-set IPSEC esp-des esp-md5-hmac 
!
crypto map IPSEC-A 10 ipsec-isakmp 
 set peer 11.11.11.9
 set transform-set IPSEC 
 match address 101
!

 

 

2.6 ) C-BB# - Interface 적용하기

access-list 101 permit ip 192.168.2.0 0.0.0.255 192.168.1.0 0.0.0.255
!
interface GigabitEthernet0/1
 crypto map IPSEC-A
!

 

3. IPSec 구축 환경에서 확인해보기

- ACL이 적용되어 데이터가 보호되는 대역인 192.168.1.0/24에서 Ping 보내었다.

- 막히는 것 없이 정상적으로 데이터가 전송되었다. 전송된 데이터를 살펴보기 전 Phase 별 상태를 점검한다.

 

3.1) IKEv1 Phase-1

# Phase-1 조건 확인
show crypto isakmp policy

# Phase-1 연결 확인
show crypto isakmp peer  

 

- Phase-1 설정 단계에서 입력한 암호화 / 인증 / hash 알고리즘의 정보를 확인할 수 있다.

- 또한, Lifetime까지 확인 가능하며, peer를 맺은 IP와 Port까지 확인할 수 있다.

 

 

3.2) IKEv1 Phase-2

# Phase-2 조건 확인
show crypto ipsec transform-set WORD

# Phase-2 통신 확인 (암/복호화 확인)
show crypto engine connection active

 

- Phase-2에 대한 정보를 확인할 수 있다. ESP 프로토콜을 터널 모드로 협상하여 IPSec 통신이 이루어진다.

- PC-1에서 보낸 ICMP 패킷의 4개가 암호화/복호화 되어 나간 것을 확인할 수 있다.

 

4. Wireshark에서 확인하기

- 이번에는 정말로 IPSec을 통하여 데이터가 암호화되는지 확인해보기 위해 Wireshark를 실행한다.

- 동일하게, PC-1에서 PC-2로의 Ping Test를 진행했다.

- 5개의 ICMP Packet을 보낸 후, Wireshark에서 확인한 결과는 다음과 같이 ESP 프로토콜을 통하여 암호화되었다.

- 송/수신한 데이터를 암호화 및 복호화가 정상적으로 이루어졌다.

 

- A-BB에서도 4+5=9로 테스트한 전체 패킷에 대한 암호화 및 복호화가 이루어졌다.

 

- 또한, PC-1에서 C-BB로의 Telnet 접속 결과, 데이터가 암호화되어서 초반에 진행했던 Telnet 접속의 결과 달리 암호화되어서 읽을 수 없다.

 

- ACL에서 지정하지 않은 IP대역에 대한 데이터 보호는 일어나지 않는 것 또한 확인되었다.


반응형