IPSec连接需要两个步骤:
建立管理链接 (IKE SA)
建立数据连接 (ipsec SA)
第一阶段
使用ISAKMP/IKE建立管理连接时分为主模式和积极模式(只有remote vpn和Easy vpn是积极模式的,其他都是用主模式来协商的)
主模式交换
主模式交换提供了身份保护机制,经过三个步骤,六个消息。两个消息协商策略;两个消息交换Diffie-Hellman的公共值和必要的辅助数据;两个消息验证Diffie-Hellman交换。
消息1:发送方向对等体发送一条包含一组或多组策略提议,在策略提议中包括5元组(加密算法,散列算法,DH,认证方法,IKE SA寿命)
消息2:接受方查看IKE策略消息,并尝试在本地寻找与之匹配的策略,找到后,则有一条消息去回应。
发起者会将它的所有策略发送给接受者,接受者则在自己的策略中寻找与之匹配的策略(对比顺序从优先级号小的到大的)(默认策略实际就是个模版没作用,如果认证只配置预共享的话,其他参数就会copy默认策略里的)
消息1,2交换后的结果:由于通信双方决定了一个特定的策略组后,它们以后的通信便必须根据它进行,所以这种形式的协商是两个IKE通信实体第一步所需要做的。
消息3和消息4,这2条消息,用于交换DH的公开信息和随机数。虽然名为密钥交换,但事实上交换的只是一些DH算法生成共享密钥所需要的基本材料信息。
两个对等体根据DH的公开信息都算出了双方相等的密值后,两端主机可以各自生成出完全一样的共享"主密钥",保护紧接其后的认证过程。
消息5和消息6用于双方彼此验证,这个过程是受上面协商的主密钥加密保护的,DH交换需要得到进一步认证,如果认证不成功,通信将无法继续下去."主密钥"结合在第一步中确定的协商算法,对通信实体和通信信道进行认证。在这一步中,整个待认证的实体载荷,包括实体类型、端口号和协议,均由前一步生成的"主密钥"提供机密性和完整性保证。
野蛮模式交换。
在该模式下,总共三个信息被交换
第一个信息由SA、nonce和身份组成。
第二个信息是,在验证发起方并接受SA后,应答方发送nonce 和身份信息给发起方。
第三个信息是,发起方验证应答方的身份以及进行被提议的信息的交换。
在该模式下,两个在第一次交换发送的身份信息是没有加密的。Aggressive 模式的优点是信息交换快速,但加密被节省了。
第二阶段
协商建立IPsec SA,为数据交换提供IPSec服务。第二阶段协商消息受第一阶段SA保护,任何没有第一阶段SA保护的消息将被拒收。
快速模式交换通过三条消息建立IPsec SA:
头两条消息协商IPsec SA的各项参数值,并生成IPsec 使用的密钥。包括使用哪种IPSec协议(AH或ESP)、使用哪种hash算法(D5或SHA)、是否要求加密,若是,选择加密算法(DES或3DES)。在上述三方面达成一致后,将建立起两个SA,分别用于入站和出站通信。
第二条消息还为响应方提供在场的证据;
第三条消息为发起方提供在场的证据。