理论
- IKEv2介绍:
- 定义在RFC4306 ,更新与 RFC 5996.
- 不兼容IKEv1,IKEv1不支持认证,IKEv2支持认证,EAP。
- 支持NAT穿越。
- IKEv2支持私密性、完整性、源认证。
- 工作在UDP 的 500 /4500端口。NAT-T用的是UDP4500端口。
- Cisco Flex 私有虚拟网 约等于IKEV2。
DH算法:离散对数问题,在数学上无解,保证信息交换的安全性。
- IKEV1第一阶段(main、Aggressive)的任务对应IKEV2的Initial Exchange
- IKEV1第二阶段(Quick mode)的任务对应IKEV2的ICREATECHILD_SA.
IKEv2主模式的协商过程
采用IKEv2协商安全联盟比IKEv1协商过程要简化的多。要建立一对IPSec SA,IKEv1需要经历两个阶段:“主模式+快速模式”或者“野蛮模式+快速模式”,前者至少需要交换9条消息,后者也至少需要6条消息。而IKEv2正常情况使用2次交换共4条消息就可以完成一对IPSec SA的建立,如果要求建立的IPSec SA大于一对时,每一对IPSec SA只需额外增加1次创建子SA交换,也就是2条消息就可以完成。
IKEv2定义了三种交换:初始交换(Initial Exchanges)、创建子SA交换(Create_Child_SA Exchange)以及通知交换(Informational Exchange)。
在IKEv2中将IKEv1中的主模式和野蛮模式换成了Inital Exchange,将快速模式阶段换成了CRATE_CHILD_SA.
初始交换:
正常情况下,IKEv2通过初始交换就可以完成第一对IPSec SA的协商建立。IKEv2初始交换对应IKEv1的第一阶段,初始交换包含两次交换四条消息。
消息①和②属于第一次交换(称为IKE_SA_INIT交换),以明文方式完成IKE SA的参数协商,包括协商加密和验证算法,交换临时随机数和DH交换。IKE_SA_INIT交换后生成一个共享密钥材料,通过这个共享密钥材料可以衍生出IPSec SA的所有密钥。相当于IKEv1的主模式的第1,3个包。
消息③和④属于第二次交换(称为IKE_AUTH交换),以加密方式完成身份认证、对前两条信息的认证和IPSec SA的参数协商。IKEv2支持RSA签名认证、预共享密钥认证以及扩展认证方法EAP(Extensible Authentication Protocol)。EAP认证是作为附加的IKE_AUTH交换在IKE中实现的,发起者通过在消息3中省去认证载荷来表明需要使用EAP认证。
IKEv1与IKEv2的对比:
配置案列
- Branch
- crypto ikev2 proposal qyt-proposal
- encryption 3des aes-cbc-256
- integrity sha256 sha512
- group 2 5 14
- !
- crypto ikev2 policy qyt-policy
- proposal qyt-proposal
- !
- crypto ikev2 keyring qyt-key
- peer ASA
- address 202.100.1.10
- pre-shared-key cisco
- !
- crypto ikev2 profile qyt-profile
- match identity remote address 202.100.1.10255.255.255.255
- identity local address 162.106.1.1
- authentication remote pre-share
- authentication local pre-share
- keyring local qyt-key
- !
- crypto ipsec transform-set qyt-trans1 esp-des esp-md5-hmac
- mode tunnel
- crypto ipsec transform-set qyt-trans2 esp-3des esp-sha256-hmac
- mode tunnel
- !
- crypto map qyt-map 10 ipsec-isakmp
- set peer 202.100.1.10
- set transform-set qyt-trans1 qyt-trans2
- set ikev2-profile qyt-profile
- match address 私有虚拟网
- !
- interface FastEthernet0/0
- ip address 162.106.1.1 255.255.255.0
- duplex full
- crypto map qyt-map
- !
- interface FastEthernet1/0
- ip address 172.16.1.1 255.255.255.0
- duplex full
- !
- ip forward-protocol nd
- !
- no ip http server
- no ip http secure-server
- ip route 0.0.0.0 0.0.0.0 162.106.1.254
- ip route 192.168.1.0 255.255.255.0 172.16.1.2
- !
- ip access-list extended 私有虚拟网
- permit ip 192.168.1.0 0.0.0.255 192.168.2.0 0.0.0.255
- ASA
- crypto ikev2 enable outside
- !
- crypto ikev2 policy 10
- encryption aes-256 3des
- integrity sha256 sha
- group 2 1
- prf sha256 sha
- lifetime seconds 86400
- !
- tunnel-group 162.106.1.1 type ipsec-l2l
- tunnel-group 162.106.1.1 ipsec-attributes
- ikev2 remote-authentication pre-shared-key cisco
- ikev2 local-authentication pre-shared-key cisco
- !
- crypto ipsec ikev2 ipsec-proposal qyt-trans
- protocol esp encryption 3des des
- protocol esp integrity sha-256 md5
- !
- access-list 私有虚拟网 extended permit ip 192.168.2.0 255.255.255.0 192.168.1.0 255.255.255.0
- !
- crypto map qyt-map 10 match address 私有虚拟网
- crypto map qyt-map 10 set peer 162.106.1.1
- crypto map qyt-map 10 set ikev2 ipsec-proposal qyt-trans
- crypto map qyt-map interface outside