关于IPsec原理及应用的整理 |
您所在的位置:网站首页 › ipsec协议族中的协议包括 › 关于IPsec原理及应用的整理 |
目录 IPsec原理及应用 一、简介 1.IPsec(Internet Protocol Security)概述: 2.IPSec协议族 3.IPsec协议 二、功能和优点 1.IPSec基本原理 2.IPsec提供了在局域网、专用网和公用广域网及Internet上的安全通信的能力 3.IPsec优点 三、安全体系结构 1.可提供的服务: 2.使用模式: (2) 隧道模式:可数据加密,还可隐藏原数据包IP地址 3.安全协议 4.封装模式 5.加密 6.验证 四、场景应用 1.IPSec隧道嵌套技术 2.GRE over IPSec隧道 3.L2TP over IPSec隧道 4.IPSec与NAT 的不兼容 (1)AH、ESP安全协议与NAT的不兼容 (2)校验和与NAT不兼容 (3)IPSec的SPI(安全参数索引)与NAT不兼容 (4)IKE与NAT的不兼容性 IPsec原理及应用 一、简介 1.IPsec(Internet Protocol Security)概述: IP层的安全机制成为IPsec,包括三个功能域:认证,机密性和密钥管理。 IPsec不是一个单一的协议。它提供了一套安全算法和一个允许通信参与实体用任何一个安全算法为通信提供安全保障的一般性框架。它实现了网络层的加密和认证。在网络体系结构中提供了一种端到端的安全解决方案,对每个IP分组单独认证,内置于操作系统中,对所有IP流加密保护,且对用户透明。 IPsec 包括认证头协议(Authenti c a tion Header,AH)、封装安全载荷协议 (Encapsulating Security Payload,ESP)、因特网密钥交换协议(Internet Key Exchange,IKE),用于保护数据流。 2.IPSec协议族 IPsec 是 IETF 制定的一组开放的网络安全协议,在IP层通过数据来源认证、数据加密、数据完整性和抗重放功能来保证通信双方Internet上传输数据的安全性。 数据来源认证:接收方认证发送方身份是否合法。 数据加密:发送方对数据进行加密,以密文的形式在Internet上传送,接收方对接收的加 密数据进行解密后处理或直接转发。 数据完整性:接收方对接收的数据进行认证,以判定报文是否被篡改。 抗重放:接收方会拒绝旧的或重复的数据包,防止恶意用户通过重复发送捕获到的数据包 所进行的攻击。 3.IPsec协议 (1)ESP:Encapsulating Security Payload,封装安全载荷协议。 提供了机密性服务,包括报文内容的机密性和通信量的机密性。ESP对自己的数据部分进行加密,它允许使用的加密算法包括:3密钥3DES,RC5,IDEA,3密钥3IDEA,CAST,Blowfish。ESP支持使用默认长度为96位的MAC。 缺点:原IP首部未受加密保护,可能收到通信量分析。 功能:加密数据; 数据完整性、数据源验证、抗报文重放。 (2)AH:Authentication Header,报文头验证协议 传统模式AH(只用于主机实现),隧道模式AH(既可用于主机,也可用于安全网关)。 一种情况下服务器和工作站之间直接提供认证服务。工作站可以与服务器同在一个内部网络中,也可以在外部网络组,只要工作站和服务器共享受保护的密钥,认证处理就是安全的,这种情况使用的是传输模式的SA. 另一种情况是远程工作站向公司的防火墙或路由器认证自己的身份,或者是为了访问整个内部网络,或者是因为请求的服务器不支持认证特征。这种情况使用隧道模式的SA。 功能:数据完整性、数据源验证、抗报文重放。 (3)SA:Security Association,安全联盟 SA包括:数据校验算法、加密算法、工作模式(传输或隧道)、密钥生存期等。 (4)IKE:Internet密钥交换协议,一个UDP应用层协议。 功能:用于协商SA。 二、功能和优点 1.IPSec基本原理 IPSec通过在IPSec对等体间建立双向安全联盟形成一个安全互通的IPSec隧道,并通过定义IPSec保护的数据流将要保护的数据引入该IPSec隧道,然后对流经IPSec隧道的数据通过安全协议进行加密和验证,进而实现在Internet上安全传输指定的数据。 IPSec对需要保护的数据流的定义基于以下两种方式: (1)基于ACL方式:ACL规则允许(permit)的报文将被保护,ACL规则拒绝(deny)的报文将不被保护。这种方式可以利用ACL的丰富配置功能,根据IP地址、端口、协议类型等对报文进行过滤进而灵活制定IPSec的保护方法。 (2)基于虚拟隧道接口方式:IPSec虚拟隧道接口是一种三层逻辑接口,所有路由到IPSec虚拟隧道接口的报文都将进行IPSec保护。 2.IPsec提供了在局域网、专用网和公用广域网及Internet上的安全通信的能力。 例如: (1)通过Internet实现一个机构各分支办公室的安全连接:一个机构或公司可以在因特网或者公用广域网上建立安全的虚拟专用网。这使得企业主要依赖因特网,减少了构造专用网络的需求,从而节省了建设费用和网络管理的负担。 (2)基于因特网的安全远程访问:如果用户系统配备了IP安全协议,用户就可以用过本地的Internet服务提供商来获得对一个公司网络的安全访问。 (3)与企业合作伙伴建立起企业内部网和企业外部网。 (4)增强电子商务的安全性。 3.IPsec优点 (1)由于IPsec位于传输层之下,因此对于应用是透明的。所以当在防火墙、路由器或用户终端系统上实现IPsec时,并不会对应用程序带来任何的改变。 (2)IPsec可以对个人用户提供安全性保障。这对于不在本地的工作者,或者对于一个组织内部,为敏感的应用建立只有少数人才能使用的虚拟子网是必要的。 (3)IPsec为穿越局域网边界的通信量提供安全保障,但对于局域网内部的通信,他不会带来任何与安全有关的处理负荷。 (4)IPsec对终端用户是透明的。不必对用户进行安全培训,也不涉及密钥的分发与管理等问题。 三、安全体系结构 AH和ESP 1.可提供的服务: (1)访问控制(2)无连接完整性(3)数据源的认证 (4)拒绝重放的分组(5)机密性(6)有限的通信量机密性 2.使用模式: (1)传输模式:封装后的原始IP头的协议字段:IPSec协议的协议号 主要为上层协议提供保护,即它的保护覆盖了IP分组的有效载荷,如TCP,UDP或ICMP分组。 应用场景:主机和主机间端到端通信数据保护。 隧道模式:可数据加密,还可隐藏原数据包IP地址对整个IP分组提供保护。 应用场景:私网与私网之间通过公网通信,建立安全VPN通道。 3.安全协议 IPSec使用认证头AH(Authentication Header)和封装安全载荷ESP(Encapsulating Security Payload)两种安全协议来传输和封装数据,提供认证或加密等安全服务。 4.封装模式 封装模式是指将AH或ESP相关的字段插入到原始IP报文中,以实现对报文的认证和加密,封装模式有传输模式和隧道模式两种。 5.加密 加密是一种将数据按照某种算法从明文转换成密文的过程,接收方只有在拥有正确的密钥的情况下才能对密文进行解密,从而保证数据的机密性,防止数据在传输过程中被窃听。IPSec工作过程中涉及数据加密和协议消息加密两种加密情况 6.验证 IPSec发送方,加密和验证通常配合使用。加密后的报文经HMAC生成数字签名,IP报文和数字签名同时发给对端(数字签名填写在AH和ESP报文头的完整性校验值ICV字段); 在IPSec接收方,通过比较数字签名进行数据完整性和真实性验证,验证不通过的报文直接丢弃,验证通过的报文再进行解密。加密和HMAC验证配合使用的过程如图所示。 四、场景应用 1.IPSec隧道嵌套技术 隧道嵌套技术是指使用L2TP over IPSec、GRE over IPSec、DSVPN over IPSec这些方式实现点到点,点到多点的安全传输,通过嵌套的方式,结合不同的虚拟专网特点,实现不同的安全等级,不同的保密级别。企业数据与公网数据的安全隔离,内网之间不同部门的安全隔离。 比如:总部通过公网传输数据到分支机构,在internet网上加密不被探视、窃取、修改、领造。但在总部与分部之间不同部门,如财务部部门、研发部门、销售部门、行政管理部门之间传输的数据也需要保密,这就是隧道嵌套技术所据有的安全功能。 2.GRE over IPSec隧道 GRE最初是一种封装方法的名称。IETF首先在RFC1701中描述GRE,一个在任意一种网络协议上传送任意其它网络协议的封装方法。GRE的特点:支持多种协议和多播、能够用来创建弹性的VPN、支持多点隧道、能够实施QOS。GRE的缺点是缺乏加密机制,没有标准的控制协议来保持GRE隧道。 IPSec是针对数据流页设计,其协议机制决定了其难于支持组播,对于组播的不支持也决定了IPSec对于路由协议的不支持,且对于IP协议中多种协议的支持性差。 3.L2TP over IPSec隧道 L2TP通过拨号网络,基于PPP的协商,建立企业分支用户到企业总部的隧道,使远程用户可以接入企业总部。PPPoE(PPP over Ethernet)技术更是扩展了L2TP的应用范围,通过以太网络连接Internet,建立远程移动办公人员到企业总部的L2TP隧道。缺点是L2TP与GRE隧道封装都不能保障数据的机密性、完整性、真实性、抗重播这些问题。 LAC根据PPP报文中所携带的用户名或者域名信息,在LAC端和LNS建立L2TP隧道连接,将PPP协商延展到LNS。结合IPSec主要是解决数据传输过程中的机密性、完整性、真实性、抗重播这些特性,进行安全的数据传输。 4.IPSec与NAT 的不兼容 NAT(Network Address Translation),是指网络地址转换,它是一个IETF(Internet Engineering Task Force, Internet工程任务组)标准,允许一个整体机构以一个公用IP(Internet Protocol)地址出现在Internet上。顾名思义,它是一种把内部私有网络地址(IP地址)翻译成合法网络IP地址的技术,有效的解决公网地址不足的问题。在网关处,将内部地址替换成公用地址,从而在外部公网(internet)上正常使用,NAT可以使多台计算机共享Internet连接,这一功能很好地解决了公共 IP地址紧缺的问题。 由于 IPSec和 NAT存在很大的冲突.两者存在不兼容性,导致IPSec隧道传输的数据无法穿越NAT进入内网。为什么会发生这样的状况,这种不兼容是由以下几方面原因: (1)AH、ESP安全协议与NAT的不兼容 在传输模式下,AH安全协议使用原IP报头也就是内网的私有IP地址并在整个验证范围,会导致NAT设备在对私网的源IP地址和目的地址修改为公网地址后,因为经过NAT后改变了Hash值,无法通过验证,完整性检查的失败; ESP安全协议下TCP/UDP的校验和的计算包含IP源目地址,通过nat后,nat修改了最外层IP地址,接收数据路由器检查校验和失败。 在隧道模式下,AH安全协议,同样是完整性检查的失败;ESP安全协议下TCP/UDP的校验和,是使用公网IP目的地址,会成功,但是由于端口是加密的,接收设备无法得知端口号而被丢弃 (2)校验和与NAT不兼容 TCP/UDP校验和是以IP的源地址和目的地址作为参数计算的,当NAT设备将修改为公网地址后,校验和肯定与原数据的校验和不一致,导致检验失败,数据被丢弃。 (3)IPSec的SPI(安全参数索引)与NAT不兼容 NAT设备通过IP头和IPSec头中的信息来识别不同的IPSec数据流,主要识别是参数是目的IP地址、安全协议和IPSec的SPI(安全参数索引)。而IPSec对等体都是单向的传输,对等体发送数据的SPI与接收数据的SPI不一样,这样就造成在私网中如果两台终端同时创建到相同目的的IPSec SA时,NAT可能会错误转发数据包。 (4)IKE与NAT的不兼容性 当为IPSec协商时经过NAT设备,NAT对于IP地址的修改,而导致标识符与IP地址不符IKE丢弃该数据包。 解决办法:使用userID和FQDN(全称域名)作为标识。 (5)传送IP数据包载荷中内嵌IP地址与NAT的不兼容性:NAT设备使用ALG(应用层网关)技术对数据包内如多媒体协议(H.323、SIP等)、FTP、SNMP、LDAP、SCTP等很多协议在载荷中内嵌的Ip地址和端口号都转化为公网的ip地址和端口号。 但是IPSec隧道传输的数据,包括原IP地址和数据被加密无法修改。 解决办法:在主机或安全网关上安装ALG,使得数据在IPSec封装前和解封装之后对应用的数据流进行操作。 (6)NAT的隐式定向性:NAT创建一个映射表项,首先需要内网发起一个初始包。外网发起的初始包一般会被NAT设备丢弃。这一隐式定向性会造成外部数据无法穿越NAT双向自由建立IPSec隧道。 总结:IPSec VPN穿越NAT问题主要为两个,一是IPSec无论使用AH和ESP安全协议都无法在通过NAT设备后发送到目的地,AH方式无法通过验证,ESP方式NAT设备无法得知端口号而被丢弃;二是穿越NAT后身份识别识别的问题,IPSec怎么确认改变IP的数据包 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |