互联网秘钥交换协议(IKE)主要负责解决三个问题: 1、对建立IPSec的双方进行认证 2、通过秘钥交换,产生用于加密和HMAC的随机秘钥 3、协商协议参数(加密算法、散列算法、封装协议、封装模式、秘钥有效期等)
IKEv1
1、路由可达。即: 本地通讯点到达远端通讯点的路由 本地加密点到达本地通讯点的路由 本地加密点到达远端通讯点的路由 本地加密点到达远端加密点的路由 在两端加密点上定义KEv1一阶段策略; R2(config)#crypto isakmp enable //IOS系统默认开启,防火墙通常默认关闭 R2(config)#crypto isakmp policy 10/定义策路的优先级顺序为10 R2(config-isakmp)Hencryption 3des //定义KE数据包的加密算法为3des R2(config-isakmp)#hash md5//定义KE数据包完整性校验的hash算法为md5 R2(config-isakmp)#authentication pre-share//定义一阶段的认证方式为预共享密钥 R2(config-isakmp)group 21//定义DH组的交换强度
R2(config)#crypto isaknp key cisco address 0.0.0.0 //定义预共享秘钥,和对等体地址
R2(config)#ip access-list extended L2L permit ip 10.1.1.0 0.0.0.255 192.168.1.0 0.0.0.255 //定义感兴趣流
R2(config)#crypto ipsec transform-set IPSEC esp-3des esp-sha-hmac //定义IPSec转换集,决定第二阶段协商的参数 R2(cfg-crypto-trans)#mode tunnel
第一阶段和第二阶段汇总策略 R2(config)#crypto map CISCO 10 ipsec-isakmp //将 ipsec和iKE组合映射 %NOTE: This new crypto map will remain disabled until a peer and a valid access list have been configured. R2(config-crypto-map)set peer 61.128.1.2//指定对等体地址 R2(config-crypto-map)#set transform-set IPSEC//指定定义好的转换集 R2(config-crypto-map)#match address L2L//指定感兴趣流 R2(config)#interface Ethernet0/1 //接口调用IPSec策略 crypto map CISCO EK协商之后的结构成为安全关联SA: IKE SA 维护IKE协议流量的安全防护; IPSec SA维护实际业务流量的安全防护。
IKEv2IKEv2同样支持数据的私密性、完整性、源认证性; 与IKEv1不兼容; 相比之下IKEv2支持EAP,可以借助认证服务器对手机、PC等终端进行身份认证,以实现远程用户接入; 1、路由可达。即: 本地通讯点到达远端通讯点的路由 本地加密点到达本地通讯点的路由 本地加密点到达远端通讯点的路由 本地加密点到达远端加密点的路由 在两端加密点上定义IKEv2提案和策略; R2(config)#crypto ikev2 proposal CISCO //定义提案 IKEv2 proposal MUST have atleast an encryption algorithm, an integrity algorithm and adh group configured R2(config-ikev2-proposal)# encryption 3des aes-cbc-256 //加密算法 R2(config-ikev2-proposal)# integrity shal //完整性校验方法 R2(config-ikev2-proposal)# group 2 //DH强度
R2(config)#crypto ikev2 policy CISCO //策略调用提案 IKEv2 policy MUST have atleast one complete proposal attached R2(config-ikev2-policy)#proposal CISCO
定义IKEv2秘钥链 R2(config)#crypto ikev2 keyring V2KEY //秘钥名字 R2(config-ikev2-keyring)#peer R4 //对等体名称 R2(config-ikev2-keyring-peer)#address 61.128.1.2 //对等体地址 R2(config-ikev2-keyring-peer)#pre-shared-key CISCO //预共享秘钥
在两端加密点上定义IKEv2策略 R2( config)#crypto ikev2 profile v2_PROFILE //定义名称 IKEV2 profile MUST have: 1. A local and a remote authentication method. 2.A match identity or a match certificate or match any statenent. R2(config-ikev2-profile)#match identity remote address 61.128.1.2 255.255.255.255 //远端地址 R2(config-ikev2-profile)#identity local address 202.100.1.2 //本地地址 R2(config-ikev2-profile)#authentication remote pre-share //远端认证方法为预共享秘钥 R2(config-ikev2-profile)#authentication local pre-share //本地认证方法为预共享秘钥 R2(config-ikev2-profile)#keyring local V2KEY //指定本地用于认证的秘钥链
R2(config)#ip access-list extended L2L permit ip 10.1.1.0 0.0.0.255 192.168.1.0 0.0.0.255 //定义感兴趣流
R2(config)#crypto ipsec transform-set IPSEC esp-3des esp-sha-hmac //定义IPSec转换集,决定第二阶段协商的参数 R2(cfg-crypto-trans)#mode tunnel
在两端加密点上定义crypto map; R2(config)#tcrypto map IKEv2_L2L 10 ipsec-isakmp % NOTE: This new crypto map will remain disabled until a peerand a valid access list have been configured. R2(config-crypto-map)# set peer 61.128.1.2 //对等体地址 R2(config-crypto-map)# set transform-set IPSEC //指定转换集名字 R2(config-crypto-map)# set ikev2-profile V2_PROFILE //指定 ikev2 profile名字 R2(config-crypto-map)# match address L2L //指定感兴趣流
R2(config)#interface Ethernet0/1 //接口调用IPSec策略 crypto map IKEv2_L2L
IPSec LAN TO LANIPSec 分为隧道模式和传输模式,在点到点采用隧道模式。 定义虚拟隧道接口,其作用在于定义IPSec的加密点对等体,以及自动感知感兴趣流: R2#configure terminal R2(config)#interface tunnel 0 R2(config-if)#ip address 172.16.1.1 255.255.255.252 R2(config-if)itunnel source 202.100.1.2 R2(config-if)#tunnel destination 61.128.1.2 R2(config-if)#tunnel mode ipsec ipv4 //与之前掌握的GRE隧道不同,这个隧道是专门为IPv4环境下的IPSec服务的
定义KE一阶段和二阶段策略,注意 IPSec依然使用隧道模式; R2(config)#crypto isakmp policy 10 R2(config-isakmp)# encr 3des R2(config-isakmp)# hash md5 R2(config-isakmp)# authentication pre-share R2(config-isakmp)# group 2
R2(config)#crypto isakmp key cisco address 0.0.0.0
R2(config)#crypto ipsec transform-set IPSEC esp-3des esp-sha-hmac R2(cfg-crypto-trans)# mode tunnel
定义IPSec profile,调用IPSec转换集,之后能够看到隧道接口up R2(config)#crypto ipsec profile SVTI R2(ipsec-profile)#set transform-set IPSEC
在隧道接口下调用IPSec方案; R2(config)#interface tunnel 0 R2(config-if)tunnel protection ipsec profile SVTI *Jun 1208:16:15.590:%CRYPTO-6-ISAKMP_ON_OFF: ISAKMP is ON
在加密点上为去往远端私有网络部署静态路由,打通私有网络,当然也可以选择使用动态路由协议; R2(config)#ip route 192.168.1.0 255.255.255.0 tunnel 0
|