IPSec VPN基本原理详解

IPSec VPN基本原理详解

微软为Microsoft Edge based Chromium浏览器带来沉浸式阅读体验

IPSec VPN是现在VPN手艺中点击率异常高的一种手艺,同时提供VPN和信息加密两项手艺,这一期专栏就来先容一下IPSec VPN的原理。

IPSec VPN应用场景

知识科普:IPSec VPN基本原理详解

 

IPSec VPN的应用场景分为3种:

1. Site-to-Site(站点到站点或者网关到网关):如弯曲谈论的3个机构漫衍在互联网的3个差异的地方,各使用一个商务领航网关相互确立VPN隧道,企业内网(若干PC)之间的数据通过这些网关确立的IPSec隧道实现平安互联。

2. End-to-End(端到端或者PC到PC): 两个PC之间的通讯由两个PC之间的IPSec会话珍爱,而不是网关。

3. End-to-Site(端到站点或者PC到网关):两个PC之间的通讯由网关和异地PC之间的IPSec举行珍爱。

VPN只是IPSec的一种应用方式,IPSec其实是IP Security的简称,它的目的是为IP提供高平安性特征,VPN则是在实现这种平安特征的方式下发生的解决方案。IPSec是一个框架性架构,详细由两类协议组成:

1. AH协议(Authentication Header,使用较少):可以同时提供数据完整性确认、数据泉源确认、防重放等平安特征;AH常用摘要算法(单向Hash函数)MD5和SHA1实现该特征。

2. ESP协议(Encapsulated Security Payload,使用较广):可以同时提供数据完整性确认、数据加密、防重放等平安特征;ESP通常使用DES、3DES、AES等加密算法实现数据加密,使用MD5或SHA1来实现数据完整性。

为何AH使用较少呢?由于AH无法提供数据加密,所有数据在传输时以明文传输,而ESP提供数据加密;其次AH由于提供数据泉源确认(源IP地址一旦改变,AH校验失败),以是无法穿越NAT。固然,IPSec在极端的情况下可以同时使用AH和ESP实现最完整的平安特征,然则此种方案极其少见。

IPSec封装模式

先容完IPSec VPN的场景和IPSec协议组成,再来看一下IPSec提供的两种封装模式(传输Transport模式和隧道Tunnel模式)

知识科普:IPSec VPN基本原理详解

 

上图是传输模式的封装结构,再来对比一下隧道模式:

知识科普:IPSec VPN基本原理详解

 

可以发现传输模式和隧道模式的区别:

1. 传输模式在AH、ESP处置前后IP头部保持稳定,主要用于End-to-End的应用场景。

2. 隧道模式则在AH、ESP处置之后再封装了一个外网IP头,主要用于Site-to-Site的应用场景。

从上图我们还可以验证上一节所先容AH和ESP的差异。下图是对传输模式、隧道模式适用于何种场景的说明。

知识科普:IPSec VPN基本原理详解

 

从这张图的对比可以看出:

1. 隧道模式可以适用于任何场景

2. 传输模式只能适合PC到PC的场景

隧道模式虽然可以适用于任何场景,然则隧道模式需要多一层IP头(通常为20字节长度)开销,以是在PC到PC的场景,建议照样使用传输模式。

为了使人人有个更直观的领会,我们看看下图,剖析一下为何在Site-to-Site场景中只能使用隧道模式:

思科ASA防火墙常用配置

知识科普:IPSec VPN基本原理详解

 

如上图所示,若是提议方内网PC发往响应方内网PC的流量知足网关的兴趣流匹配条件,提议方使用传输模式举行封装:

1. IPSec会话确立在提议方、响应方两个网关之间。

2. 由于使用传输模式,以是IP头部并不会有任何转变,IP源地址是192.168.1.2,目的地址是10.1.1.2。

3. 这个数据包发到互联网后,其运气注定是杯具的,为什么这么讲,就由于其目的地址是10.1.1.2吗?这并不是泉源,泉源在于互联网并不会维护企业网络的路由,以是抛弃的可能性很大。

4. 纵然数据包没有在互联网中抛弃,而且幸运地抵达了响应方网关,那么我们指望响应方网关举行解密事情吗?凭什么,简直没什么好的凭证,数据包的目的地址是内网PC的10.1.1.2,以是直接转发了事。

5. 最杯具的是响应方内网PC收到数据包了,由于没有介入IPSec会话的协商会议,没有对应的SA,这个数据包无法解密,而被抛弃。

我们行使这个反证法,巧妙地注释了在Site-to-Site情况下不能使用传输模式的缘故原由。而且提出了使用传输模式的充要条件:兴趣流必须完全在提议方、响应方IP地址范围内的流量。比如在图中,提议方IP地址为6.24.1.2,响应方IP地址为2.17.1.2,那么兴趣流可以是源6.24.1.2/32、目的是2.17.1.2/32,协议可以是随便的,倘若数据包的源、目的IP地址稍有差异,对不起,请使用隧道模式。

IPSec协商

知识科普:IPSec VPN基本原理详解

 

IPSec除了一些协议原理外,我们更关注的是协议中涉及到方案制订的内容:

1. 兴趣流:IPSec是需要消耗资源的珍爱措施,并非所有流量都需要IPSec举行处置,而需要IPSec举行珍爱的流量就称为兴趣流,最后协商出来的兴趣流是由提议方和响应方所指定兴趣流的交集,如提议方指定兴趣流为192.168.1.0/2410.0.0.0/8,而响应方的兴趣流为10.0.0.0/8192.168.0.0/16,那么其交集是192.168.1.0/2410.0.0.0/8,这就是最后会被IPSec所珍爱的兴趣流。

2. 提议方:Initiator,IPSec会话协商的触发方,IPSec会话通常是由指定兴趣流触发协商,触发的历程通常是将数据包中的源、目的地址、协议以及源、目的端口号与提前指定的IPSec兴趣流匹配模板如ACL举行匹配,若是匹配乐成则属于指定兴趣流。指定兴趣流只是用于触发协商,至于是否会被IPSec珍爱要看是否匹配协商兴趣流,然则在通常实施方案历程中,通常会设计成提议方指定兴趣流属于协商兴趣流。

3. 响应方:Responder,IPSec会话协商的接收方,响应方是被动协商,响应方可以指定兴趣流,也可以不指定(完全由提议方指定)。

4. 提议方和响应方协商的内容主要包罗:双方身份简直认和密钥种子刷新周期、AH/ESP的组合方式及各自使用的算法,还包罗兴趣流、封装模式等。

5. SA:提议方、响应方协商的效果就是曝光率很高的SA,SA通常是包罗密钥及密钥生存期、算法、封装模式、提议方、响应方地址、兴趣流等内容。

我们以最常见的IPSec隧道模式为例,注释一下IPSec的协商历程:

知识科普:IPSec VPN基本原理详解

 

上图形貌了由兴趣流触发的IPSec协商流程,原生IPSec并无身份确认等协商历程,在方案上存在诸多缺陷,如无法支持提议方地址动态转变情况下的身份确认、密钥动态更新等。随同IPSec泛起的IKE(Internet Key Exchange)协议专门用来填补这些不足:

1. 提议方界说的兴趣流是源192.168.1.0/24目的10.0.0.0/8,以是在接口发送提议方内网PC发给响应方内网PC的数据包,能够得以匹配。

2. 知足兴趣流条件,在转发接口上检查SA不存在、过时或不可用,都市举行协商,否则使用当前SA对数据包举行处置。

3. 协商的历程通常分为两个阶段,第一阶段是为第二阶段服务,第二阶段是真正的为兴趣流服务的SA,两个阶段协商的偏重有所差异,第一阶段主要确认双方身份的正确性,第二阶段则是为兴趣流建立一个指定的平安套件,其最显著的效果就是第二阶段中的兴趣流在会话中是密文。

IPSec中平安性还体现在第二阶段SA永远是单向的:

知识科普:IPSec VPN基本原理详解

 

从上图可以发现,在协商第二阶段SA时,SA是分偏向性的,提议方到响应方所用SA和响应放到提议方SA是单独协商的,这样做的利益在于纵然某个偏向的SA被破解并不会波及到另一个偏向的SA。这种设计类似于双向车道设计。

Microsoft Edge浏览器将自动阻止信誉较低的应用程序防止安全问题

分享到 :
相关推荐

发表评论

登录... 后才能评论