背景:客户要求使用ASA与公司的SSG防火墙建立L2L VPN
难点:虽然对两种防火墙非常熟悉,但是还没有做过这两个防火墙互通的配置
但是客户可不会听你的解释,给你时间研究;只能硬着头皮上了,幸运的是ASA的配置权限也在我这,这样排错什么的就方便了。
ASA配置 :没有特别要说明的 和普通ASA与ASA建立L2L一样
access-list acl_l2l extended permit ip 10.10.1.0 255.255.255.0 host 172.16.1.1
access-list nonat extended permit ip 10.10.1.0 255.255.255.0 host 172.16.1.1
crypto ipsec transform-set myset esp-des esp-md5-hmac
crypto ipsec security-association lifetime seconds 28800
crypto ipsec security-association lifetime kilobytes 4608000
crypto map vpn 10 match address acl_l2l
crypto map vpn 10 set peer x.x.x.x
crypto map vpn 10 set transform-set myset
crypto map vpn 10 set security-association lifetime seconds 28800
crypto map vpn 10 set security-association lifetime kilobytes 4608000
crypto map vpn interface outside
isakmp enable outside
isakmp policy 10 authentication pre-share
isakmp policy 10 encryption des
isakmp policy 10 hash md5
isakmp policy 10 group 2
isakmp policy 10 lifetime 86400
tunnel-group x.x.x.x type ipsec-l2l
tunnel-group x.x.x.x ipsec-attributes
pre-shared-key *
*****************************************************************************
SSG配置与正常的ipsec vpn配置一样 没什么特殊的 首先定义gateway中的一阶段参数 其次定义第二阶段参数,图形化界面非常简单;不再赘述。本例中模式使用Main
配置完成后问题来了:
show cry isakmp sa
显示信息如下
IKE Peer: x.x.x.x
Type : L2L Role : initiator
Rekey : no State : MM_WAIT_MSG6
根据IKE协商状态的定义,MM_WAIT_MSG6表示PSK密钥不匹配,但是我能够确保预共享密钥是匹配的,又让我百思不得其解。反复查看了SSG的配置,灵光一闪,第一阶段ASA有个参数没有配置,修改后VPN就立即起来了。
这个命令就是isakmp identity address
因为在SSG上配置了使用对方地址作为标识,ASA上也必须这么配置,否则就会一直卡在MSG6.
ASA与SSG建立L2L VPN排错一例