Trong bài viết này mình sẽ hướng dẫn các bạn cấu hình VPN Client to Site trên router Cisco để Remote Access từ xa. Trong bài Lab này mình sử dụng phần mềm Packet Tracert để cấu hình.
VPN Client to Site là gì?
IPSec VPN Client to Site là 1 công nghệ cho phép người dùng có thể sử dụng các thiết bị Laptop, Máy tính để bàn, máy tính bảng… kết nối tới công ty, chi nhánh, văn phòng.. từ bất cứ đâu có internet, để sử dụng các tài nguyên chia sẻ, quản trị hay cấu hình thiết bị từ xa.
Yêu cầu
Mô hình mạng bao gồm 2 site HQ và BR. Mạng HQ bao gồm 2 VLAN 10 (10.0.0.0/24) và VLAN 20 (10.0.1.0/24). Mạng BR sử dụng VLAN1 172.16.1.0/24. Yêu cầu bài lap là cấu hình VPN Client to Site trên thiết bị định tuyến Router Cisco ISR4321 để client ở mạng BR có thể truy cập vào 2 VLAN của mạng HQ sử dụng IPSec và MD5. Client remote access sử dụng dải địa chỉ IP từ 192.1668.1.20 đến 192.168.1.50.
IP WAN của HQ là 100.0.0.100/24 và IP Wan của BR là 100.0.0.1/24 sử dụng giao thức NAT để truy cập internet. Trong bài viết này mình đã cấu hình trước đảm bảo 2 site đều ping được ra internet.
Kiểm tra kết nối từ site HQ đến IP wan của BR: từ Server 10.0.0.10 ping đến IP 100.0.0.1
C:>ping 100.0.0.1
Pinging 100.0.0.1 with 32 bytes of data:
Reply from 100.0.0.1: bytes=32 time<1ms ttl=”253″Reply from 100.0.0.1: bytes=32 time=1ms TTL=253
Reply from 100.0.0.1: bytes=32 time<1ms ttl=”253″Ping statistics for 100.0.0.1:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss), Approximate round trip times in milli-seconds: Minimum = 0ms, Maximum = 1ms, Average = 0ms
C:>
Kiểm tra kết nối từ site BR đến IP wan của HQ: từ Client 172.16.1.10 ping đến IP 100.0.0.100
C:>ping 100.0.0.100
Pinging 100.0.0.100 with 32 bytes of data: Reply from 100.0.0.100: bytes=32 time=2ms TTL=255 Reply from 100.0.0.100: bytes=32 time=1ms TTL=255 Reply from 100.0.0.100: bytes=32 time=3ms TTL=255 Reply from 100.0.0.100: bytes=32 time<1ms ttl=”255″>Ping statistics for 100.0.0.100: Packets: Sent = 4, Received = 4, Lost = 0 (0% loss), Approximate round trip times in milli-seconds: Minimum = 0ms, Maximum = 3ms, Average = 1ms
C:>
Các bước cấu hình VPN Client to Site
- Bước 1: Bật aaa new-model để tạo tài khoản VPN
- Bước 2: Khởi tạo ISAKMP Policy
- Bước 3: Tạo IP Local Pool để cấp IP cho VPN Client
- Bước 4: Tạo ISAKMP Key
- Bước 5: Tạo Crypto IPSec Transform Set
- Bước 6: Tạo Crypto Map
- Bước 7: Apply Crypto Map vào interface wan
Cấu hình VPN Client to Site trên Router Cisco
Bước 1: Bật aaa new-model và tạo user
Router#configure terminal HQ(config)#aaa new-model HQ(config)#aaa authentication login VPN-AUTHEN local HQ(config)#aaa authorization network VPN-AUTHOR local HQ(config)#username admin password Admin@123
Bước 2: Khởi tạo ISAKMP Policy
HQ(config)#crypto isakmp policy 10 HQ(config-isakmp)#encryption 3des HQ(config-isakmp)#hash md5 HQ(config-isakmp)#authentication pre-share HQ(config-isakmp)#group 2
Bước 3: Tạo IP Local Pool để cấp IP cho VPN Client
HQ(config)#ip local pool VPN-CLIENT 192.168.1.20 192.168.1.50
Bước 4: Tạo ISAKMP Key và gán pool vào
HQ(config)#crypto isakmp client configuration group cisco HQ(config-isakmp-group)#key Cisco@123 HQ(config-isakmp-group)#pool VPN-CLIENT
Bước 5: Tạo Crypto IPSec Transform Set
HQ(config)#crypto ipsec transform-set SET1 esp-3des esp-md5-hmac
Bước 6: Tạo Crypto Map và gán transform-set vào
HQ(config)#crypto dynamic-map MAP1 10 HQ(config-crypto-map)#set transform-set SET1 HQ(config-crypto-map)#reverse-route HQ(config-crypto-map)#exit HQ(config)#crypto map MAP1 client authentication list VPN-AUTHEN HQ(config)#crypto map MAP1 client configuration address respond HQ(config)#crypto map MAP1 isakmp authorization list VPN-AUTHOR HQ(config)#crypto map MAP1 10 ipsec-isakmp dynamic MAP1
Bước 7: Apply Crypto Map vào interface wan
HQ(config)#interface g0/0/1 HQ(config-if)#crypto map MAP1
Kết nối VPN từ BR và Kiểm tra
Từ Client 172.16.1.10 ở BR, mở VPN Configuration và thiết lập các thông số VPN:
Nhấn Connect, khi có thông báo VPN is Connected là chúng ta đã kết nối VPN thành công
Xem địa chỉ IP mà client nhận từ local pool
Ping thử từ Client 172.16.1.10 tới 2 Server 10.0.0.10 và 10.0.1.10 tại HQ
Kiểm tra trên Router bằng lệnh “show crypto isakmp sa” và “show crypto ipsec sa”
show crypto isakmp sa
HQ#show crypto isakmp sa
IPv4 Crypto ISAKMP SA dst src state conn-id slot status 100.0.0.1 100.0.0.100 QM_IDLE 1010 0 ACTIVE
IPv6 Crypto ISAKMP SA
HQ#
show crypto ipsec sa
HQ#show crypto ipsec sa
interface: GigabitEthernet0/0/1 Crypto map tag: map1, local addr 100.0.0.100 protected vrf: (none) local ident (addr/mask/prot/port): (0.0.0.0/0.0.0.0/0/0) remote ident (addr/mask/prot/port): (192.168.1.21/255.255.255.255/0/0) current_peer 100.0.0.1 port 500 PERMIT, flags={origin_is_acl,} #pkts encaps: 0, #pkts encrypt: 0, #pkts digest: 0 #pkts decaps: 0, #pkts decrypt: 0, #pkts verify: 0 #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.: 100.0.0.100, remote crypto endpt.:100.0.0.1 path mtu 1500, ip mtu 1500, ip mtu idb GigabitEthernet0/0/1 current outbound spi: 0x793A6AEB(2033871595) inbound esp sas: spi: 0x230401A3(587465123) transform: esp-3des esp-md5-hmac , in use settings ={Tunnel, } conn id: 2003, flow_id: FPGA:1, crypto map: map1 sa timing: remaining key lifetime (k/sec): (4525504/1008) IV size: 16 bytes replay detection support: N Status: ACTIVE inbound ah sas: inbound pcp sas: outbound esp sas: spi: 0x793A6AEB(2033871595) transform: esp-3des esp-md5-hmac , in use settings ={Tunnel, } conn id: 2004, flow_id: FPGA:1, crypto map: map1 sa timing: remaining key lifetime (k/sec): (4525504/1008) IV size: 16 bytes replay detection support: N Status: ACTIVE outbound ah sas: outbound pcp sas:
HQ#
Chúc các bạn thành công!