4. IKE寿命,默认值为一天(86,400秒)
5. IKE认证方式,默认值为RSA公钥
你可能已经知道节点是需要与一个通用ISAKMP策略协商,以建立一个IPsec节点联系。所以根据你想要连接的设备,你可能需要多个ISAKMP策略。每一个ISAKMP策略被赋于一个唯一的1到10,000之间的优先级数。优先级数为1的策略被认为是最高优先级的策略。策略协商从策略数最接近于1的开始。通常的做法是从策略数为10的开始创建,这样做的话当你需要往生产环境的路由器中插入一个优先级更高的策略时,你才有位置可以用。
另一个关于ISAKMP策略优先级数的技巧与用于支持IPsec客户端的ISAKMP策略有关。支持IPsec客户端连接的ISAKMP策略有两个策略组件:ISAKMP策略和IKE模式配置策略。如果路由器准备支持IPsec网关和IPsec客户端之间的节点关系,这种支持“客户端”的ISAKMP策略应该有最低的优先级。这样就可以避免网关到网关请求用户名和密码信息的IKE协商。(在IOS的后续版本中,可以通过在一个预共享密钥定义末尾添加no-xauth来覆载)。现在,让我们继续创建一个策略:
outlan-rt02(config)#crypto isakmp policy 10
我们需要定义的第一个参数是加密算法。IOS支持两种加密算法:Data Encryption Algorithm (DEA) 和 Rijndael。Data Encryption Standard (DES) 和 Triple DES (3DES)标准是基于DEA的。DES和3DES是块分组密码,它们使用一个经过56位密钥加密的64位的块。这二者之间的区别是3DES会对每一个数据块运行三次加密过程,而DES只运行一次。
Advanced Encryption Standard (AES)是基于Rijndael算法的块分组密码。AES使用一个128位块大小,以及三个密钥大小选择:126位、192位或256位。DES和3DES是旧方法,但他们都是被各种Cisco路由器平台广泛支持的,不管是在路由器逻辑板还是通过使用一个加密适配器。在一个只使用一个软件加密引擎的路由器上使用3DES是非常消耗计算资源的,并且不容易升级到多通道。IOS的后续版本是支持AES的,其中也包括了基于硬件的加密选项。AES比3DES更安全且更加高效。在软件中有限的使用AES实现是可能实现的。通常的做法是使用DES或3DES,但如果可能,就使用AES-256。
outlan-rt02(config-isakmp)#encryption 3des
下一步是定义ISAKMP哈希算法。IOS支持两种哈希协议:消息摘要算法5(Message-Digest Algorithm 5,MD5)和安全哈希算法(Secure Hash Algorithm)。MD5是一个单向哈希算法,它生成一个128位的哈希。SHA-1是公认的比这两个算法更新的算法,而这两个算法也的确有些过时了。可以期待的是IOS的后续版本将支持SHA-2,这是一个更加安全的算法,它支持4种不同的哈希长度(224、256、384和512位)。
outlan-rt02(config-isakmp)#hash sha
下面我们来定义Diffie-Hellman (DH)使用的模数。原始的RFC定义值为2;DH组1使用一个768位的模数,DH组2使用一个1024位的模数。这个数值越大,密钥就更加随机,也就更加安全了。IOS支持组1、组2和组5的DH。DH组5使用一个1536位的模数。通常的做法是使用组2,因为组5并没有在所有的IOS版本中支持,并且它也不被Cisco VPN客户端支持。另外一个需要注意的是,模数越长,CPU用来生成密钥的时间也越长。在一些较低端的路由器上,使用一个较短的DH模数更好一些。
outlan-rt02(config-isakmp)#group 2
由于还没有SA算法参数,我们需要定义SA的寿命。对于SA寿命,我们从几个方面来考虑。当一个SA过期时,一个新的SA和新的SPI就被生成或被删除。SA寿命越短就越安全。此外,SA寿命越短,路由器崩溃后的恢复和重新加载速度就越快。如果一个节点停掉了,其它节点就会启动,在一些实例中,新的SA将等到之前的SA过期后才会建立。对于支持上百个通道的网关路由器是特别明显的现象。设置一个保持活跃的ISAKMP可以大大消除这个问题,但却往往被忽略。另一方面,更长的SA寿命需要ISAKMP处理负载更小。而在不同路由器平台上,ISAKMP协商通常不是一个太大的处理负担,这样一个短的SA寿命可以用在大量节点关系的路由器上。