AC、AP间“飞鸽传书”之“金钟罩”——IPsec加密AC与AP间隧道典型配置
古人云,君王AC与地方知县AP互通有无,联络感情靠的是“飞鸽传书”,可书信内容往往得不到安全保障,尤其是某些情况下的内容一旦泄露势必“兹事体大”,而信函被民间“黑客”们窃取是江湖中常有的事情,有些已经成为传奇,为绿林人士津津称道。后来,一谋士建言,可采用“金钟罩”之IPsec加密方式,凿隐秘之隧道,可保君臣之信件安全,安朝廷之忧,添社稷之福。
一、君臣“联络图”
如图所示组网,Client和AP通过DHCP动态获取IP地址,要求:配置IPsec对AC和AP间的隧道进行加密保护。
二、“金钟罩”之心法
1、为了配置AP方的IPsec,需要在AC上通过AP预配置的方式下发IPsec配置到AP设备。
2、为了及时检测IKE对等体的存活状态,可以配置IKE DPD功能。
3、为了使IPsec生效,需要将IPsec策略应用在AP对应的VLAN接口下。
4、为了避免IPsec隧道一端安全网关出现问题时,造成IPsec流量黑洞现象,需要配置IPsec无效SPI恢复功能。
三、“金钟罩”之修炼注意事项
1、IKE peer配置的对端地址必须包含AP地址;
2、AP和AC的配置的预共享密钥需要保持一致;
3、AC上使用命令save wlan ap provision保存AP配置时,需要等待一段时间以保证AP能够将下发的配置成功写入存储介质。
4、配置AP的序列号时请确保该序列号与AP唯一对应,AP的序列号可以通过AP设备背面的标签获取或者在AP上通过命令行display device serial-number获取。
5.在配置IPsec加密隧道之前需要保证AP与AC之间已经建立隧道连接,并且处于运行状态。
6.AP预配置必须保存后手动重启才能生效。
7.安全协议只支持ESP协议。
8.安全协议对IP报文的封装形式只支持隧道模式。
9.ESP协议采用的认证算法只能用SHA1,ESP协议采用加密算法只能使用DES。
10.IPsec建立SA只支持ike v1(缺省),Ike第一阶段协商模式只能采用主动模式(缺省)。
11.由于由AC响应AP的协商请求,在配置使用ike协商方式的IPsec安全策略时,只能引用IPsec安全策略模板创建IPsec安全策略。
四、“金钟罩”之步骤推演
(1)配置AC的基本信息
# 创建VLAN 1及其对应的VLAN接口,并为该接口配置IP地址。AC将使用该接口的IP地址与AP建立LWAPP隧道。
<AC> system-view
[AC] vlan 1
[AC-vlan1] quit
[AC] interface vlan 1
[AC-Vlan-interface1] ip address 192.168.1.254 24
[AC-Vlan-interface1] quit
# 创建VLAN 200作为ESS接口的缺省VLAN和Client的业务VLAN,并配置VLAN 10接口的IP地址。
[AC] vlan 10
[AC-vlan10] quit
[AC] interface vlan 10
[AC-Vlan-interface10] ip address 192.168.10.254 24
[AC-Vlan-interface10] quit
# 配置DHCP地址池。其中地址池ap给AP分配192.168.1.0/24网段地址,地址池vlan10给client分配192.168.10.0/24网段地址。
[AC] dhcp server ip-pool ap
[AC-dhcp-pool-vlan1] network 192.168.1.0 24
[AC-dhcp-pool-vlan1] quit
[AC] dhcp server ip-pool sta
[AC-dhcp-pool-vlan10] network 192.168.10.0 24
[AC-dhcp-pool-vlan10] quit
# 启用DHCP服务。
[AC] dhcp enable
(2)配置无线服务
# 创建WLAN-ESS1接口。
[AC] interface wlan-ess 1
# 配置端口的链路类型为Hybrid。
[AC-WLAN-ESS1] port link-type hybrid
# 配置当前Hybrid端口的PVID为200,禁止VLAN 1通过并允许VLAN 200不带tag通过。
[AC-WLAN-ESS1] undo port hybrid vlan 1
[AC-WLAN-ESS1] port hybrid pvid vlan 10
[AC-WLAN-ESS1] port hybrid vlan 10 untagged
[AC-WLAN-ESS1] quit
# 创建clear类型的服务模板1。
[AC] wlan service-template 1 clear
# 配置当前服务模板的SSID为office。
[AC-wlan-st-1] ssid office
# 将WLAN-ESS1接口绑定到服务模板1。
[AC-wlan-st-1] bind wlan-ess 1
# 启用无线服务。
[AC-wlan-st-1] service-template enable
[AC-wlan-st-1] quit
(3)配置射频接口并绑定服务模板
# 创建AP模板,名称为ap1,型号名称选择WA2610-AGN,并配置序列号。
[AC] wlan ap ap1 model WA2610-AGN
[AC-wlan-ap-ap1] serial-id 0023-89c1-ec80
# 进入radio1射频视图。
[AC-wlan-ap-ap1] radio 1
#设置radio1接口的信道为11。
[AC-wlan-ap-ap1-radio-1] channel 11
# 在radio1下绑定服务模板1。
[AC-wlan-ap-ap1-radio-1] service-template 1
# 开启radio 1。
[AC-wlan-ap-ap1-radio-1] radio enable
[AC-wlan-ap-ap1-radio-1] quit
[AC-wlan-ap-ap1] quit
(4)配置IPsec
# 配置IKE心跳报文发送间隔为20s,超时为60s。
[AC] ike sa keepalive-timer interval 20
[AC] ike sa keepalive-timer timeout 60
# 配置IPsec无效SPI恢复功能。
[AC] ipsec invalid-spi-recovery enable
# 配置IPsec安全提议的名称为tran1。
[AC] ipsec transform-set tran1
# 配置ESP协议采用的认证算法为SHA-1,加密算法为aes-cbc-128。
[AC-ipsec-transform-set-tran1] esp authentication-algorithm sha1
[AC-ipsec-transform-set-tran1] esp encryption-algorithm aes-cbc-128
[AC-ipsec-transform-set-tran1] quit
# 创建IKE提议,并指定一个供IKE提议使用的加密算法为aes-cbs-128以及配置IKE阶段1密钥协商时所使用的DH密钥交换参数为dh group2。
[AC] ike proposal 1
[AC-ike-proposal-1] encryption-algorithm aes-cbc 128
[AC-ike-proposal-1] dh group2
[AC-ike-proposal-1] quit
# 创建IKE DPD,并采用其默认配置。
[AC] ike dpd dpd
[AC-ike-dpd-dpd] quit
# 创建IKE对等体peer1。
[AC] ike peer peer1
# 应用DPD。
[AC-ike-peer-peer1] dpd dpd
# 应用proposal。
[AC-ike-peer-peer1] proposal 1
# 配置预共享密钥为123456。
[AC-ike-peer-peer1] pre-shared-key simple 123456
# 配置对端安全网关IP地址为192.168.1.0~192.168.1.255。
[AC-ike-peer-peer1] remote-address 192.168.1.0 192.168.1.255
[AC-ike-peer-peer1] quit
# 创建IPsec策略模板pt。
[AC] ipsec policy-template pt 1
# 配置IPsec安全策略引用名字为tran1的IPsec安全提议。
[AC-ipsec-policy-template-pt-1] transform-set tran1
# 配置在IPsec安全策略中引用名字为peer1的IKE对等体。
[AC-ipsec-policy-template-pt-1] ike-peer peer1
[AC-ipsec-policy-template-pt-1] quit
# 引用策略模板pt创建名字为map,顺序号为1的一条IPsec安全策略。
[AC] ipsec policy map 1 isakmp template pt
# 在VLAN 1接口上应用名为map的IPsec策略。
[AC] interface vlan-interface 1
[AC-Vlan-interface1] ipsec policy map
[AC-Vlan-interface1] quit
(5)通过AP预配置功能下发IPsec的配置
# 进入AP预配置视图。
[AC] wlan ap ap1
[AC-wlan-ap-ap1] provision
# 以明文方式配置AP使用IPsec加密控制隧道。
[AC-wlan-ap-ap1-prvs] tunnel encryption ipsec pre-shared-key simple 123456
# 配置AP使用IPsec密钥加密数据隧道。
[AC-wlan-ap-ap1-prvs] data-tunnel encryption enable
# 将AP预配置信息保存到ap1的私有配置文件中。
[AC-wlan-ap-ap1-prvs] save wlan ap provision name ap1
[AC-wlan-ap-ap1-prvs] return
# 重启AP之后,AP会采用IPsec加密上线。
<AC>reset wlan ap name ap1
This command will reset only master connection AP.
Do you want to continue [Y/N]:y
五、“金钟罩”之效果展示
# 完成AP预配置,并且保存完手动重启后,AP的flash内会生成名为wlan_ap_cfg.wcfg的文件,可以在ap上用dir命令查看。
<WA2610-AGN>dir
Directory of flash:/
0 -rw- 6638592 Apr 26 2000 12:04:07 wa2600a_fit.bin
1 -rw- 1607 Apr 26 2000 12:35:34 wlan_ap_cfg.wcfg
13081 KB total (6594 KB free)
# 完成以上配置后,AC与AP间如果有控制报文与数据报文通过,将触发ike协商并且建立SA。可以通过display ipsec sa查看建立的SA信息。在ike成功建立SA后,AP与AC间的控制报文与数据报文将会被加密传输。
[AC]dis ipsec sa
===============================
Interface: Vlan-interface1
path MTU: 1500
===============================
-----------------------------
IPsec policy name: "pt"
sequence number: 1
acl version: None
mode: template
-----------------------------
connection id: 1
encapsulation mode: tunnel
perfect forward secrecy:
tunnel:
local address: 192.168.1.254
remote address: 192.168.1.1
flow:
sour addr: 192.168.1.254/255.255.255.255 port: 12223 protocol: UDP
dest addr: 192.168.1.1/255.255.255.255 port: 0 protocol: UDP
[inbound ESP SAs]
spi: 2741893509 (0xa36df985)
proposal: ESP-ENCRYPT-AES-128 ESP-AUTH-SHA1
sa duration (kilobytes/sec): 1843200/3600
sa remaining duration (kilobytes/sec): 1843142/2767
max received sequence-number: 362
anti-replay check enable: Y
anti-replay window size: 32
udp encapsulation used for nat traversal: N
[outbound ESP SAs]
spi: 910235906 (0x36411902)
proposal: ESP-ENCRYPT-AES-128 ESP-AUTH-SHA1
sa duration (kilobytes/sec): 1843200/3600
sa remaining duration (kilobytes/sec): 1843180/2767
max sent sequence-number: 363
udp encapsulation used for nat traversal: N
-----------------------------
IPsec policy name: "pt"
sequence number: 1
acl version: None
mode: template
-----------------------------
connection id: 2
encapsulation mode: tunnel
perfect forward secrecy:
tunnel:
local address: 192.168.1.254
remote address: 192.168.1.1
flow:
sour addr: 192.168.1.254/255.255.255.255 port: 12222 protocol: UDP
dest addr: 192.168.1.1/255.255.255.255 port: 0 protocol: UDP
[inbound ESP SAs]
spi: 3902322817 (0xe898b881)
proposal: ESP-ENCRYPT-AES-128 ESP-AUTH-SHA1
sa duration (kilobytes/sec): 1843200/3600
sa remaining duration (kilobytes/sec): 1843187/2768
max received sequence-number: 277
anti-replay check enable: Y
anti-replay window size: 32
udp encapsulation used for nat traversal: N
[outbound ESP SAs]
spi: 1562513845 (0x5d2211b5)
proposal: ESP-ENCRYPT-AES-128 ESP-AUTH-SHA1
sa duration (kilobytes/sec): 1843200/3600
sa remaining duration (kilobytes/sec): 1843200/2768
max sent sequence-number: 1
udp encapsulation used for nat traversal: N
# 使用命令display ipsec sa brief可查看存在的IPsec sa。
[AC]dis ipsec sa brief
total phase-2 IPv4 SAs: 4
Src Address Dst Address SPI Protocol Algorithm
-----------------------------------------------------------------------------
192.168.1.1 192.168.1.254 3902322817 ESP E:Rijndael/AES
A:HMAC-SHA1-96
192.168.1.254 192.168.1.1 910235906 ESP E:Rijndael/AES
A:HMAC-SHA1-96
192.168.1.1 192.168.1.254 2741893509 ESP E:Rijndael/AES
A:HMAC-SHA1-96
192.168.1.254 192.168.1.1 1562513845 ESP E:Rijndael/AES
A:HMAC-SHA1-96
-----------------------------------------------------------------------------
# 使用命令display wlan client查看无线客户端可以正常上线。
[AC] display wlan client
Total Number of Clients : 1
Client Information
SSID: office
--------------------------------------------------------------------------------
MAC Address User Name APID/RID IP Address VLAN
--------------------------------------------------------------------------------