VPN

  • 가상 사설 망
  • 사설망의 보안성과 공중망의 저렴함의 장점을 동시에 갖춤
  • 터널링 기술(GRE)을 이용 + IPsec, 암호알고리즘 사용

GRE(Generic Routing Encapsulation)

  • 라우팅이 불가능한 패킷을 라우팅 가능한 패킷의 내부에 넣어서 전송할 때 사용
  • 인터넷을 사요하여 본사와 지사 사이의 네트워크를 구축
  • 본사와 지사 내부에서 네트워크를 구축할 때는 사설 네트워크 주소를 사용
  • 인터넷 라우터들은 이와 같은 사설 네트워크 주소를 가지고 라우팅 할 수 없음
  • 때문에 GRE 터널을 사용

GRE 터널링을 이용한 IPsec VPN

ISAKMP 정책

  • Authentication : pre-share
  • Encryption : Advanced Encryption Standard 256 bit key
  • Hash : sha
  • Lifetime : 36000 sec

IPsec 정책

  • 대상 트래픽 : 각 라우터의 시리얼 인터페이스를 통해 나가는 모든 트래픽
  • Encapsulation esp-3des
  • Encryption : esp-aes 256 bit keys
  • Hash : esp-md5-hmac

연결 방법

GRE

  1. Router1 > en
  2. Router1 # conf t
  3. Router1(config) # int tunnel channel-num(ex.12)
  4. Router1(config-if) # ip addr 가상 ip주소(ex.163.180.116.1) 서브넷마스크(ex.255.255.255.0)
  5. Router1(config-if) # tunnel source 출발물리 port번호(ex.s0/0/0)
  6. Router1(config-if) # tunnel destination 도착물리 port ip주소(ex.203.230.11.1)
  7. 라우팅
  8. Router2에도 적용
  9. Loopback을 만들어 Test(traceroute 등)

GRE 터널링을 이용한 IPsec VPN

  1. 각 interface 및 tunnel까지 ip 설정
  2. Router1(config) # license boot module c2900 technology-package securityk9
  3. yes
  4. Router1(config) # do write -> 저장
  5. Router1 # reload -> 재부팅
  6. Router1(config) # crypto isakmp policy 식별번호(ex.10) -> isakmp 정책 선언(이후는 정책 설정)
  7. Router1(config-isakmp) # encryption 암호화 알고리즘(ex.aes 256) -> 암호화 알고리즘 설정
  8. Router1(config-isakmp) # authentication 인증 방식(ex.pre-share)
  9. Router1(config-isakmp) # lifetime VPN 지속시간(s)(ex.36000)
  10. Router1(config-isakmp) # hash 해시 알고리즘(ex.sha)
  11. Router1(config) # crypto ipsec transform-set 정책이름(ex.strong) IPsec암호화 알고리즘(ex.esp-3des) 인증 알고리즘(ex.esp-md5-hmac) -> IPsec에서 사용할 정책 선언
  12. Router1(config) # crypto isakmp key 비밀번호(ex.cisco1234) address 상대ip(ex.0.0.0.0 0.0.0.0) -> 모든 IP를 인증 후 사용함
  13. Router1(config) # crypto map 정책이름(ex.vpn) 식별번호(ex.100) ipsec-isakmp -> 어떤 트래픽에서 ipsec을 사용할 건지 비밀지도 작성
  14. Router1(config-crypto-map) # set peer 물리도착지ip(ex. 203.230.9.2)
  15. Router1(config-crypto-map) # set transform-set IPsec정책이름(ex.strong)
  16. Router1(config-crypto-map) # match address group-num(ex.110)
  17. Router1(config) # access-list group-num(ex.110) permit | deny gre 출발ip 도착ip -> 정책을 적용시킬 범위 지정
  18. Router1(config) # int port번호(ex.s0/0/0)
  19. Router1(config-if) # crypto map 정책이름(ex.vpn)
  20. 라우팅
  21. 모든 router에 적용 후 저장
  22. packet tracer 재시작

※ 확인 방법
show crypto ipsec sa -> 인터페이스 별 vpn 정보 확인

show crypto ipsec transform-set -> IPSec 확인

show crypto isakmp policy -> isakmp 설정 확인

show crypto isakmp sa -> vpn 출발지 도착지 정보, 현재 상태

show crypto map -> vpn 연결정보, acl 트래픽 정의