한 걸음 두 걸음
네트워크 Network ] VPN 설정 - 패킷트레이서 Packet Tracer 본문
실습목표
- 간단한 멀티 라우터 네트워크 설정
- IKE 프로토콜 기반의 VPN 설정
- 패킷 헤더 분석
1. Multi- Router 네트워크 환경 설정
간단하게 멀티 라우터 네트워크를 설정해줍니다.
각 PC IP설정, 라우터 IP설정을 해주어야 하는데, 2개 이상의 라우터이므로 멀티 라우팅 설정해줍니다.
번외
Multi- Router IP 주소 설정방법
네트워크 구성도는 다음과 같습니다. 라우터 설정부터 다 처음부터 해보면,
라우터 1번에 대해 왼쪽 포트 이렇게 커맨드를 작성하셔도 되고,
Router>
Router>en
Router#conf t
Enter configuration commands, one per line. End with CNTL/Z.
Router(config)#int gi0/0
Router(config-if)#ip add 192.168.1.254 255.255.255.0
Router(config-if)# no sh
라우터 1번에 대해 오른쪽 포트, 이렇게 창을 열어서 진행하셔도 좋습니다.
그렇게 3개의 라우터에 모두 IP를 설정해주면
맨 위에 있던 네트워크 구성도처럼 모두 초록불이 됩니다. 주황불은 시간 지나면 나아요~
각 PC에도 IP를 줍니다.
Static라우팅도 설정해줍니다.
왼쪽처럼 명령어로 하셔도 되고 환경 설정에서 추가해주셔도 됩니다. 경로가 몇 개 안되니 정적으로 라우팅설정을 해서 보다 효율적으로 가게 하겠습니다. 위와같이 라우터가 다수 존재하는 상황에서는 라우팅설정을 해주어야합니다. summerization해도 되는데 안해도 상관없습니다.
위는 멀티라우팅 방법인데 이를 참고해서 적용시키면 VPN실습을 위한 기본 세팅이 된 것입니다.
R1과 R3사이에 VPN설정을 해주겠습니다. 그러면 R1내의 모든 호스트, R3내의 모든 호스트에 적용되겠죠? 일부만 할 수 있지만 이번엔 전체에 VPN을 적용시켜보도록 하겠습니다.
2. IKE 프로토콜 기반의 VPN 설정
IKE 1단계 터널 매개변수 정의
-
정책 우선순위
Diffie-Hellman를 써서 암호화에 쓸 키를 자동으로 생성하도록 설정해줍니다.
Router(config)# crypto isakmp policy[정책 식별 번호]
형식입니다.Router> Router>enable Router#conf t Enter configuration commands, one per line. End with CNTL/Z. Router(config)#crypto isakmp policy 1 Router(config-isakmp)#
이 때
[정책 식별 번호]
는
정책의 우선 순위 레벨을 정의하기 위해 사용되며 고유해야 합니다.
1에서 10,000 사이의 숫자를 지정하며, 숫자가 높을수록 우선 순위가 높습니다.라우터 1에는 policy 1을, 라우터 3에는 policy 2를 설정해주었습니다.
- 암호화 알고리즘 지정
암호방식은 어떤 것을 쓸 것인지 지정해줍니다.des, 3des, aes 등의 암호방식이 있죠?
Router(config-isakmp)# encryption[암호화 알고리즘]
Router(config-isakmp)#encryption 3des
IKE 암호화 알고리즘은 다음과 같이 있습니다.
3DES: 168-bit 3DES-CBC암호화 알고리즘
AES128: 128-bit AES-CBC암호화 알고리즘
AES192: 192-bit AES-CBC암호화 알고리즘
AES256: 256-bit AES-CBC암호화 알고리즘
DES: 56-bit DES-CBC암호화 알고리즘
저는 R1과 R3에 모두 Router(config-isakmp)#encryption 3des로 3DES를 사용해주었습니다.
-
공개키정보를 주받아야하는데 제 3자에게 노출이 되지 않도록 해시함수를 이용합니다.(양쪽 동일한 해시사용)
Router(config-isakmp)# hash[해시 알고리즘]
여기서 사용하는 해시 알고리즘은 md5,sha ,sha1-96., sha2-256-128, sha2-384-192 등 다양한 알고리즘이 있습니다.두 라우터에 모두 sha알고리즘을 적용시켜주었습니다.
Router(config-isakmp)#hash sha
-
상대방이 보낸 메세지가 맞는지 확인하기 위해 인증 기법을 정해줍니다.
Router(config-isakmp)# authentication [인증 방식]
여기서 인증방식은 rsa-sig, rsa-encr,pre-share ,ecdsa-256 ,ecdsa-384 등이 있습니다.
pre-share는 상대방이 미리 정한 암호를 알고있는지 확인하는 방식입니다.(해시값을 만들 때 함께 넣어 HMAC으로 활용합니다.)
사실은 실제로 공인인증서를 통해서 암호를 나눠야하지만 간단하기 위해 pre-share를 사용해봤습니다.
rsa-sig는 RSA s서명입니다.
ecdsa-256는 ECDSA-256-bit 서명입니다.
ecdsa-384: ECDSA-384-bit 서명입니다.
Router(config-isakmp)#authentication pre-share
-
Diffie-Hellman 그룹 지정
Router(config-isakmp)# group[DH 그룹 번호]
이 때 DH그룹번호에 따라 사용되는 암호의 크기가 다릅니다. 암호의 크기가 클 수록 보안성은 좋아지지만, 계산하는데 시간이 더 걸려서 성능이 떨어지므로 적절한 것으로 그룹을 설정해야합니다.
1그룹은 768bit
2그룹은 1,024bit
5그룹은 1,536bit
이므로 R1, R3에 모두 2그룹으로 적용시켜주었습니다. -
보안 연계(SA) 수명 시간 지정
VPN을 한 번 설정하면 이는 얼마의 기간동안 유효하게 할 것인가 정합니다. -
시간이 지나면 다시 설정해주어야합니다.
Router(config-isakmp)# lifetime [VPN 지속시간(s)]
저는 24시간으로 해서 86400으로 설정해주었습니다.
Router(config-isakmp)#lifetime 86400
-
사전 공유 열쇠 지정(인증 기법을 pre-share로 선택한 경우)
상대 IP주소는 상대 라우터의 IP주소입니다.Router(config)# crypto isakmp key [비밀번호] address [상대 IP 주소]
여기서 비밀번호는 두 라우터 동일하게 설정해주었습니다.
Router1(config)# crypto isakmp key TestKey address 220.10.4.2
- 이제 R1 R2사이에 안전하게 정보를 교환할 수 있는 채널이 형성되었습니다.
IKE 2단계 터널 매개변수 정의
실제 데이터를 주고 받을 때 어떤 암호화를 하고 양 방향 같은 암호화방식을 사용할지 등은 2단계에서 합니다.
(평문을 암호문으로 바꿀 때 트랜스폼셋을 설정하듯 어떻게 암호화 할 것인지, 어떻게 인증할 것인지가 주입니다.)
-
환 집합 정의
서로 같은 걸로 해주었네요.Router(config)# crypto ipsec transform-set [정책 식별 이름] [IPsec 암호화 알고리즘] [인증 알고리즘]
이 때 두 라우터에 같은 알고리즘 esp-3des esp-sha를 적용시켜주었습니다
Router(config)# crypto ipsec transform-set Router1Transform esp-3des esp-sha
-
보안 대상 트래픽 접근 제어 목록 지정
양 쪽 라우터가 포함된 네트워크 내 호스트에 모두 VPN을 설정해줍니다. 일부만 해도 되지만 모두 해주겠습니다.Router1(config)# access-list 101 permit ip 220.10.1.0 0.0.0.255 220.10.5.0 0.0.0.255
-
비밀지도 작성
Router(config)# crypto map [정책 식별 이름] [정책 식별 번호] ipsec-isakmp
를 사용하며,
Router1(config)# crypto map Router1CryptoMap 10 ipsec-isakmp
처럼 활용하면 됩니다. 여기서 정책식별이름은 두 라우터 동일하게 10으로 설정해주었습니다.
이 비밀지도 작성은
Router(config-crypto-map)# set peer [상대 IP 주소] Router(config-crypto-map)# match address [접근 제어 목록] Router(config-crypto-map)# set transform-set [IPsec 정책 이름]
로 해주어야 합니다. 각 라우터 1과 3에 설정해줍니다.
마지막으로 인터페이스에 비밀지도 적용하기 위해서는
Router1(config)# int s0/0/0 Router1(config-if)# crypto map Router1CryptoMap
이런식으로 설정해줍니다. Router3는 Router3CryptoMap으로 해주세요.
이 때 두 라우터에 같은 알고리즘 esp-3des esp-sha을 적용시켜주었습니다.
이제 패킷의 헤더를 분석해보면 목적지 라우터까지 추가 헤더ESP가 붙어서 함께 갑니다.
'CSE > Network' 카테고리의 다른 글
보안 ] IPsec / VPN (0) | 2019.12.02 |
---|---|
네트워크 Network ] VPN / 컴퓨터 보안 내용! (0) | 2019.11.25 |
네트워크 Network ] PacketTracer 방화벽 ACI설정 (0) | 2019.11.18 |
WiFi / Wireless LAN (0) | 2019.11.14 |
네트워크 방화벽 / network firewall ] 응용게이트웨이 방화벽, 패킷 필터링 방화벽, 상태형 검사 방화벽, 회선 게이트웨이 방화벽 (0) | 2019.11.14 |