VPN
가상 사설망(영어: Virtual private network, VPN)은 공중 네트워크를 통해 한 회사나 몇몇 단체가 내용을 바깥 사람에게 드러내지 않고 통신할 목적으로 쓰이는 사설 통신망이다. 가상 사설망에서 메시지는 인터넷과 같은 공공망 위에서 표준 프로토콜을 써서 전달되거나, 가상 사설망 서비스 제공자와 고객이 서비스 수준 계약을 맺은 후 서비스 제공자의 사설망을 통해 전달된다.
멀리 떨어져 있는 네트워크들을 물리적으로 연결하는것이 아닌가상의 하나의 네트워크로 구축하는 기술입니다 즉 본사와 지사가 멀리 떨어져 있을때 케이블을 연결하여 내부 통신망을 구성하는것이 아닌 가상 사설망 [VPN]을 이용 안전하게 통신가능합니다
이들이 하나의 네트워크 구축을 위해 기존 전용선을 사용하는 방법에는 비용을 포함한 여러가지 한계를 가지며, 전용선을 이용해서 네트워크가 구성되었다고 하더라도 네트워크 운영을 자체적으로 하는 것과 새로운 기술들을 도입하는 것 역시 기업의 입장에서는 상당한 부담이 될 수 있다. 또한 기존의 공중 네트워크는 보안과 관련해서는 서비스를 제공하지 않기 때문에 중요한 문서나 데이터를 전달하기에는 부족한 점이 있었다. 이러한 복합적인 이유가 가상 사설망이 등장한 계기가 되었습니다
==================================================================
가상사설망 만들기
VPN을 만들어 주는방법중 하나를 소개해 드리면
GRE Tunneling을 이용한 VPN을 만들수있습니다
==================================================================
GRE over IPsec VPN
=가상 사설망을 만드는 방법중 하나입니다
→ GRE Tunneling 구간을 IPsec 암호화하여 안전하게 다른 네트워크 끼리 통신할때
안전하게 통신이 가능하다
※GRE Tunneling 만사용하여 통신할시 중간에서 패킷을 확인하면 모든패킷이 나오기 때문에
위험하다 그렇기 때문에 IPSec로 암호화하여 통신하는것이다
==================================================================
GRE over IPSec VPN
실습 토폴로지
==================================================================
※기본적인 통신은 구성되어 있어야 합니다
전구간 라우터 통신상태 확인
Vmware 연동하여 통신상태 확인
==================================================================
우선 GRE 터널을 이용해서 외부망과 내부망을 서로 연결해준다음
연결해준 터널을 IPSec로 암호화 하는 방식이다
VPN을 위한 GRE 터널 생성 방법
R1 config
conf t
int tun 0
tun sour se2/0
tunnel dest 192.168.200.2
ip add 192.168.250.1 255.255.255.0
exit
access 101 per ip any 192.168.3.0
route-map pbr1 permit
match ip add 101
set ip next-hop 192.168.250.2
int f0/0
ip poli route-ma pbr1
==================================================================
R3
conf t
int tun 0
tun sour se2/1
tunnel dest 192.168.100.1
ip add 192.168.250.2 255.255.255.0
exit
access 101 per ip any 192.168.1.0
route-map pbr1 permit
match ip add 101
set ip next-hop 192.168.250.1
int f0/0
ip poli route-ma pbr1
==================================================================
config 해설
터널 인터페이스를 생성하고
터널의 시작 인터페이스를 지정하고
터널의 목적지 IP를 설정한다
그후 터널 인터페이스의 IP를 지정
터널을 통과할 ACL 리스트를 생성한 다음
(출발지는 any 목적지는 외부네트워크로 나가는 패킷으로 설정했다)
라우트 맵을 생성한후 ACL을 적용시킨다
라우트 맵을 통과하는 다음 지점을 터널의 반대쪽 인터페이스의 IP를 설정
라우트 맵을 설정할 내부 인터페이스를 설정한다
==================================================================
IPSec 설정 방법
→ IPsec 설정은 1페이즈와 2페이즈로 구성되어 있다
R1config
1페이즈 [Configure ISAKMP 설정]
crypto isakmp policy 1
encryption 3des
hash sha
authentication pre-share
group 2
lifetime 86400
exit
crypto isakmp key firewallcx address 192.168.200.2
2페이즈 [IPSec 설정]
crypto ipsec transform-set TS esp-3des esp-sha-hmac
mode transport
crypto ipsec profile protect-gre
set security-association lifetime seconds 86400
set transform-set TS
interface tunnel 0
tunnel protection ipsec profile protect-gre
R3config
1페이즈 [Configure ISAKMP 설정]
crypto isakmp policy 1
encryption 3des
hash sha
authentication pre-share
group 2
lifetime 86400
exit
crypto isakmp key firewallcx address 192.168.100.1
2페이즈 [IPSec 설정]
crypto ipsec transform-set TS esp-3des esp-sha-hmac
mode transport
crypto ipsec profile protect-gre
set security-association lifetime seconds 86400
set transform-set TS
interface tunnel 0
tunnel protection ipsec profile protect-gre
==================================================================
config 해설
1페이즈 [Configure ISAKMP 설정]
ISAKMP 생성
des라는 알고리즘을 3번 이용 해서
해시 함수로 생성
psk 방식으로 인증
디피헬만으로 생성 [숫자가 높으면 복잡해진다]
ISAKMP의 키값을 firewallcx로 생성 다음 주소를 반대쪽 터널 인터페이스 주소 설정
2페이즈 [IPSec 설정]
트랜스폼 생성 [TS] 암호화 방법 해시으로 하는것
1대1 암호화 통신설정
ipsec 하나더 생성 [protect-gre]
시간 제한 [86400]
트랜스폼 [TS] 적용
터널인터페이스 0번에
만든 [protect-gre] 넣기
==================================================================
IKE 동작 과정
페이즈 1 ,2으로 구성
1은 메인 2는 퀵
페이즈 1에서는
IKE 협약과정 , 키생성을 진행하며
우선 암호 무결성 알고리즘 협상한뒤
키생성한뒤 디피 헬만방식으로 키를 교환한다
상호 인증방법을 진행한다
페이즈 2에서는
IPsec 통신을 위한 협약 과정을 진행한다
페이즈 1에서 만든것을 한번더 암호화 한다고 생각하면된다
암호, 무결성 알고리즘 협상을 진행한뒤
Session Key 생성
상호 인증을 진행한다
==================================================================
※ 상호인증방법은 PSK 이다
※ 1번째 설정 IKE SA 암호화 방법 설정 (양쪽장비에 같게 설정)
※ 2번째 설정 IPSec SA 설정 (양쪽장비에 같게 설정)
==================================================================
모든 설정을 마친후 외부 네트워크와 통신을 시도시
통신도 잘되는것을 확인할수있으며 또한 ESP로 암호화가 되어있어서
중간에 패킷분석이 불가능하다
이렇게 VPN 생성 및 통신상태를 확인해 보았습니다
=================================================================
'IT > 네트워크' 카테고리의 다른 글
다른 네트워크 스니핑하기 [GRE] (0) | 2017.04.11 |
---|---|
SSL Strip Attack (0) | 2017.04.07 |
SSL MiTM 공격 (1) | 2017.04.07 |
SNMP 취약점을 이용한 공격 (0) | 2017.04.07 |
SNMP (Simple Network Management Protocol) 네트워크 관리 프로토콜 사용방법 (0) | 2017.04.04 |