技术点详解---IPSec VPN基本原理

时间:2024.3.31

技术点详解---IPSec VPN基本原理

其他话题:

·         技术点详解---双链路智能切换

·         技术点详解---互联网双出口的选择

·         技术点详解---同时访问VPN和互联网

·         技术点详解---SSL VPN

·         技术点详解---IPSec方案部署

·         技术点详解---IPSec穿越NAT

·         技术点详解---IPSec VPN基本原理

·         技术点详解---L2TP VPN

·         技术点详解---网络中的身份保护与信息保护

·         技术点详解---互联网应用如何穿越NAT

·         技术点详解---VPN远程访问概述

·         技术点详解---互联网访问控制

·         内部服务器如何提供访问服务

·         技术点详解——局域网访问隔离

·         技术点详解——局域网安全

·         商务领航与天翼的融合

·         访问互联网和LAN通信

·         信息通信网关部署

·         何以解中小企业信息化之“忧”?

IPSec VPN是目前VPN技术中点击率非常高的一种技术,同时提供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模式)

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

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

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

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

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

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

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

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

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

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

如上图所示,如果发起方内网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除了一些协议原理外,我们更关注的是协议中涉及到方案制定的内容:

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协商流程,原生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永远是单向的:

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

IPSec虽然只是5个字母的排列组合,但其所涉及的协议功能众多、方案又极其灵活,本期主要介绍IPSec的基本原理,在后续专栏还会继续介绍IPSec的其它方面知识。。


第二篇:IPSec VPN技术与实现原理


VPN的英文全称是“Virtual Private Network”,翻译过来就是“虚拟专用网络”。顾名思义,虚拟专用网络我们可以把它理解成是虚拟出来的企业内部专线。它可以通过特殊的加密的通讯协议为连接在Internet上的位于不同地方的两个或多个企业内部网之间建立一条专有的通讯线路,就好比是架设了一条专线一样,但是它并不需要真正的去铺设光缆之类的物理线路。

我们可以把VPN理解成为是建立在实际网络(或物理网络)基础上的一种功能性网络。它利用低成本的公共网络做为企业骨干网,同时又克服了公共网络缺乏保密性的弱点,在VPN网络中,位于公共网络两端的网络在公共网络上传输信息时,其信息都是经过安全处理的,可以保证数据的完整性、真实性和私有性。

每家公司都有自己的内部网络,而这个网络是封闭的、有边界的。小一些的网络可能仅由办公室中的几台电脑组成,规模较大的网络可能由一栋建筑物中的所有终端组成甚至整个厂区中的所有终端组成,但无论如何,这个内部网络总是有边界的,所以物理上将上海总部的内网与北京分部的内网直接相连在一般条件下是不可能实现的,而这一问题同时也限制了企业内部各种应用的延伸。

我们知道,网络通信是采用分层机制实现的,上层的各种应用无法查觉到下层网络的工作方式,所以无论是逻辑上还是物理上只要将两个网络进行直接连连,对于上层应用来讲是没有分别的。VPN所实现的效果正是将两个物理上分离的网络通过Internet这个公共网络进行逻辑上的直接连接,通过这种方式我们可以无限延伸企业的内部网络,继而使所有用户可以访问相同的资源,使用相同的应用。

IPSecVPN技术与实现原理

站点到站点的VPN(Site to Site)和客户端到端点的VPN(Client to Site)

VPN的优势之处还在于它可以很好的利用当前既有的Internet线路资源,不再受地域的限制,而对于用户来讲,VPN的工作方式是完全透明的。VPN可以帮助远程用户、公司分支机构、商业伙伴及供应商同公司的内部网建立可信的安全连接,并保证数据的安全传输。针对不同的用户要求,VPN有三种解决方案:远程访问虚拟网(Access VPN)、企业内部虚拟网(Intranet VPN)和企业扩展虚拟网(Extranet VPN),分别适用于远程/移动用户访问、连接各个企业内部网络、连接企业内部网与合作伙伴内部网。

目前很多公司都面临着这样的挑战:分公司、经销商、合作伙伴、客户和外地出差人员要求随时经过公用网(Internet)访问公司的内部资源,这些资源包括公司的内部资料、办公OA、ERP系统、CRM系统、项目管理系统等。为了实现实时的互通互访,很多公司在企业内部部署了VPN解决方案。实现VPN通信的方式有多种,常见的像IPSec VPN、PPTP VPN、SSL VPN等。本文将仅讨论IPSec VPN的实现原理,这里先预告一下,在稍后的文章中我们将用实例演示如何组建IPSec VPN网络.

什么是IPSec VPN?IPSec VPN即指采用IPSec协议来实现远程接入的一种VPN技术,IPSec全称为Internet Protocol Security,是由Internet Engineering Task Force (IETF) 定义的安全标准框架,用以提供公用和专用网络的端对端加密和验证服务。

IPsec协议不是一个单独的协议,它给出了应用于IP层上网络数据安全的一整套体系结构,包括网络认证协议AH(Authentication Header,认证头)、ESP(Encapsulating Security Payload,封装安全载荷)、IKE(Internet Key Exchange,因特网密钥交换)和用于网络认证及加密的一些算法等。其中,AH协议和ESP协议用于提供安全服务,IKE协议用于密钥交换。

IPsec提供了两种安全机制:认证和加密。认证机制使IP通信的数据接收方能够确认数据发送方的真实身份以及数据在传输过程中是否遭篡改。加密机制通过对数据进行加密运算来保证数据的机密性,以防数据在传输过程中被窃听。IPsec协议中的AH协议定义了认证的应用方法,提供数据源认证和完整性保证;ESP协议定义了加密和可选认证的应用方法,提供数据可靠性保证

一下子出现了三个专用名词,这可能让您感到十分费解,没关系,下面我们就来具体说一说AH、ESP和IKE它们在实现IPSec中分别起着什么作用。

AH协议(IP协议号为51)提供数据源认证、数据完整性校验和防报文重放功能,它能保护通信免受篡改,但不能防止窃听,适合用于传输非机密数据。AH的工作原理是在每一个数据包上添加一个身份验证报文头,此报文头插在标准IP包头后面,对数据提供完整性保护。可选择的认证算法有MD5(Message Digest)、SHA-1(Secure Hash Algorithm)等。MD5算法的计算速度比SHA-1算法快,而SHA-1算法的安全强度比MD5算法高。 ESP协议(IP协议号为50)提供加密、数据源认证、数据完整性校验和防报文重放功能。ESP的工作原理是在每一个数据包的标准IP包头后面添加一个ESP报文头,并在数据

包后面追加一个ESP尾。与AH

IPSecVPN技术与实现原理

协议不同的是,ESP将需要保护的用户数据进行加密后再封装到IP包中,以保证数据的机密性。常见的加密算法有DES、3DES、AES等。同时,作为可选项,用户可以选择MD5、SHA-1算法保证报文的完整性和真实性。这三个加密算法的安全性由高到低依次是:AES、3DES、DES,安全性高的加密算法实现机制复杂,运算速度慢。对于普通的安全要求,DES算法就可以满足需要。

在实际进行IP通信时,可以根据实际安全需求同时使用这两种协议或选择使用其中的一种。AH和ESP都可以提供认证服务,不过,AH提供的认证服务要强于ESP。同时使用AH和ESP时,设备支持的AH和ESP联合使用的方式为:先对报文进行ESP封装,再对报文进行AH封装,封装之后的报文从内到外依次是原始IP报文、ESP头、AH头和外部IP头。IPsec有如下两种工作模式:

tunnel和transport模式下的数据封装形式,data为传输层数据

隧道(tunnel)模式:用户的整个IP数据包被用来计算AH或ESP头,AH或ESP头以及ESP加密的用户数据被封装在一个新的IP数据包中。通常,隧道模式应用在两个安全网关之间的通讯。

传输(transport)模式:只是传输层数据被用来计算AH或ESP头,AH或ESP头以及ESP加密的用户数据被放置在原IP包头后面。通常,传输模式应用在两台主机之间的通讯,或一台主机和一个安全网关之间的通讯。

讲完了AH、ESP及数据封装模式,接下来我们来看一下IPSec是如何实现数据安全传输的。IPsec的两个端点被称为是IPsec对等体,要在两个对等体之间实现数据的安全传输就要在两者之间建立安全关联(Security Association,SA)。SA是IPsec的基础,也是IPsec的本质。SA是通信对等体间对某些要素的约定,例如,使用哪种协议(AH、ESP还是两者结合使用)、协议的封装模式(传输模式和隧道模式)、加密算法(DES、3DES和AES)、特定流中保护数据的共享密钥以及密钥的生存周期等。

SA是单向的,在两个对等体之间的双向通信,最少需要两个SA来分别对两个方向的数据流进行安全保护。同时,如果两个对等体希望同时使用AH和ESP来进行安全通信,则每个对等体都会针对每一种协议来构建一个独立的SA。SA是具有生存周期的,且只对通过IKE协商建立的SA有效,手工方式建立的SA永不老化。IKE协商建立的SA的生存周期有两种定义方式:基于时间的生存周期,定义了一个SA从建立到失效的时间;基于流量的生存周期,定义了一个SA允许处理的最大流量。

生存周期到达指定的时间或指定的流量,SA就会失效。SA失效前,IKE将为IPsec协商建立新的SA,这样,在旧的SA失效前新的SA就已经准备好。在新的SA开始协商而没有协商好之前,继续使用旧的SA保护通信。在新的SA协商好之后,则立即采用新的SA保护通信。

到这里大家可能也就明白了IKE是什么,简单的讲IKE是一种安全机制,它提供端与端之间的动态认证。IKE为IPsec提供了自动协商交换密钥、建立SA的服务,这能够简化IPsec的使用和管理,大大简化IPsec的配置和维护工作。IKE不是在网络上直接传输密钥,而是通过一系列数据的交换,最终计算出双方共享的密钥,有了IKE,IPsec很多参数(如:密钥)都可以自动建立,降低了手工配置的复杂度。

本文主要讨论了IPsec实现数据安全传输的原理,最后我们来总结一下IPsec所具有的优点:

1、支持IKE(Internet Key Exchange,因特网密钥交换),可实现密钥的自动协商功能,减少了密钥协商的开销。可以通过IKE建立和维护安全关联(Security Association,SA)的服务,简化了IPsec的使用和管理。

2、所有使用IP协议进行数据传输的应用系统和服务都可以使用IPsec,由于IPSec工作在OSI的第3层,低于应用程序直接涉及的层级,所以对于应用程序来讲,利用IPSec VPN所建立起来的隧道是完全透明的,无需修改既有的应用程序,并且,现有应用程序的安全解决方法也不会受到任何影响。

3、对数据的加密是以数据包为单位的,而不是以整个数据流为单位,这不仅灵活而且有助于进一步提高IP数据包的安全性,可以有效防范网络攻击。

更多相关推荐:
网络计划技术的基本内容

网络计划技术的基本内容网络计划技术基本概念网络计划技术是指用于工程项目的计划与控制的一项管理技术它是五十年代末发展起来的依其起源有关键路径法CPM与计划评审法PERT之分19xx年美国杜邦公司在制定企业不同业务...

网络计划的基本原理

网络计划的基本原理利用网络图的形式表达工程中的工作组成以及相互间的及逻辑关系经过计算分析找出关键工作和关键线路并按照一定目标使网络计划不断完善以选择最优方案在计划执行过程中进行有效的控制和调整力求以较小的消耗取...

网络计划技术的原理

网络计划技术的原理利用网络图表达计划任务的进度安排及其中各项活动之间的相互关系例在此基础上进行网络分析计算网络时间值确定关键活动和关键路线利用时差不断改善网络计划求得工期资源和成本的优化方案网络时间值的计算A作...

网络计划技术的基础——网络图

网络图是因其形状如网络而得名它是一种表示一项工程或一个计划中各项工作或各道工序的先后衔接关系和所需要时间的图解模型这种图解模型是从某项计划整体的系统的观点出发全面地统筹安排人机物并考虑各项活动之间相互依存的内在...

网络计划技术在ERP项目管理中的应用

网络计划技术在ERP项目管理中的应用在以往的项目建设中编制项目进度计划常常采用甘特图或称横道图来表示甘特图简单明了形象直观但不适合用于大型和复杂信息工程项目的建设和监理工作因为甘特图不反映各项工作之间的逻辑关系...

关键线路网络进度计划技术在建设工程中的应用-公路专业研究文库

中交网公路专业研究中交网员注册信息会员注册商务会员注册金卡会员注册您好今天是用户名密码选择搜索引擎中交网新闻会议报道信息公路专业研究公路行业文件融资信息研究招标投标信息开标中标信息ltWTO专题公路设备与ITS...

网络计划技术应用浅谈

兰州交通大学博文学院课程设计目录目录1摘要2ABSTRCT2第1章绪论311问题产生的背景312论文的研究意义和目的413论文总体框架5第2章521BP网络技术的背景522BP网络技术的定义523BP技术在交通...

一级建造师掌握网络计划技术的应用

1A421020掌握网络计划技术的应用一双代号网络计划图的绘制起点节点只有外向箭线终点节点只有内向箭线中间节点同时有内向箭线和外向箭线绘制规则重点逻辑关系正确唯一满足逻辑关系严禁出现循环回路严禁出现双箭头和无箭...

网络计划技术在生产中的应用

华北水利水电学院毕业论文网络计划技术在生产中的应用摘要网络计划技术是用网络计划对任务的工作进度进行安排和控制以保证实现预定目标的科学的计划管理技术对生产流程进行科学的分析弄清主次矛盾找出关键线路有的放矢的采取措...

网络计划技术在生产中的应用

中国矿业大学银川学院本科毕业论文20xx届题目液压缸筒生产过程的网络分析系别机电动力与信息工程系专业班级09级工业工程2班学生姓名李江宏指导教师李俊海教务处制20xx年5月3日摘要网络计划技术是一种组织生产和项...

网络计划技术作业参考资料

PEPT网络计划技术网络计划技术PEPT又称计划评审法或时间项目网络分析法是由美国海军专案计划局开发的一种有效控制工具于19xx年用于北极星武器系统的规划及控制计划评审法的主要功能是能帮助管理人员在众多的有着时...

工程网络计划技术规程JGJT1001-91

工程网络计划技术规程JGJT100191主编单位中国建筑学会建筑统筹管理研究会建设部信息中心批准部门中华人民共和国建设部施行日期19xx年7月1日主要符号与代号通用部分Q资源限量Qt第t天资源需用量Tp网络计划...

网络计划技术的基本原理(4篇)