网络安全ipsecvpn原理与应用.docx

上传人:b****6 文档编号:8491442 上传时间:2023-01-31 格式:DOCX 页数:39 大小:353.86KB
下载 相关 举报
网络安全ipsecvpn原理与应用.docx_第1页
第1页 / 共39页
网络安全ipsecvpn原理与应用.docx_第2页
第2页 / 共39页
网络安全ipsecvpn原理与应用.docx_第3页
第3页 / 共39页
网络安全ipsecvpn原理与应用.docx_第4页
第4页 / 共39页
网络安全ipsecvpn原理与应用.docx_第5页
第5页 / 共39页
点击查看更多>>
下载资源
资源描述

网络安全ipsecvpn原理与应用.docx

《网络安全ipsecvpn原理与应用.docx》由会员分享,可在线阅读,更多相关《网络安全ipsecvpn原理与应用.docx(39页珍藏版)》请在冰豆网上搜索。

网络安全ipsecvpn原理与应用.docx

网络安全ipsecvpn原理与应用

毕业论文

 

题目路由器建立VPN的原理与应用浅析

 

姓名:

梅宇森

学号:

0714153203

系别专业:

计算机应用技术系网络安全监察二班

指导教师:

胡守国

完成日期:

2010年4月30日

 

目录

摘要:

3

一.VPN概述4

1.1VPN的定义4

1.2VPN种类5

1.2.1二层VPNL2TP5

1.2.2三层VPN5

1.2.3MPLSVPN5

二.VPN原理与配置浅析6

2.1IPsec协议栈6

2.1.1机密性6

2.1.2完整性数据包认证7

2.1.3源认证数据来源认证7

2.1.4防重放8

2.1.5Diffie-Hellman算法9

2.2IPsecVPN配置与高级原理9

2.2.1IKE阶段一管理连接9

2.2.2IKE阶段二数据连接10

2.2.3建立加密映射11

2.2.4激活加密映射12

2.2.5测试与排错IPsecvpn12

三VPN的应用现状与前景14

3.1VPN现在的运营状况14

3.1.1VPN市场应用现状14

3.2VPN前景展望14

3.2.1VPN的未来发展趋势14

3.2.2IPsecVPN的优点15

3.2.2IPsecVPN的缺点16

附件:

20

 

摘要:

本论文分为三个部分VPN的定义与种类;VPN的协议栈与配置详解;VPN的应用现状与展望。

在第一部分主要介绍了什么是VPN,VPN有什么功能。

现在常见的VPN种类。

第二部分为本文重点部分,阐述了IPsec协议栈及配置IPsec的完整过程与步骤,包括IKE阶段1、IKE阶段2、建立加密映射、激活VPN及VPN排错等内容。

详细说明了VPN建立时数据的产生与转发过称。

本文的第三部分说明了VPN的发展现状与未来展望,包括VPN的产品类型、VPN的优缺点对比。

最后本文添加附件一份,详细说明实验配置过程与实现原理。

关键词:

VPNIPsec协议栈IPsecVPN实例

 

一.VPN概述

1.1VPN的定义

VPN的英文全称是“VirtualPrivateNetwork”,翻译过来就是“虚拟专用网络”。

虚拟专用网络我们可以把它理解成是虚拟出来的企业内部专线。

它可以通过特殊的加密的通讯协议为连接在Internet上的位于不同地方的两个或多个企业内部网之间建立一条专有的通讯线路,就好比是架设了一条专线一样,但是它并不需要真正的去铺设光缆之类的物理线路。

我们可以把VPN理解成为是建立在实际网络(或物理网络)基础上的一种功能性网络。

它利用低成本的公共网络做为企业骨干网,同时又克服了公共网络缺乏保密性的弱点,在VPN网络中,位于公共网络两端的网络在公共网络上传输信息时,其信息都是经过安全处理的,可以保证数据的完整性、真实性和私有性。

每家公司都有自己的内部网络,而这个网络是封闭的、有边界的。

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

网络通信是采用分层机制实现的,上层的各种应用无法查觉到下层网络的工作方式,所以无论是逻辑上还是物理上只要将两个网络进行直接连连,对于上层应用来讲是没有分别的。

VPN所实现的效果正是将两个物理上分离的网络通过Internet这个公共网络进行逻辑上的直接连接,通过这种方式我们可以无限延伸企业的内部网络,继而使所有用户可以访问相同的资源,使用相同的应用。

VPN的优势之处还在于它可以很好的利用当前既有的Internet线路资源,不再受地域的限制,而对于用户来讲,VPN的工作方式是完全透明的。

VPN可以帮助远程用户、公司分支机构、商业伙伴及供应商同公司的内部网建立可信的安全连接,并保证数据的安全传输。

针对不同的用户要求,VPN有三种解决方案:

远程访问虚拟网(AccessVPN)、企业内部虚拟网(IntranetVPN)和企业扩展虚拟网(ExtranetVPN),分别适用于远程/移动用户访问、连接各个企业内部网络、连接企业内部网与合作伙伴内部网。

1.2VPN种类

1.2.1二层VPNL2TP

该协议是一种工业标准的Internet隧道协议,功能大致和PPTP协议类似,比如同样可以对网络数据流进行加密。

不过也有不同之处,比如PPTP要求网络为IP网络,L2TP要求面向数据包的点对点连接;PPTP使用单一隧道,L2TP使用多隧道;L2TP提供包头压缩、隧道验证,而PPTP不支持。

L2TP协议是由IETF起草,微软、Ascend、Cisco,3com等公司参予制定的二层隧道协议,它结合了PPTP和L2F两种二层隧道协议的优点,为众多公司所接受,已经成为IETF有关2层通道协议的工业标准,基于微软的点对点隧道协议(PPTP)和思科2层转发协议(L2F)之上的,被一个因特网服务提供商和公司使用使这个虚拟私有网络的操作能够通过因特网。

1.2.2三层VPN

三层VPN包含了很多种VPN,标准的IPsecVPN,SSLVPN,GRE隧道VPN,混合VPN等。

企业一般按照自己的需求选择合适的VPN,每种VPN都有自己的优点和缺点。

1)SSLVPN:

SSLVPN指的是基于安全套接层协议(SecuritySocketLayer-SSL)建立远程安全访问通道的VPN技术。

它是近年来兴起的VPN技术,其应用随着Web的普及和电子商务、远程办公的兴起而发展迅速。

2)GRE隧道VPN:

通用路由封装(GRE:

GenericRoutingEncapsulation)在RFC1701/RFC1702中定义,它规定了怎样用一种网络层协议去封装另一种网络层协议的方法。

GRE的隧道由两端的源IP地址和目的IP地址来定义,它允许用户使用IP封装IP、IPX、AppleTalk,并支持全部的路由协议,如RIP、OSPF、IGRP、EIGRP。

通过GRE,用户可以利用公用IP网络连接IPX网络和AppleTalk网络,还可以使用保留地址进行网络互联,或对公网隐藏企业网的IP地址。

3)IPsecVPN:

IPsecVPN是网络层的VPN技术,它独立于应用程序,以自己的封包封装原始IP信息,因此可隐藏所有应用协议的信息。

一旦IPSEC建立加密隧道后,就可以实现各种类型的连接,如Web、电子邮件、文件传输、VoIP等,每个传输直接对应到VPN网关之后的相关服务器上。

IPSEC是与应用无关的技术,因此IPSecVPN的客户端支持所有IP层协议,对应用层协议完全透明,这是IPSECVPN的最大优点之所在。

1.2.3MPLSVPN

MPLS-VPN是指采用MPLS技术在宽带IP网络上构建企业IP专网,实现跨地域、安全、高速、可靠的数据、语音、图像多业务通信,并结合差别服务、流量工程等相关技术,将公众网可靠的性能、良好的扩展性、丰富的功能与专用网的安全、灵活、高效结合在一起,为用户提供高质量的服务。

MPLS-VPN产品可提供从64K-2M-100M的带宽,目前已覆盖全国50多个大中城市,以及香港、台湾、日本、美国、韩国、新加坡、澳大利亚、马来西亚、菲律宾等地,可充分满足大型企业、跨国集团进行全国或全球组网的需求。

二.VPN原理与配置浅析

2.1IPsec协议栈

IPsec结合了三个主要的协议从而组成了一个和谐的安全框架:

--Internet密钥交换(IKE)协议----提供协商安全参数和创建认证密钥的框架。

--ESP(负载安全封装)协议----提供加密,认证和保护数据的框架。

--认证头(AH)协议----提供认证和保护数据的框架。

在这些协议中,IKE和ESP在一起配置.尽管AH也是IPsec协议的一个重要成分。

但不像使用IPsec时那样要做那么多的配置。

一般情况下,AH的很多功能都被嵌入到ESP中了。

IKE协议是负责在二个IPsec对等体间协商一条IPsec隧道的协议,IKE在隧道建立过程中主要完成以下任务:

--协商协议参数

--交换公共密钥

--对双方进行认证

--在交换后对密钥进行管理

IKE也是由三个协议组成:

--SKEME----提供为认证目的使用公开密钥加密的机制

--Oakley----提供在二个IPsec对等体间达成相同加密密钥的基于模式的机制

--ISAKMP----定义了消息交换的体系结构,包括二个IPsec对等体间分组形式和状态转换.

IPsec协议可以完成四个功能:

机密性,完整性,源认证,防重放

2.1.1机密性

1)DES与3DES

DES和3DES是在VPN中非常普遍采用的加密算法。

DES原名Lucifer,是IBM在20世纪70年代初期开发的。

DES是一个块密码加密算法。

他提取一个固定长度的数据块,并使用对称密钥把它转换成同样大小的加密数据块。

这个密钥长度是64位,但是其中8位用来做奇偶效验,所以有效密钥长度位56位。

解密是使用相同的对称密钥对加密的数据块进行一个反过程。

攻破DES还没有找到更容易的方法,但通过使用一种强力攻击,尝试2的55次方种可能的密钥值来猜测使用的密码信息。

也有其他的攻破DES的方法,但是强力攻击应经被证明是最适用的方法。

DES在1998年被一台超级计算机在56小时内攻破,1999年用分布式计算机DES被22小时内攻破。

而且很可能会出现一种专门破解DES的硬件设备,可以在一小时内破解DES加密。

现在DES可以在PC上用40分钟的时间攻破。

为了使DES算法有更强的生命力,NIST在1999年创建了3DES。

理论上3DES是DES的增强版本。

3DES使用了3个阶段的DES,而且更安全。

DES使用了三个不同的56为密钥,被执行了三次,产生一个168位的有效密钥长度,而且没有被攻破。

当前还没有出现可以攻破3DES的超级计算机。

2)AES

NITS在2002年用先进的加密标准AES代替了DES和3DES。

AES是一个对称的数据块密码算法,它支持128、192、256位密钥长度,它在一轮计算中包含4个阶段:

它对128位密钥重复10次,对192位密钥重复12次,对256位密钥重复14次。

即使是这样,因为AES是用有效的方法编写的,它实际上消耗CPU较少。

在执行加密的时候,密钥的大小,和需要CPU的运行时间并没有什么线性关系。

AES是IPsecVPN中最常使用的加密算法,也是对称加密中最安全的算法。

2.1.2完整性数据包认证

数据包认证的实施——散列函数被用于将一个可变长度的输入,例如用户数据或数据包以及一个密钥共同输入一个散列函数来产生一个签名。

输出的是一个固定的长度结果。

散列消息验证码(HMAC)是散列函数的一个子集。

HMAC功能特别开发用于处理和数据及数据包有关的验证问题。

HMAC使用一个共享的对称密钥来产生固定输出,也叫数字签名或手印。

只有知道密钥的一方才能建立并检验发送的数据签名。

1)MD5HMAC

MD5是1994年由RonaldRivest开发的。

MD5创建一个128位的数字签名。

它比SHA更快,但是安全性稍差。

它是目前IT市场上用的最多的HMAC。

2)SHAHMAC

SHA安全的散列算法由NITS开发,在VPN中使用的是SHA-1,它比md5慢,但是更安全,因为它的密钥比较长,它可以有效地防止强大的攻破功能。

2.1.3源认证数据来源认证

1)带外域共享密钥:

最常用的设备验证方法就是带外域共享对称密钥加密认证。

自己的身份信息加上KEY,运行HMAC算法发给对端(签名发给对端)对端把收到的信息用自己的KEY和HMAC算法也算出一个签名,这2个签名如果一样就说明设备验证通过。

一般设备验证的KEY不用做加密,因为加密都是可逆的(对称加密)而HMAC不可逆。

2)域共享非对称加密(加密随机值)

对等体A

交互说明

对等体B

pubA

各自生成公钥

pubB

privA

各自生成私玥

privB

Pub

公钥交换

pubA

产生随机数QQ

随机生成

产生随机数WW

QQ+pubB发给B

MD5哈希并互传

WW+pubA发给A

解密后得到WW

MD5解密

解密后得到QQ

A自己的身份信息加WW加HMAC产生一个签名发给B

B自己的身份信息加QQ加HMAC产生一个签名发给A

A用自己的QQ和信息和HMAC也产生一个签名后

B用自己的WW和信息和HMAC也产生一个签名后

和刚才接收的签名对比如果一样则完成

和刚才接收的签名对比如果一样则完成

3)数字证书(CA)

CA服务器

CA公钥

A

CA私钥

B

A公钥

B公钥

A私钥

B私钥

首先CA把自己的公钥分别给A和B

A和B都有了CA的公钥后,把自己的信息(比如名字和自己的公钥)交给CA

CA把A和B的信息HASHHASH的结果加自己的私钥加密

加密后的结果加A的信息得到A的证书,加B的信息得到B的证书

A获得B的证书

B获得A的证书

A有CA的公钥所以能解出CA里面的东西,这样就说明验证成功。

B有CA的公钥所以能解出CA里面的东西,这样就说明验证成功。

A和B如何确认这个公钥就是CA给的,A和B会把这个CA的公钥HASH了得到一个HASH结果,之后给网管打电话去问看这个结果和CA服务器上的结果是不是一样如果一样则OK,这个叫离线确认

2.1.4防重放

1)AH

IPsec认证头协议(IPsecAH)是IPsec体系结构中的一种主要协议,它为IP数据报提供无连接完整性与数据源认证,并提供保护以避免重播情况。

一旦建立安全连接,接收方就可能会选择后一种服务。

AH尽可能为IP头和上层协议数据提供足够多的认证。

但是,在传输过程中某些IP头字段会发生变化,且发送方无法预测当数据包到达接受端时此字段的值。

AH并不能保护这种字段值。

因此,AH提供给IP头的保护有些是零碎的。

AH可被独立使用,或与IP封装安全负载(ESP)相结合使用,或通过使用隧道模式的嵌套方式。

在通信主机与通信主机之间、通信安全网关与通信安全网关之间或安全网关与主机之间可以提供安全服务。

ESP提供了相同的安全服务并提供了一种保密性(加密)服务,而ESP与AH各自提供的认证其根本区别在于它们的覆盖范围。

特别地,不是由ESP封装的IP头字段则不受ESP保护。

2)ESP

IPsec封装安全负载(IPsecESP)是IPsec体系结构中的一种主要协议,其主要设计来在IPv4和IPv6中提供安全服务的混合应用。

IPsecESP通过加密需要保护的数据以及在IPsecESP的数据部分放置这些加密的数据来提供机密性和完整性。

根据用户安全要求,这个机制既可以用于加密一个传输层的段(如:

TCP、UDP、ICMP、IGMP),也可以用于加密一整个的IP数据报。

封装受保护数据是非常必要的,这样就可以为整个原始数据报提供机密性。

2.1.5Diffie-Hellman算法

对等体1

对等体2

生成随机数P和Q

生成随机数M和N

用PQ生成公钥A和私玥a

用MN生成公钥B和私玥b

对等体1和2互相交换各自公钥

对方的公玥和自己的私玥加起来运行DH算法各得到同一个数ZZ

由ZZ产生对称加密密钥用于DES或md5,而ZZ便是域共享的共享密钥

2.2IPsecVPN配置与高级原理

建立一个IPsecvpn需要分八步:

1)处理设计和策略问题——这里需要布置哪个路由器用于终结IPsec连接,使用哪种IPsec连接,及如何保护IPsec连接。

2)允许IPsec流量——如果在边界设有边界路由器或防火墙需要其执行过滤,则要允许放过IPsec相关流量。

3)配置IKE阶段一,管理连接策略——必须定义IKE阶段一的策略,用于保护两个IPsec设备之间的管理连接通道。

在IKE阶段二管理连接用于建立IPsec数据的链接。

这些策略包括认证类型,它将用于认证对端身份;使用的加密算法;管理连接的生存周期。

4)定义IPsec连接保护何种流量——在Cisco路由器上,一个加密的acl用于定义两个对等体之间的哪些流量被加密。

5)建立转换集——转换集定义了用于IKE阶段二中保护数据流量的协议和算法。

包括认证头协议AH、安全有效负载协议ESP;加密算法包括DES、3DES、AES;散列函数算法包括SHA或md5。

转换集也定义了终结IPsec的方法,是隧道模式或传输模式。

6)建立加密映射——加密映射绑定所有的IPsec组件来建立安全连接,称为安全关联。

包括远程对等体信息,要使用的转换集信息,加密的ACL等

7)激活加密映射——将加密映射在端口上生效。

8)测试并排错IPsec安全连接,产生流量触发IPsec安全连接,来测试连接是否生效。

2.2.1IKE阶段一管理连接

定义IKE阶段一策略:

建立策略cryptoisakmppolicypolicy号,policy号将策略语句绑定到一起,数字越低优先级越高。

该数值在决定两个对等体之间该使用哪种策略起重要作用。

确定要使用哪种策略时,IPsec对等体互相共享它们在IKE阶段一的列表。

然后这些策略按从高到低优先级进行比较。

对等体接受的第一个策略将用于当前的管理连接。

若两个对等体之间没找到匹配策略,则管理连接无法建立,因此数据连接也无法建立。

绑定策略参数:

Router(config)#cryptoisakmppolicy10

Router(config-isakmp)#authentication{pre-share|rsa-sig|rsa-encr}

Router(config-isakmp)#encryption{des|3des|aes}

Router(config-isakmp)#hash{sha|md5}

Router(config-isakmp)#group{1|2|5}

Router(config-isakmp)#lifetime时间

当验证远程IPsec对等体身份时,authentication命令指定了所使用的认证类型。

分别是pre-share域共享密钥;rsa-sig证书和证书权威;rsa-encr加密随即值。

Encryption命令配置了用于管理连接加密信息的加密算法。

默认使用较弱的des加密方式。

Hash散列函数用于验证数据包是否被对等体之间的设备改变过。

Sha更安全,但MD5计算更快捷。

默认使用sha。

Group命令用来定义蒂夫赫尔曼组密钥长度,1为768bit,2为1024bit,5为1536bit。

默认为组1。

默认的管理连接生命周期是86400秒(一天),使用lifetime可以改变这个值。

以上策略对等体两端配置必须一样,否则无法建立管理连接通道。

2.2.2IKE阶段二数据连接

Router(config)#access-list101permitip10.1.1.00.0.0.25520.1.1.00.0.0.255

定义一个感性趣流,决定从哪里到哪里触发IPsecvpn,permit为触发,deny为不触发。

对等体两边的地址信息时反过来的,若不建立感性趣流,IPsec建立无效。

此acl不应用于任何接口,只为激活vpn。

当路由器同时处理NAT和IPsec时,因为对于输出的流量路由器首先执行NAT再进行加密传输。

所以加密acl条目应该写已转换的全局地址。

应用于加密acl的输入流量的规则为:

如果流量应该被保护,也就是被感兴趣流定义,而没有被保护,则路由器丢弃该流量。

如果流量没有设定需要被保护,而且确实没有被保护,则路由器正常转发该流量。

如果流量没有设定要被保护,但它是IPsec流量,则路由器正常转发该流量。

应用于加密acl的输出方向:

如果流量与加密acl条目相匹配,则路由器应用相应的加密映射条目中的信息来保护它。

如果流量与加密acl条目不匹配,则丢弃该流量。

Router(config)#cryptoipsectransfrom-setIKE2esp-desesp-md5-hmac

router(config-crypto-trans)#mode{tunnel|transport}

定义一个转换集,定义了数据流量如何被保护,每个变换集必须有唯一的名称,在本例中使用IKE2。

名称的后面定义了保护的方法。

这些方法是:

安全协议

参数

描述

AH完整性

ah-md5-hmac

使用MD5的AH数据包完整性检测

AH完整性

Ah-sha-hmac

使用SHA的AH数据包完整性检测

ESP完整性

Esp-md5-hmac

使用MD5的ESP数据包完整性检测

ESP完整性

Esp-sha-hmac

使用sha的ESP数据包完整性检测

ESP加密

Esp-null

不使用加密的ESP

ESP加密

Esp-des

使用des加密的ESP

ESP加密

Esp-3des

使用3des加密的ESP

ESP加密

Esp-aes

使用AES加密的ESP

ESP加密

Esp-aes192

使用AES192比特加密的ESP

ESP加密

ESP-aes256

使用AES256比特加密的ESP

mode定义了转换集的链接模式,有隧道模式和传输模式两种,默认是隧道模式。

如图2.2.2-1,当加密点和传输点位于同一个设备位置时为传输模式,当加密点与传输点不在同一位置时为隧道模式。

还有一个区别就是,隧道模式封装时会在数据包中新添加一个ip地址。

而传输模式不会添加。

图2.2.2-1

配置完转换集可以用命令:

showcryptoIPsectransform-set来查看

2.2.3建立加密映射

Router(config)#cryptomapMYMAP10{IPsec-isakmp|IPsec-manul|Cisco}

Router(config-crypto-map)#matchaddress101

Router(config-crypto-map)#setpeer10.1.1.1

Router(config-crypto-map)#settransform-setIKE2

Router(config-crypto-map)#setpfs{group1|group2|group5}

Router(config-crypto-map)#setsecurity-associationlifetimeseconds

Router(config-crypto-map)#setsecurity-associationlifetimekilobytes

加密映射将所有IKE阶段配置组建联系在一起,来建立到远程对等体的被保护数据的连接。

加密映射中必须包含下列信息:

它必须包含远程对等体的ip地址;

它必须包含协商方法,也就是手动或动态isakmp/IKE;

它必须包含应该被保护的流量,既感性趣流;

加密acl不可以在不同加密映射条目间重叠;

远程对等体至少包含一个相同的转换集;

对于一个IPsec连接,如果没有这

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 解决方案 > 解决方案

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1