例4-13,行5,确认ISAKMP SA协商采用RSA Encryption进行认证。例4-13的第8行显示,由于Router_B错误地使用了Router_A的解密密钥,而没有使用Router_A的加密密钥对IKE消息进行加密,导致IKE消息无法解密。例4-13(第19-40行)说明Router_A上的密钥错误导致了Router_B上IKE SA认证失败,原因与之前Router_A上相同。
example4 -13 RSA加密方式下IKE认证失败故障处理
1 Router_A #调试加密isakmpCrypto ISAKMP调试在3上!4 !5 *Feb 17 10:58:20.066: ISAKMP (0:1): SA is doing RSA encryption authentication using id type ID_IPV4_ADDR 6 !7 !8 *Feb 17 10:58:20.554: %CRYPTO-6-IKMP_CRYPT_FAILURE: IKE(连接id 1) unable to decrypt (w/RSA私钥)packet 9 !10 !11 *Feb 17 10:58:41.706: ISAKMP (0:1): retransmit phase 1 MM_SA_SETUP…12 *Feb 17 10:58:41.706: ISAKMP (0:1): incremental error counter on sa: retransmit phase 1 13 !14 !15 * 2月17 10:59:19.918:ISAKMP(0:1):删除SA原因“gen_IPsec_isakmp_delete但doi ISAKMP”状态(I) MM_SA_SETUP(同行200.0.0.2)输入队列0 16 * 2月17 10:59:19.918:ISAKMP(0:1):输入= IKE_MESG_INTERNAL IKE_PHASE1_DEL 17 * 2月17 10:59:19.918:ISAKMP(0:1):老状态= = IKE_I_MM3新IKE_DEST_SA 18 19 Router_B #调试加密isakmp加密ISAKMP调试在21上!22 !23 *Feb 17 10:01:10.930: ISAKMP:(0:1:SW:1):SA is doing RSA encryption authentication using id type ID_IPV4_ADDR 24 !25 !26 *Feb 17 10:01:21.658: ISAKMP:(0:1:SW:1): retransmit phase 1 MM_KEY_EXCH 27 *Feb 17 10:01:21.658: ISAKMP:(0:1:SW:1): sending packet to 200.1.1.1 my_port 500 peer_port 500 (R) MM_KEY_EXCH 28 !29日!30 *Feb 17 10:01:55.466: ISAKMP: quick mode timer expired.日志含义32 *Feb 17 10:01:55.466: ISAKMP:(0:1:SW:1):src 200.0.0.1 dst 200.0.0.2, SA is not authenticated 32 *Feb 17 10:01:55.466: ISAKMP:(0:1:SW:1):peer does not do paranoid keepalives。33 !34 ! 35 *Feb 17 10:01:55.466: ISAKMP:(0:1:SW:1):deleting SA reason "QM_TIMER expired" state (R) MM_KEY_EXCH (peer 200.0.0.1) 36 *Feb 17 10:01:55.466: ISAKMP:(0:1:SW:1):deleting SA reason "QM_TIMER expired" state (R) MM_KEY_EXCH (peer 200.1.1.1) 37 *Feb 17 10:01:55.466: ISAKMP: Unlocking IKE struct 0x65C405A8 for isadb_mark_sa_deleted(), count 0 38 *Feb 17 10:01:55.466: ISAKMP: Deleting peer node by peer_reap for 200.1.1.1: 65C405A8 39 *Feb 17 10:01:55.466: ISAKMP:(0:1:SW:1):Input = IKE_MESG_INTERNAL, IKE_PHASE1_DEL 40 *Feb 17 10:01:55.466: ISAKMP:(0:1:SW:1):Old State = IKE_R_MM4 New State = IKE_DEST_SA
Cisco IOS VPN终端可以被指示对某些对等点使用某些RSA公钥,这与标准PSK认证的功能类似。因此,每个VPN端点为正确的对等体使用正确的密钥是很重要的。再考虑一下Router_A的管理员选择从他们的loopback1(201.0.0.1)接口获取VPN隧道端点的情况。Router_B的管理员已经修复了example4 -11 ~ example4 -13中key不匹配的问题,并更新了他们的IPsec配置,使用Router_A的loopback地址作为对等体。但是,他们没有更新ISAKMP在使用Router_B的公钥/加密密钥验证IKE通道时应该使用的地址图4 - 4).因此,Router_B无法选择合适的公钥与Router_A进行IKE通道认证。再次导致IKE认证错误,最终导致ISAKMP SA协商超时。
RSA加密和ISAKMP对等体不匹配
例4-14中Router_A的RSA密钥配置图4 - 4.
例4-14 Router_A的RSA加密密钥对端与Router_B不匹配图4 - 4(Router_B配置举例4-15)
1 Router_A #显示加密密钥mypubkey rsa2 % Key pair was generated at: 10:56:03 UTC Feb 17 2005 3 Key name: Router_A.cisco.com 4 Usage: General Purpose Key 5 Key is not export .日志含义6关键数据:4886 305 c300d 06092 a86 f70d 01010105 00034 b00 30480241 00 bf6d28 71 ee1ff2 8 415 62年e4001 23日f4d08c dfeaa8 4 c0682a4 39 d66b5d DC275EAB C95DE5A4 1 c87700b 9 4 a6ab4f3 8 acffe4d 6 b409c93 6 bb3dae3 D7D13398 3 c48c7a1 B5020301 0001 10%密钥对生成:11:56:05 UTC时间2005年2月17日11个主要名称:Router_A.cisco.com.server 12个用法:加密密钥13不能导出密钥。14关键数据:15 307C300D 06092A86 4886F70D 01010105 00036B00 30680261 00A233B3 3A58DDB2 16 D578B1A4 0125E1CD 1594C9F2 24DACE5E 65A276C7 640E9A13 B8DC4EEC F332B8D8 17 80127FD6 07A579F6 A280DF7D 2ED2CA8B 3457F5DE 53DAB835 C2845EB6 42F89BB0 18 C7130F67 B10FD71E 30A1FB1E 812CA1A6 26F43DCA 7BDDA01D 65020301 0001 19 20 Router_A#显示加密密钥pubkey-chain rsa address 200.0.0.221密钥地址:200.0.0.2 22使用方法:通用密钥23来源:手动输入24数据:25 30819f30 0d06092a 864886f7 0d010101 05000381 8d003081 89028181 009f63bf 26 64df17df cd836ea2 fa556169 95a05572 fcf7f1e1 ba7dc493 18408ec0 f98b78be 27 28fae232 3132af97 ce73d4b5 07f10a86 cfd038f3 fbc44ff2 2c323420 d1430162 28 c026df34 dd6e4ab5 e3bb45f 1f184393 dd4c0a3c c9dad616 f876784b ec9a9af4 29 5f2d692f 238f3b82 09c4ad90 2569e1b6 9ad98833D6700467 a7880202 0d020301 0001
例4-15中Router_B的RSA密钥配置图4 - 4.注意,尽管在Router_A和Router_B上已经正确配置了公钥和私钥,但Router_B的加密密钥设置中并没有配置正确的Router_A的对等信息。例4-15第22-23行说明了这种对等体不匹配。
例4-15 Router_B的RSA加密密钥对端与Router_A不匹配图4 - 4(Router_A配置举例4-14)
1 Router_B #显示加密密钥mypubkey rsa2 % Key pair was generated at: 09:59:17 UTC Feb 17 2005 3 Key name: Router_B.cisco.com 4 Usage: General Purpose Key 5 Key is not export .日志含义6关键数据:7 30819f30 0d06092a 864886f7 0d010101 05000381 8d003081 89028181 009f63bf 8 64df17df cd836ea2 fa556169 95a05572 fcf7f1e1 ba7dc493 18408ec0 f98b78be 9 28fae232 3132af97 ce73d4b5 07f10a86 cfd038f3 fbc44ff2 2c323420 d1430162 10 c026df34 dd6e4ab5 e3bb45f 1f184393 dd4c0a3c c9dad616 f876784b ec9a9af4 11 5f2d692f 238f3b82 09c4ad90 2569e1b6 9ad98833D6700467 A7880202 0D020301 0001 12 %密钥对生成时间:10:59:18 UTC Feb 17 2005 13密钥名称:Router_B.cisco.com.server 14用途:加密密钥15密钥不可导出。16关键数据:17 307C300D 06092A86 4886F70D 01010105 00036B00 30680261 00CA138A 38268367 18 9FB2BDA8 a5c467b 06A0FA1C 7811BAA6 C6FA48A7 E3DE55D0 B6967E71 DF076209 19 1F3CCA1E A7F40179 B4013CC8 ADCB15DD FFDAFAC3 9210BEA7 894DEEDA 1BF59C4B 20 B0143E21 80559A4D 4F8A512E DB739E8B 576E61FD 650BDA6B 87020301 0001 21 22 Router_B#显示加密密钥pubkey-chain rsa address 200.0.0.123密钥地址:200.0.0.1 24用途:通用密钥25来源:手动输入26数据:27 305C300D 06092A86 4886F70D 01010105 00034B00 30480241 00BF6D28 71EE1FF2 28 415E4001 23F4D08C 62DFEAA8 4C0682A4 39D66B5D DC275EAB C95DE5A4 1C87700B 29 4A6AB4F3 8ACFFE4D 6B409C93 6BB3DAE3 D7D13398 3C48C7A1 B5020301 0001
当Router_B(例4-15,第22-23行)的配置更新为使用Router_A的公钥和Router_A新的对等信息(lo1=201.0.0.1)时,如例4-16所示,ISAKMP SA通过RSA加密协商成功。
例4-16更新Router_B的对端配置,确认ISAKMP SA
1 Router_B #sh运行2构建配置…3 crypto key pubkey-chain rsa 4 address -key 201.0.0.1 5 address 201.0.0.1 6 key-string 7 305C300D 06092A86 4886F70D 01010105 00034B00 30480241 00BF6D28 71EE1FF2 8 415E4001 23F4D08C 62DFEAA8 4C0682A4 39D66B5D DC275EAB C95DE5A4 1C87700B 9 4A6AB4F3 8ACFFE4D 6B409C93 6BB3DAE3 D7D13398 3C48C7A1 B5020301 0001 10 quit 11 12 Router_B#平13 !14 !15发送5,100字节的ICMP echo到202.1.1.1,超时时间为2秒:16源地址为202.2.2.1的报文17 .!!!!18成功率80%(4/5),往返min/avg/max = 40/43/44 ms 19 *Feb 17 11:21:41.570: % Crypto -5- session_status: Crypto tunnel is UPPeer 201.0.0.1:500 Id: 201.0.0.1 20显示加密isakmp sa21 dst src state conn-id slot 22 201.0.0.1 200.1.1.2 QM_IDLE 1 0 23 Router_B#显示密钥pubkey-chain rsa24编码:M -手动配置,C -从证书中提取25 26编码用法IP-Address/VRF Keyring Name 27 M General 201.0.0.1 default . 24
注意:在上面关于RSA加密的例子中,Router_A (512 bit-mod)和Router_B (1024 bit mod)使用了不匹配的密钥模。这不会导致IKE身份验证错误,但是在身份验证中提供的强度与在双方使用1024位密钥时不一样。
最后,需要注意的是,上面的配置使用IP地址(address -key)选择与对应的对等体使用的公钥。另外,管理员可以使用主机名而不是IP地址来标识对等体。使用主机名时,管理员必须验证主机名是否可以通过DNS解析为IP地址或手动使用ip主机[ip地址] [主机名命令。此外,必须指示每个使用ISAKMP标识主机名的对等体使用加密isakmp身份[主机名,因为默认使用与应用加密映射的物理接口相关联的IP地址。
RSA签名时IKE认证错误
正如我们在后面的第11章中所讨论的,当使用RSA签名时,身份验证的动态发生了巨大的变化。到目前为止,我们已经讨论了需要在加密端点之间直接交换密钥的IKE SA认证方法,包括IKE认证的IKE PSK和RSA Encrypted Nonce方法。现在我们将讨论IKE SA认证的RSA签名方法,即在阶段1协商过程中,使用集中的可信资源CA (Certificate Authority)对两个端点进行间接认证。因此,我们的重点将不是端点-端点认证和对等,而是探讨端点- ca操作引起的常见IKE认证问题:
验证CA并获取CA证书
向CA注册并获取公钥证书
我们将使用中的拓扑来检查每个进程的调试和诊断图4 - 5,因为路由器A和路由器B通过RSA签名从IOS_CAROOT获取IKE认证所需的证书。已确认Router_A和Router_B能够到达CA。
处理RSA签名时IKE认证错误
example4 -17给出了Router_A在图4 - 5.在本章后面的章节中,我们将在故障排除和使用RSA签名验证IKE SA验证时使用此配置。
example4 -17 Router_A的RSA签名配置(图4 - 5)
Router_A #显示加密ca证书证书状态:可用证书序列号:03证书用途:通用颁发者:cn=IOS_CAROOT主题:Name: Router_A.cisco.com IP地址:192.168.1.1序列号:01C2F27F serialNumber=1C2F27F+ipaddress=192.168.1.1+hostname=Router_A.cisco.com有效期日期:起始日期:10:12:45 UTC Feb 24 2005结束日期:10:12:45 UTC Feb 24 2006 renew date: 00:00:00 UTC Jan 1 1970关联Trustpoints: IOS_CAROOT CA证书状态:可用证书序列号:01证书使用方式:签名颁发者:cn=IOS_CAROOT主题:cn=IOS_CAROOT有效期日期:开始日期:09:06:11 UTC Feb 24 2005结束日期:09:06:11 UTC Feb 24 2008关联Trustpoints:IOS_CAROOT Router_A #显示加密密钥mypubkey rsa% Key pair was generated at: 10:11:30 UTC Feb 24 2005 Key name: Router_A.cisco.com Usage: General Purpose Key Key不可导出。关键数据:30819f30 0d06092a 864886f7 0d010101 05000381 8d003081 89028181 00af2fc9 1919ecf1 de24c37d 796658e2 2b186600 98eb5ce3 ae0e53fe b1f736ea ce417989 f3029e25 594b9bcb 30dd0a2d 799814b1 555071fe bfb081e1 80548f91 3021f997 0fbc0b62 4a6284a4 22175b89 4d5c00b2 4de6f657 f6ca00da e8629294 413487f6 6ab72baf 071f4c63 cd813c3a 8925b95d f3de265c ccfa3aa5 c38386da25020301 0001 % Key pair was generated at: 10:11:31 UTC Feb 24 2005 Key name: Router_A.cisco.com.server Usage: Encryption Key Key is exportable. Key Data: 307C300D 06092A86 4886F70D 01010105 00036B00 30680261 00C7CE18 CD11DBAE 6FE6999B 15E81063 998CD039 91677AAD 9E310C38 9CF10010 EE3BBD5C 574837E8 08098084 D1F09C7D 9143F22C 6684AAA5 9B518676 AB205A9B 2681B77A 24E69ABA 734AB29C 28D4A672 4C93B3B4 DE27CB77 FF0DBBF0 2A5ABF1F AF020301 0001 Router_A#显示密钥pubkey-chain rsa代码用途IP-Address/VRF Keyring Name C Signing default X.500 DN Name: cn=IOS_CAROOT C Signing 192.168.2.1/ default Router_B.cisco.com .com .com .com .com .com .com .com .com .com .com .com .com .com .com .com .com .com .com .com .com .com .com .com .com .com
example4 -18中Router_B的配置图4 - 5.在本章后面的章节中,我们将在故障排除和使用RSA签名验证IKE SA验证时使用此配置。