陈坚浩:IPSec知识整理:配置参数(端口UDP4500与UDP500)(中间有NAT与没有NAT的区别)、PFS、预共享密钥
陈坚浩:IPSec知识整理:配置参数(端口UDP4500与UDP500)(中间有NAT与没有NAT的区别)、PFS、预共享密钥
IPSec安全联盟SA
IPSec安全联盟简称IPSec SA,由一个三元组来唯一标识。
这个三元组包括安全参数索引SPI(Security Parameter Index)、目的IP地址和使用的安全协议号(AH或ESP)。
其中,SPI是为唯一标识SA而生成的一个32位比特的数值,它被封装在AH和ESP头中。
IPSec SA是单向的逻辑连接,通常成对建立(Inbound和Outbound)。因此两个IPSec对等体之间的双向通信,最少需要建立一对IPSec SA形成一个安全互通的IPSec隧道,分别对两个方向的数据流进行安全保护。
另外,IPSec SA的个数还与安全协议相关。
如果只使用AH或ESP来保护两个对等体之间的流量,则对等体之间就有两个SA,每个方向上一个。如果对等体同时使用了AH和ESP,那么对等体之间就需要四个SA,每个方向上两个,分别对应AH和ESP。
建立IPSec SA有两种方式:手工方式和IKE方式。
安全协议:IPSec使用认证头AH(Authentication Header)和封装安全载荷ESP(Encapsulating Security Payload)两种IP传输层协议来提供认证或加密等安全服务。
IPSec提供了两种安全机制:加密和验证。
加密机制保证数据的机密性,防止数据在传输过程中被窃听;
验证机制能保证数据真实可靠,防止数据在传输过程中被仿冒和篡改。
加密:
用于加密和解密的对称密钥可以手工配置,也可以通过IKE协议自动协商生成。
常用的对称加密算法包括:数据加密标准DES(Data Encryption Standard)、3DES(Triple Data Encryption Standard)、先进加密标准AES(Advanced Encryption Standard)国密算法(SM4)。其中,DES和3DES算法安全性低,存在安全风险,不推荐使用。
验证:
同加密一样,用于验证的对称密钥也可以手工配置,或者通过IKE协议自动协商生成。
常用的验证算法包括:消息摘要MD5(Message Digest 5)、安全散列算法SHA1(Secure Hash Algorithm 1)、SHA2、国密算法SM3(Senior Middle 3)。其中,MD5、SHA1算法安全性低,存在安全风险,不推荐使用。
封装模式:(传输模式、和隧道模式)
指将AH或ESP相关的字段插入到原始IP报文中,以实现对报文的认证和加密,封装模式有传输模式和隧道模式两种。
传输模式:一般用于终端与网关设备建立隧道。
隧道模式:一般用于网关设备之间建立隧道。
密钥交换:
(1)带外共享密钥 在发送、接收设备上手工配置静态的加密、验证密钥。双方通过带外共享的方式(例如通过电话或邮件方式)保证密钥一致性。这种方式的缺点是安全性低,可扩展性差,在点到多点组网中配置密钥的工作量成倍增加。另外,为提升网络安全性需要周期性修改密钥,这种方式下也很难实施。
(2)使用一个安全的密钥分发协议 通过IKE协议自动协商密钥。IKE采用DH(Diffie-Hellman)算法在不安全的网络上安全地分发密钥。这种方式配置简单,可扩展性好,特别是在大型动态的网络环境下此优点更加突出。同时,通信双方通过交换密钥交换材料来计算共享的密钥,即使第三方截获了双方用于计算密钥的所有交换数据,也无法计算出真正的密钥,这样极大地提高了安全性。
因特网密钥交换IKE(Internet Key Exchange)协议建立在Internet安全联盟和密钥管理协议ISAKMP定义的框架上,是基于UDP(User Datagram Protocol)的应用层协议。它为IPSec提供了自动协商密钥、建立IPSec安全联盟的服务,能够简化IPSec的配置和维护工作。
IKE具有一套自保护机制,可以在网络上安全地认证身份、分发密钥、建立IPSec SA。
IKE安全机制
IKE具有一套自保护机制,可以在网络上安全地认证身份、分发密钥、建立IPSec SA:
(1)身份认证 (包括预共享密钥PSK)
身份认证确认通信双方的身份(对等体的IP地址或名称),包括预共享密钥PSK(pre-shared key)认证、数字证书RSA(rsa-signature)认证和数字信封认证。 在预共享密钥认证中,通信双方采用共享的密钥对报文进行Hash计算,判断双方的计算结果是否相同。如果相同,则认证通过;否则认证失败。
当有1个对等体对应多个对等体时,需要为每个对等体配置预共享的密钥。该方法在小型网络中容易建立,但安全性较低。 在数字证书认证中,通信双方使用CA证书进行数字证书合法性验证,双方各有自己的公钥(网络上传输)和私钥(自己持有)。发送方对原始报文进行Hash计算,并用自己的私钥对报文计算结果进行加密,生成数字签名。接收方使用发送方的公钥对数字签名进行解密,并对报文进行Hash计算,判断计算结果与解密后的结果是否相同。如果相同,则认证通过;否则认证失败。
使用数字证书安全性高,但需要CA来颁发数字证书,适合在大型网络中使用。 在数字信封认证中,发送方首先随机产生一个对称密钥,使用接收方的公钥对此对称密钥进行加密(被公钥加密的对称密钥称为数字信封),发送方用对称密钥加密报文,同时用自己的私钥生成数字签名。接收方用自己的私钥解密数字信封得到对称密钥,再用对称密钥解密报文,同时根据发送方的公钥对数字签名进行解密,验证发送方的数字签名是否正确。如果正确,则认证通过;否则认证失败。
数字信封认证用于设备需要符合国家密码管理局要求时使用,此认证方法只能在IKEv1的主模式协商过程中支持。
IKE支持的认证算法有:MD5、SHA1、SHA2-256、SHA2-384、SHA2-512、SM3。
(3)身份保护
身份数据在密钥产生之后加密传送,实现了对身份数据的保护。
IKE支持的加密算法有:DES、3DES、AES-128、AES-192、AES-256和SM4。
(3)DH DH是一种公共密钥交换方法,它用于产生密钥材料,并通过ISAKMP消息在发送和接收设备之间进行密钥材料交换。然后,两端设备各自计算出完全相同的对称密钥。该对称密钥用于计算加密和验证的密钥。在任何时候,通信双方都不交换真正的密钥。DH密钥交换是IKE的精髓所在。
(4)PFS
完善的前向安全性PFS(Perfect Forward Secrecy)通过执行一次额外的DH交换,确保即使IKE SA中使用的密钥被泄露,IPSec SA中使用的密钥也不会受到损害。
IKE协议分IKEv1和IKEv2两个版本。
IKEv1协商安全联盟的过程(主模式、野蛮模式)
主模式:使用主模式协商,更安全。
野蛮模式:使用野蛮模式协商,理快速速。
采用IKEv1协商安全联盟主要分为两个阶段:第一阶段,通信双方协商和建立IKE协议本身使用的安全通道,即建立一个IKE SA;第二阶段,利用第一阶段已通过认证和安全保护的安全通道,建立一对用于数据安全传输的IPSec安全联盟。
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)。
建议:
MD5和SHA1认证算法不安全,建议使用SHA2-256、SHA2-384、SHA2-512、SM3算法。
DES和3DES加密算法不安全,建议使用AES或SM算法。
总结
华为USG防火墙:建立ipsec vpn(对等体中间有NAT)的安全策略:
放行UDP500与UDP4500、两个地方的内网间的流量、不需要另外放行ESP服务
http://www.zh-cjh.com/wangluoanquan/3494.html
除了第一次交互(也就是前两个包)使用500端口之外。之后的所以报文抓包显示是ESP,但都使用4500端口进行通信。
华为USG防火墙:建立ipsec vpn(对等体直接,中间没有NAT)的安全策略:
放行UDP500与ESP服务、两个地方的内网间的流量、不需要另外放行UDP4500
http://www.zh-cjh.com/wangluoanquan/3493.html
在IPSec VPN隧道协商时,对UDP目的端口号为500或者4500的报文都认为是IKE协商报文。此外,还需要注意不要限制源端口号。
一般来说对接IKE报文的源端口和目的端口都是500.
如果中间经过nat设备,源端口还会变化的。也有的客户端也可能发送的报文源端口不是500。
UDP 500 是ISAKMP互联网安全关联和钥匙管理协议的服务端口
(UDP 500 是Internet Security Association and Key Management Protocol (ISAKMP)端口号)
UDP 4500是UDP-encapsulated ESP and IKE端口号
如果中间设备有nat的话使用到端口UDP4500
VPN配置案例汇总、VPN汇总(列表、list、全)vpnlist
http://www.zh-cjh.com/wenzhangguilei/1193.html
文章归类、所有文章列表、LISTLIST
http://www.zh-cjh.com/wangzhangonggao/2195.html
2、本资源基本为原创,部分来源其他付费资源平台或互联网收集,如有侵权请联系及时处理。
3、本站大部分文章的截图来源实验测试环境,请不要在生产环境中随意模仿,以免带来灾难性后果。
转载请保留出处: www.zh-cjh.com珠海陈坚浩博客 » 陈坚浩:IPSec知识整理:配置参数(端口UDP4500与UDP500)(中间有NAT与没有NAT的区别)、PFS、预共享密钥
作者: cjh
手机扫一扫,手机上查看此文章: |
一切源于价值!
其他 模板文件不存在: ./template/plugins/comment/pc/index.htm