AS5510与华为云上深信服IPSEC-vpn对接诊断
Device 1
t ion
(rfjierdl License
Host Nsne:ASA5510- d>js
r
con. ctt
ASA VersLani 8. 2(1) Device Vptine:4Sd Oh 48s 53s
ASDM Version; f> 3(1) D&vice Type; ASA SaLO
Firewill Mode:Routed Context Mo
Total Flash: 2b6 MB ratal Uemarv:1024 MB
in terface EthernetO/O
n ameif outside
security-level 0
ip address 218.70.37.233 255.255.255.248
前提:接口IP、路由设置正常
一、思科设备配置:
路由设置:route outside 172.16.0.0 255.255.255.0 139.9.90.199
1?定义VPN两端的访问地址段
access-list outside_cryptomap extended permit ip host 192.168.168.243 172.16.0.0
255.255.255.0
access-list outside_cryptomap exte nded permit ip192.168.168.0 255.255.255.0 172.16.0.0 255.255.255.0
2、定义VPN数据包不进行NAT转换
access-list go-vpn exte nded permit ip 192.168.168.0 255.255.255.0 172.16.0.0 255.255.255.0
nat (inside) 0 access-list go-vpn ---
3、定义ipsec变化集
R1(c on fig)#crypto ipsec tran sform-set ESP-3DES-SHA esp-3des esp-sha-hmac
R1(cfg-crypto-tra ns)#exit
4、定义IKE策略:
R1(c on fig)#crypto isakmp policy 5
R1(config-isakmp)#encryption 3des--- 默认是DES 加密---
R1(config-isakmp)#hash sha /--- 默认是SHA-1---/
isp
SftSvpn PCS
R1(config-isakmp)#authentication pre-share
R1(config-isakmp)#group 2 /--- 默认是768 位的DH1---/
R1(config-isakmp)#lifetime 86400 /--- 默认是86400 秒---/
R1(config-isakmp)#exit
5、定义通道组及欲共享秘钥ASA5510(config)# tunnel-group 139.9.90.199 ipsec-attributes
ASA5510(config-tunnel-ipsec)# pre-shared-key wjm@12345 ASA5510(config-tunnel-ipsec)#
keepalive disable
6、配置加密图
R1(config)#
crypto map outside_map1 20 match outside_cryptomap
crypto map outside_map1 20 set pfs group1/--- 默认是group1---/
crypto map outside_map1 20 set peer 139.9.90.199
crypto map outside_map1 20 set transform-set ESP-3DES-SHA
7、加密图并应用在接口上
crypto map outside_map1 interface outside
检查:
show version
show ip address
show route outside
show access-list
show run nat
show run crypto
show run tunnel-group
show crypto isakmp sa
show crypto ipsec sa
排错:
1.调试完成后发现vpn 没有连接成功,可以利用debug 工具( debug crypto isakmp 、debug crypto ipsec) 进行排错。
2.跟踪程序:packet-tracer input inside icmp 192.168.168.243 8 0 172.16.0.10 detailed ASA5510# show crypto isakmp sa
Active SA: 1
Rekey SA: 0 (A tunnel will report 1 Active and 1 Rekey SA during rekey)
Total IKE SA: 1
1 IKE Peer: 139.9.90.199
Type : L2L Role : responder
Rekey : no State : MM_ACTIVE
ASA5510# show crypto ipsec sa
interface: outside
Crypto map tag: outside_map3, seq num: 20, local addr: 218.70.37.233
access-list outside_cryptomap permit ip 192.168.168.0 255.255.255.0
172.16.0.0 255.255.255.0
local ident (addr/mask/prot/port): (192.168.168.0/255.255.255.0/0/0) remote ident
(addr/mask/prot/port): (172.16.0.0/255.255.255.0/0/0) current_peer: 139.9.90.199
#pkts encaps: 1583, #pkts encrypt: 1583, #pkts digest: 1583
#pkts decaps: 1813, #pkts decrypt: 1813, #pkts verify: 1813
#pkts compressed: 0, #pkts decompressed: 0
#pkts not compressed: 1583, #pkts comp failed: 0, #pkts decomp failed: 0 #pre-frag
successes: 0, #pre-frag failures: 0, #fragments created: 0
#PMTUs sent: 0, #PMTUs rcvd: 0, #decapsulated frgs needing reassembly: 0 #send errors: 0, #recv errors: 0
local crypto endpt.: 218.70.37.233, remote crypto endpt.: 139.9.90.199
path mtu 1500, ipsec overhead 58, media mtu 1500 current outbound spi: F91F6A11
inbound esp sas:
spi: 0x2E211AC8 (773921480) transform: esp-3des esp-sha-hmac no compression in use settings ={L2L, Tunnel, } slot: 0, conn_id: 34729984, crypto-map: outside_map3 sa
timing: remaining key lifetime (sec): 27314 IV size: 8 bytes replay detection support: Y Anti replay bitmap:
0xFFFFFFFF 0xFFFFFFFF
outbound esp sas:
spi: 0xF91F6A11 (4179585553) transform: esp-3des esp-sha-hmac no compression in use settings ={L2L, Tunnel, }
slot: 0, conn_id: 34729984, crypto-map: outside_map3 sa timing: remaining key lifetime (sec): 27314 IV size: 8 bytes replay detection support: Y
Anti replay bitmap:
0x00000000 0x00000001
业努聚骁服务器
图:华为云vpc内网简图
1、先给华为云市场的vSSLVPN的安全组入方向先放通udp4500和udp500端口授权对象0.0.0.0/0
2、然后在vSSLVPN服务器的ipsecvpn设置---第三方对接中配置第一阶段第二阶段安全选项第一阶段第二阶段安全选项里面的参数信息需要和思科防火墙上的第一阶段第二阶段的参数信息一致
3、在华为云VPC内网的虚拟路由器配置回包路由,目标是思科内网网段下一跳是vSSLVPN 虚拟机内网IP地址
4、登陆华为云控制台管理页面找到VPC名称点击进去有个路由表点击配置
注:建议将vSSLVPN虚拟机的网卡检查源和目标功能关闭之前遇到过开启此功能数据不
通的情况
注:还要注意下华为云虚拟机的安全组入方向出方向的放通
vSSLVPN虚拟机入方向授权对象要放通思科内网网段和华为云VPC内网网段这2个网
段的数据来回包都要进入vSSLVPN协议端口可以选全部
云端业务服务器的虚拟机入方向授权对象要放通思科内网网段出方向华为云是默认全部放通的
以上是修改后正确的配置,下面未修改前发现的问题及排错。
问题1:■隧道已经成功建立,配置完成后发现两端网络无法ping通!
检查思路:
1.两端出口设备抓包,发送端是否发出报文,接收端是否又收到报文。
2?将VSSLVPN虚拟机的网卡检查源和目标功能关闭登陆华为云控制台找到虚拟机点击进去关掉
3检查vSSLVPN虚拟机的安全组和可172.16.0.10的虚拟机入方向是否放通了授权对象是
V 192.168.168.243的地址协议端口是所有的规则
1?下图为深信服vpn 设备上的抓包信息,icmp request 报文从vpn 设备已经发出。
> tcpljw -
二 vcnfjn Host 19Z.1&S ?2>&兰aad iorp -3ne
/1 zb€4/libsrypt -c -HO . 11 E nc-
izifcrma^LDn. available rEqu±E2d by tcpduz^s
tctmip : ve^tcse outpui; suppr^aaear use -v or -w ro* ? run proLocoi Ceccx^
listenin.? on link*type MM lP.aw IP J . capruf e 9?ze €5S3S bytes
*C Terminsted
M :OS:4fl.J?69C9
ipi
171.W.0.1&
132.1453. L?9 .243:
Echc request r xd 6017, ==q Lit,
length _■
^E :r.-::41,订砧14 W :
> 392.165.H9.243: ICMP echo
id
宓匚
152 F lengrh 6
OE :
ip?
> :32.1€3.159.243;
ICM? echo rc jac^t r id 5337, seq 153, Icpgrth 5
O?:CS :43.7T6B41 IP : 172.1?k D.lD
I CM? ecl)Q
id 6J37, seg 13缸 length
04iDai
ICMP echo
id £037, acq 15S r
length
2?然后在思科设备上抓包发现已经收到 icmp 请求报文,但是并没发出去,抓包中发现思科
设备response 报文是想走nat 出口出去,并没有走 vpn 隧道发出去。下图为思科设备上抓 包信息。
脣『峠心酬碎为IM 瓷血黑训]i-CP :*at 站
IlJlfft Li 'iHlJ W: a 世眉人ns 时. :: r. h
■ +li ?■ US』〕ii !l!i3SL
[Isum Server]
怪目制厦略:APfc 叮曲亚引朝 苛片貉己盟瓷应册渤闿対逢It 匸处耳£
[:】曲比三軒刊*刃卉帼斗:也曲却“甲::垃谢】£xo 小獰祁讥iftfm 己悴巨此‘ IM 卓I 悴址紅
咛】理甜却岡丄曲弭询吐快甌離L 』打里镇此律越
牲口脚策iJKAFdJ 烬曲脚讥prrrts*已把用倉!刚邛刈豹矗览匸绘址工
K [血鮎』Q]町P : g 氛:?:)iltr I'lttAW* ?
[ltuap_2>4r\*jjt1|^ L'HI
nLAT.^JJl 氓曲即L
排错思路::经上图分析是由于第二阶段 SA 协商失败导致无法建议
vpn 连接,那么IPSEC
勺工ut? Pa=! 口C L LN ALL B £P [fa -htiMLiaE F EE -L 闻m~lP ::bl
|fsptea^;A A lurl rfcwTnr I rSdTSiy ol Ifte ouiSoirt<1 2如血皿-尺
* V ■ta ?
3?那么到此应该问题出现在思科这端,而且并没有对相应的感兴趣数据流做
过一番检查,没理解清楚 NAT 排除的命令,误配置为nat (inside) 5 access-list outside_vpn 查询文档后,将以上命令修改为
n at (i nside) 0 access-list go-vp n 注释---
最后两端感兴趣流互访成功! ! !
问题2: |由于客户新加感兴趣流,
就新增了 ACL,发现深信服设备上新增的入栈规则与出栈规
则无法建立vpn 连接,下图为深信服设备上报错信息。
排错:
NAT 排除,
■ux^rfi
ftW
U ;SE :4£ BLg 胖
ItERalM
1 阿;SB
HLAXM
J9:P :18
BUX^-dl
W#
?L2龍
n :vr :^
■u 昭涨
1型苗:2E iLlX^Ri
囂;益:2fi
fflti
儡葩加
■LiXM
协商的两个段协商的有哪些信息呢?
IPSEC VPN建立分为2 步:Phase 1 & Phase 2
phase 1主要作用是vpn客户端和vpn接入点互相认证,以便确认对方的身份;phase2 主要作用是协商针对特定的流量采用什么样的加密传输策略以及传输数据的完整性校验策略。
phase 1分为3步(共6个数据包),举例说明:
(1)A-->B :我支持的针对认证的加密策略有AES,DES,3DES...hash方法有md5/sha,认证方法采用pre-sharekey,rsa加密,rs签名,Diffie-Hellman 使用Group1,2,或5,认证有效时间为x 秒等
B-->A:你提出的针对认证策略第N项我同意接受使用
(2)A<-->B 执行Diffie-Hellman 交换,产生公共密钥
⑶A<-->B 使用协商好的认证策略以及产生的会话密钥传输加密的pre-sharekey或者
证书等,互相进行认证。
对应的Cisco Router配置举例如下:
R1(c on fig)#crypto isakmp policy 10
R1(config-isakmp)# encr aes // 使用AES 加密
R1(co nfig-isakmp)# authe ntication pre-share // 使用预共享密钥验证
R1(config-isakmp)# group 2 // 使用DH group2
R1(co nfig-isakmp)#crypto isakmp key r1r2cisco address 172.30.2.2 // 将密钥与对端进行
绑定
phase 2分为2步(共3个数据包),举例说明:
(1)A-->B: 我支持的针对数据传输的策略有ah-md5-hmac,ah-sha-hmac,esp-
3des,esp-md5-hmac ,感兴趣的数据流为某个流,是否启用PFS等
B-->A:我们选用其中的某个策略来作为加密传输的策略
(2)A-->B: OK,开始用这个策略传输吧
R1(c on fig-isakmp-peer)#crypto ipsec tran sform-set ts esp-3des esp-sha-hmac // 定义
传输数据和完整性验证的策略
R1(cfg-crypto-tra ns)#crypto map cmap 10 ipsec-isakmp
R1(c on fig-crypto-map)# set peer 172.30.2.2 // 对端ip
R1(c on fig-crypto-map)# set tran sform-set ts // 将tran sfor-set 与ipsec 策略进行绑定R1(c on fig-crypto-map)# set pfs group2 // 启用完美向前
R1(c on fig-crypto-map)# match address loop // 匹配感兴趣流
R1(c on fig)#ip access-list exte nded loop
R1(co nfig-ext -n acl)# permit ip host 1.1.1.1 host 2.2.2.2 // 定义感兴趣流的访问控制列表感兴趣流思科定义的单个地址和一个范围段,深信服定义24 位掩码的一段C 类地址。难道是这个原因造成的? 将思科也修改为一段C 类地址后,两端协商成功,建立起了ipsec vpn 隧道。
排错:爭检测后,思科设备上定义的感兴趣流为:access-
list outside_cryptomap exte nded permit ip 深信服设备上定义的感兴趣流为:permit
255.255.255.0 172.16.0.0 255.255.255.0
以上地址172.16.0.0 255.255.255.0
ip 172.16.0.0 255.255.255.0 192.168.168.0 WIBS ??<
1叩叩辭in
1恥 1661 陡 250
由于对思科设备的不熟悉导致耗费了两天的时间才解决!