/*auto readmore*/ /*auto readmore*/ /* an hien script*/ // an hien password /*an hien ma chuong trinh cong tru */ /*Scrollbox thanh cuon*/ /***Nhung CODE***/ /* dòng xanh dòng trắng */ /* https://cdnjs.com/libraries/prism lay thu vien, can vao ten file ma goi 1. copy link vao vi du:prism-python.min.js 2. ten ngon nua la python */ /*=== New posts ===*/ /*header slider*/ /*=== bai viet lien quan===*/ /*===tabcode===*/

Cisco, Configure Site to Site IPSec VPN Tunnel



Các kiến thức dùng trong bài lab: Default route, Nat overload, Access List, VPN

Yêu cầu:
1. Đấu dây và đặt IP như hình (qui ước đặt IP theo số của Router), cấu hình Default route, Nat overload, Accesslist đảm bảo:
  • R1 có thể ping thấy R2
  • Site 1:  chỉ duy nhất lớp mạng 10.1.1.0 có thể ping thông 8.8.8.8
  • Site 2:  chỉ duy nhất lớp mạng 20.1.1.0 có thể ping thông 8.8.8.8


Gợi ý cấu hình:
!R3

!

interface Ethernet0/1
 ip address 1.1.1.3 255.255.255.0
end
!
interface Ethernet0/2
 ip address 2.2.2.3 255.255.255.0
end
!
interface Loopback0
 ip address 8.8.8.8 255.255.255.255
end

!R1
!
interface Ethernet0/1
 ip address 1.1.1.1 255.255.255.0
end
interface Ethernet0/0
 ip address 10.1.1.1 255.255.255.0
end

! default route
ip route 0.0.0.0 0.0.0.0 1.1.1.3

!Nat overload
interface Ethernet0/0
ip nat inside
interface Ethernet0/1
 ip nat outside
ip nat inside source list To_Internet interface Ethernet0/1 overload

!Accesslist Extended
ip access-list extended To_Internet
 permit ip 10.1.1.0 0.0.0.255 any
 deny   ip any any

!R2
!
interface Ethernet0/2
 ip address 2.2.2.2 255.255.255.0
end
!
interface Ethernet0/0
 ip address 20.1.1.1 255.255.255.0
 end

! default route
ip route 0.0.0.0 0.0.0.0 2.2.2.3

!Nat overload
interface Ethernet0/0
 ip address 20.1.1.1 255.255.255.0
interface Ethernet0/2
 ip nat outside
ip nat inside source list To_Internet interface Ethernet0/2 overload

!Accesslist Extended
ip access-list extended To_Internet
 permit ip 20.1.1.0 0.0.0.255 any
 deny   ip any any

!Kiểm tra bằng ping từ PC
PC1> ping 2.2.2.2
84 bytes from 2.2.2.2 icmp_seq=1 ttl=253 time=2.168 ms
84 bytes from 2.2.2.2 icmp_seq=2 ttl=253 time=1.979 ms
84 bytes from 2.2.2.2 icmp_seq=3 ttl=253 time=2.075 ms
84 bytes from 2.2.2.2 icmp_seq=4 ttl=253 time=1.640 ms
84 bytes from 2.2.2.2 icmp_seq=5 ttl=253 time=1.381 ms

PC1> ping 8.8.8.8
84 bytes from 8.8.8.8 icmp_seq=1 ttl=254 time=1.391 ms
84 bytes from 8.8.8.8 icmp_seq=2 ttl=254 time=1.734 ms
84 bytes from 8.8.8.8 icmp_seq=3 ttl=254 time=1.562 ms
84 bytes from 8.8.8.8 icmp_seq=4 ttl=254 time=1.683 ms
84 bytes from 8.8.8.8 icmp_seq=5 ttl=254 time=1.224 ms

PC2> ping 1.1.1.1  
84 bytes from 1.1.1.1 icmp_seq=1 ttl=253 time=1.709 ms
84 bytes from 1.1.1.1 icmp_seq=2 ttl=253 time=1.389 ms
84 bytes from 1.1.1.1 icmp_seq=3 ttl=253 time=1.912 ms
84 bytes from 1.1.1.1 icmp_seq=4 ttl=253 time=1.801 ms
84 bytes from 1.1.1.1 icmp_seq=5 ttl=253 time=1.428 ms

PC2> ping 8.8.8.8
84 bytes from 8.8.8.8 icmp_seq=1 ttl=254 time=1.548 ms
84 bytes from 8.8.8.8 icmp_seq=2 ttl=254 time=1.850 ms
84 bytes from 8.8.8.8 icmp_seq=3 ttl=254 time=2.033 ms
84 bytes from 8.8.8.8 icmp_seq=4 ttl=254 time=1.472 ms
84 bytes from 8.8.8.8 icmp_seq=5 ttl=254 time=1.262 ms

2. Cấu hình VPN IPSec đảm bảo PC1 ping thấy PC2 bằng VPN
a. Cấu hình IPSec Phase 1: ISAKMP (IKE) - ISAKMP policy)
!R1
crypto isakmp policy 1
 encryption 3des
 hash md5
 authentication pre-share
 group 2
lifetime 86400
exit

crypto isakmp key cisco address 2.2.2.2

!R2
crypto isakmp policy 1
 encryption 3des
 hash md5
 authentication pre-share
 group 2
lifetime 86400
exit

crypto isakmp key cisco address 1.1.1.1

b. Cấu hình IPSec Phase 2 

Transform Set
!R1
crypto ipsec transform-set TS esp-3des esp-md5-hmac

!R2
crypto ipsec transform-set TS esp-3des esp-md5-hmac

- Tạo Access-List Extended chỉ dùng cho traffic của VPN
!R1
ip access-list extended VPN-Traffic
 permit ip 10.1.1.0 0.0.0.255 20.1.1.0 0.0.0.255
 deny   ip any any

!R2
ip access-list extended VPN-Traffic
 permit ip 20.1.1.0 0.0.0.255 10.1.1.0 0.0.0.255
 deny   ip any any

- Cấu hình Crypto Map
!R1
crypto map CMAP 10 ipsec-isakmp
 set peer 2.2.2.2
 set transform-set TS
 match address VPN-Traffic
! gặp thông báo là
% NOTE: This new crypto map will remain disabled until a peer and a valid access list have been configured.

!R2
crypto map CMAP 20 ipsec-isakmp
 set peer 1.1.1.1
 set transform-set TS
 match address VPN-Traffic

- Gán Cryptp Map vào cổng e0/1 (outgoing interface)
!R1
interface Ethernet0/1
 crypto map CMAP

!R2
interface Ethernet0/2
 crypto map CMAP

Đến đây đã cấu hình xong  IPSec VPN tuy nhiên vẫn không thiết lập session được. Hiện tại tồn tại 2 Access List:
+ To_Internet của NAT overload
+ VPN-Traffic của VPN
Trong trường hợp này access-list của NAT overload chạy trước nên khi đứng từ PC1 ping đến PC2 sẽ qua đường NAT overload (đổi IP từ 10.1.1.10 sang IP 1.1.1.1) để đến router R3, router R3 không có bảng route đến PC2 20.1.1.20 nên R3 không thể đến được PC2, vậy ta cần phải sửa access-list của NAT overload (access-list có tên To_Internet ) là: nếu dữ liệu từ PC1 đến PC2 thì không cần NAT và phải qua tunnel bắt buộc phải map vào access-list VPN-Traffic 

!Kiểm chứng
PC1> ping 20.1.1.20
*1.1.1.3 icmp_seq=1 ttl=254 time=1.694 ms (ICMP type:3, code:1, Destination host unreachable)
*1.1.1.3 icmp_seq=2 ttl=254 time=1.537 ms (ICMP type:3, code:1, Destination host unreachable)
*1.1.1.3 icmp_seq=3 ttl=254 time=1.552 ms (ICMP type:3, code:1, Destination host unreachable)
*1.1.1.3 icmp_seq=4 ttl=254 time=1.478 ms (ICMP type:3, code:1, Destination host unreachable)
*1.1.1.3 icmp_seq=5 ttl=254 time=1.636 ms (ICMP type:3, code:1, Destination host unreachable)

R1#show access-lists 
Extended IP access list To_Internet
    10 permit ip 10.1.1.0 0.0.0.255 any (5 matches)
    20 deny ip any any
Extended IP access list VPN-Traffic
    10 permit ip 10.1.1.0 0.0.0.255 20.1.1.0 0.0.0.255
    20 deny ip any any

R1#show crypto session 
Crypto session current status

Interface: Ethernet0/1
Session status: UP-IDLE
Peer: 2.2.2.2 port 500 
  IKEv1 SA: local 1.1.1.1/500 remote 2.2.2.2/500 Active 
  IPSEC FLOW: deny ip 0.0.0.0/0.0.0.0 0.0.0.0/0.0.0.0 
        Active SAs: 0, origin: crypto map
  IPSEC FLOW: permit ip 10.1.1.0/255.255.255.0 20.1.1.0/255.255.255.0 

        Active SAs: 0, origin: crypto map

!Phân tích trên wireshark


- Sửa lại Access list NAT overload (Exclude traffic của VPN ra khỏi NAT overload) phải đưa dòng này lên trên.
!R1
ip access-list extended To_Internet
5 deny   ip 10.1.1.0 0.0.0.255 20.1.1.0 0.0.0.255

!R2
ip access-list extended To_Internet
5 deny   ip 20.1.1.0 0.0.0.255 10.1.1.0 0.0.0.255

!Kiểm tra
PC1> ping 20.1.1.20
84 bytes from 20.1.1.20 icmp_seq=1 ttl=62 time=2.179 ms
84 bytes from 20.1.1.20 icmp_seq=2 ttl=62 time=2.592 ms
84 bytes from 20.1.1.20 icmp_seq=3 ttl=62 time=2.406 ms
84 bytes from 20.1.1.20 icmp_seq=4 ttl=62 time=2.624 ms
84 bytes from 20.1.1.20 icmp_seq=5 ttl=62 time=2.589 ms

R1#show access-lists 
Extended IP access list To_Internet
    5 deny ip 10.1.1.0 0.0.0.255 20.1.1.0 0.0.0.255 (5 matches)
    10 permit ip 10.1.1.0 0.0.0.255 any
    20 deny ip any any
Extended IP access list VPN-Traffic
    10 permit ip 10.1.1.0 0.0.0.255 20.1.1.0 0.0.0.255 (5 matches)
    20 deny ip any any

!Kiểm tra kết nối IPSec phase 1
R1#show crypto isakmp sa 
IPv4 Crypto ISAKMP SA
dst                  src             state                  conn-id status
2.2.2.2         1.1.1.1         QM_IDLE           1001 ACTIVE

!Kiểm tra kết nối IPSec phase 2
R1#show crypto ipsec sa

interface: Ethernet0/1
    Crypto map tag: CMAP, local addr 1.1.1.1

   protected vrf: (none)
   local  ident (addr/mask/prot/port): (10.1.1.0/255.255.255.0/0/0)
   remote ident (addr/mask/prot/port): (20.1.1.0/255.255.255.0/0/0)
   current_peer 2.2.2.2 port 500
     PERMIT, flags={origin_is_acl,}
    #pkts encaps: 615, #pkts encrypt: 615, #pkts digest: 615
    #pkts decaps: 586, #pkts decrypt: 586, #pkts verify: 586
    #pkts compressed: 0, #pkts decompressed: 0
    #pkts not compressed: 0, #pkts compr. failed: 0
    #pkts not decompressed: 0, #pkts decompress failed: 0
    #send errors 0, #recv errors 0

     local crypto endpt.: 1.1.1.1, remote crypto endpt.: 2.2.2.2
     path mtu 1500, ip mtu 1500, ip mtu idb Ethernet0/1
     current outbound spi: 0x31832B(3244843)
     PFS (Y/N): N, DH group: none

     inbound esp sas:
      spi: 0xE3E0F005(3823169541)
        transform: esp-3des esp-md5-hmac ,
        in use settings ={Tunnel, }
        conn id: 5, flow_id: SW:5, sibling_flags 80004040, crypto map: CMAP
        sa timing: remaining key lifetime (k/sec): (4189305/607)
        IV size: 8 bytes
        replay detection support: Y
        Status: ACTIVE(ACTIVE)

     inbound ah sas:

     inbound pcp sas:

     outbound esp sas:
      spi: 0x31832B(3244843)
        transform: esp-3des esp-md5-hmac ,
        in use settings ={Tunnel, }
        conn id: 6, flow_id: SW:6, sibling_flags 80004040, crypto map: CMAP
        sa timing: remaining key lifetime (k/sec): (4189305/607)
        IV size: 8 bytes
        replay detection support: Y
        Status: ACTIVE(ACTIVE)

     outbound ah sas:
     outbound pcp sas:

!Kiểm tra session IPSec hiện tại
R1#sh crypto session 
Crypto session current status

Interface: Ethernet0/1
Session status: UP-ACTIVE     
Peer: 2.2.2.2 port 500 
  IKEv1 SA: local 1.1.1.1/500 remote 2.2.2.2/500 Active 
  IPSEC FLOW: deny ip 0.0.0.0/0.0.0.0 0.0.0.0/0.0.0.0 
        Active SAs: 0, origin: crypto map
  IPSEC FLOW: permit ip 10.1.1.0/255.255.255.0 20.1.1.0/255.255.255.0 
        Active SAs: 2, origin: crypto map

!Phân tích trên wireshark
Ta chỉ thấy thiết lập peer 1.1.1.1 và 2.2.2.2 còn dữ liệu thì đã được mã hóa và sử dụng giao thức ESP như ta đã cấu hình ở phần Transform Set (crypto ipsec transform-set TS esp-3des esp-md5-hmac)

Xong

No comments:

Post a Comment

/*header slide*/