|
发表于 2006-1-6 00:52:30
|
显示全部楼层
|阅读模式
来自 中国–新疆–乌鲁木齐
VPN技术
1. 如何定义vpn:
利用公共网络来构建的私人专用网络称为虚拟私有网络(VPN,Virtual Private Network),用于构建VPN的公共网络包括Internet、帧中继、ATM等。在公共网络上组建的VPN象企业现有的私有网络一样提供安全性、可靠性和可管理性等。
“虚拟”的概念是相对传统私有网络的构建方式而言的。对于广域网连接,传统的组网方式是通过远程拨号连接来实现的,而VPN是利用服务提供商所提供的公共网络来实现远程的广域连接。通过VPN,企业可以以明显更低的成本连接它们的远地办事机构、出差工作人员以及业务合作伙伴、企业内部资源享用者只需连入本地ISP的POP(Point Of Presence,接入服务提供点)即可相互通信;而利用传统的WAN组建技术,彼此之间要有专线相连才可以达到同样的目的。虚拟网组成后,出差员工和外地客户只需拥有本地ISP的上网权限就可以访问企业内部资源; 如果接入服务器的用户身份认证服务器支持漫游,甚至不必拥有本地ISP的上网权限。这对于流动性很大的出差员工和分布广泛的客户与合作伙伴来说是很有意义的。并且企业开设VPN服务所需的设备很少,只需在资源共享处放置一台VPN服务器就可以了。
2. vpn的分类:
VPN分为三种类型:远程访问虚拟网(Access VPN)、企业内部虚拟网(Intranet VPN)和企业扩展虚拟网(Extranet VPN),这三种类型的VPN分别与传统的远程访问网络、企业内部的Intranet以及企业网和相关合作伙伴的企业网所构成的Extranet相对应
3. vpn设计原则:
VPN的设计包含以下原则:安全性、网络优化、VPN管理等。
在安全性方面,由于VPN直接构建在公用网上,实现简单、方便、灵活,但同时其安全问题也更为突出。企业必须确保其VPN上传送的数据不被攻击者窥视和篡改,并且要防止非法用户对网络资源或私有信息的访问。Extranet VPN将企业网扩展到合作伙伴和客户,对安全性提出了更高的要求。
在网络优化方面,构建VPN的另一重要需求是充分有效地利用有限的广域网资源,为重要数据提供可靠的带宽。广域网流量的不确定性使其带宽的利用率很低,在流量高峰时引起网络阻塞,产生网络瓶颈,使实时性要求高的数据得不到及时发送;而在流量低谷时又造成大量的网络带宽空闲。QoS通过流量预测与流量控制策略,可以按照优先级分配带宽资源,实现带宽管理,使得各类数据能够被合理地先后发送,并预防阻塞的发生。
在VPN管理方面,VPN要求企业将其网络管理功能从局域网无缝地延伸到公用网,甚至是客户和合作伙伴。虽然可以将一些次要的网络管理任务交给服务提供商去完成,企业自己仍需要完成许多网络管理任务。所以,一个完善的VPN管理系统是必不可少的。VPN管理的目标为:减小网络风险、具有高扩展性、经济性、高可靠性等优点。事实上,VPN管理主要包括安全管理、设备管理、配置管理、访问控制列表管理、QoS管理等内容。
4. vpn是协议
要使数据顺利地被封装、传送及解封装,通信协议是保证的核心。目前 VPN 隧道协议有 4 种:点到点隧道协议 PPTP 、第二层隧道协议 L2TP 、网络层隧道协议 IPSec 以及 SOCKS v5 ,它们在 OSI 七层模型中的位置如表所示。各协议工作在不同层次,无所谓谁更有优势。但我们应该注意,不同的网络环境适合不同的协议,在选择 VPN 产品时,应该注意选择。
1 .点到点隧道协议 ―PPTP
PPTP 协议将控制包与数据包分开,控制包采用 TCP 控制,用于严格的状态查询及信令信息;数据包部分先封装在 PPP 协议中,然后封装到 GRE V2 协议中。目前, PPTP 协议基本已被淘汰,不再使用在 VPN 产品中。
2 .第二层隧道协议 ―L2TP
L2TP 是国际标准隧道协议,它结合了 PPTP 协议以及第二层转发 L2F 协议的优点,能以隧道方式使 PPP 包通过各种网络协议,包括 ATM 、 SONET 和帧中继。但是 L2TP 没有任何加密措施,更多是和 IPSec 协议结合使用,提供隧道验证。
3 . IPSec 协议
IPSec 协议是一个范围广泛、开放的 VPN 安全协议,工作在 OSI 模型中的第三层 ―― 网络层。它提供所有在网络层上的数据保护和透明的安全通信。 IPSec 协议可以设置成在两种模式下运行:一种是隧道模式,一种是传输模式。在隧道模式下, IPSec 把 IPv4 数据包封装在安全的 IP 帧中。传输模式是为了保护端到端的安全性,不会隐藏路由信息。 1999 年底, IETF 安全工作组完成了 IPSec 的扩展,在 IPSec 协议中加上了 ISAKMP 协议,其中还包括密钥分配协议 IKE 和 Oakley 。
OSI七层模型 安全技术 安全协议
应用层表示层 应用代理
会话层传输层 会话层代理 SOCKSv5/SSL
网络层数据链路层物理层 包过滤 IPSec
PPTP/L2F/L2TP
隧道协议在 OSI 七层模型中的位置
4、IPSec 的安全性描述
IPSec ( 1P Security )产生于 IPv6 的制定之中,用于提供 IP 层的安全性。由于所有支持 TCP / IP 协议的主机进行通信时,都要经过 IP 层的处理,所以提供了 IP 层的安全性就相当于为整个网络提供了安全通信的基础。鉴于 IPv4 的应用仍然很广泛,所以后来在 IPSec 的制定中也增添了对 IPv4 的支持。
最初的一组有关 IPSec 标准由 IETF 在 1995 年制定,但由于其中存在一些未解决的问题,从 1997 年开始 IETF 又开展了新一轮的 IPSec 的制定工作,截止至 1998 年 11 月份主要协议已经基本制定完成。不过这组新的协议仍然存在一些问题,预计在不久的将来 IETF 又会进行下一轮 IPSec 的修订工作。
5、IPSec 基本工作原理
IPSec 的工作原理(如下图所示)类似于包过滤防火墙,可以看作是对包过滤防火墙的一种扩展。当接收到一个 IP 数据包时,包过滤防火墙使用其头部在一个规则表中进行匹配。当找到一个相匹配的规则时,包过滤防火墙就按照该规则制定的方法对接收到的 IP 数据包进行处理。 这里的处理工作只有两种:丢弃或转发。
IPSec 通过查询 SPD ( Security P01icy Database 安全策略数据库)决定对接收到的 IP 数据包的处理。但是 IPSec 不同于包过滤防火墙的是,对 IP 数据包的处理方法除了丢弃,直接转发(绕过 IPSec )外,还有一种,即进行 IPSec 处理。正是这新增添的处理方法提供了比包过滤防火墙更进一步的网络安全性。
进行 IPSec 处理意味着对 IP 数据包进行加密和认证。包过滤防火墙只能控制来自或去往某个站点的 IP 数据包的通过,可以拒绝来自某个外部站点的 IP 数据包访问内部某些站点,.也可以拒绝某个内部站点方对某些外部网站的访问。但是包过滤防火墙不能保证自内部网络出去的数据包不被截取,也不能保证进入内部网络的数据包未经过篡改。只有在对 IP 数据包实施了加密和认证后,才能保证在外部网络传输的数据包的机密性,真实性,完整性,通过 Internet 进新安全的通信才成为可能。
IPSec 既可以只对 IP 数据包进行加密,或只进行认证,也可以同时实施二者。但无论是进行加密还是进行认证, IPSec 都有两种工作模式,一种是与其前一节提到的协议工作方式类似的隧道模式,另一种是传输模式。
传输模式,如图 2 所示,只对 IP 数据包的有效负载进行加密或认证。此时,继续使用以前的 IP 头部,只对 IP 头部的部分域进行修改,而 IPSec 协议头部插入到 IP 头部和传输层头部之间。
主机包头数据
↓
主机包头 AH ESP 数据
隧道模式,如图 3 所示,对整个 IP 数据色进行加密或认证。此时,需要新产生一个 IP 头部, IPSec 头部被放在新产生的 IP 头部和以前的 IP 数据包之间,从而组成一个新的 IP 头部。
主机包头数据
↓
安全网关IP包头 AH ESP主机 IP包头 数据
IPSec 中的三个主要协议
前面已经提到 IPSec 主要功能为加密和认证,为了进行加密和认证 IPSec 还需要有密钥的管理和交换的功能,以便为加密和认证提供所需要的密钥并对密钥的使用进行管理。以上三方面的工作分别由 AH , ESP 和 IKE 三个协议规定。为了介绍这三个协议,需要先引人一个非常重要的术语 SA ( Securlty Association 安全关联)。所谓安全关联是指安全服务与它服务的载体之间的一个“连接”。 AH 和 ESP 都需要使用 SA ,而 IKE 的主要功能就是 SA 的建立和维护。只要实现 AH 和 ESP 都必须提供对 SA 的支持。
通信双方如果要用 IPSec 建立一条安全的传输通路,需要事先协商好将要采用的安全策略,包括使用的加密算法、密钥、密钥的生存期等。当双方协商好使用的安全策略后,我们就说双方建立了一个 SA 。 SA 就是能向其上的数据传输提供某种 IPSec 安全保障的一个简单连接,可以由 AH 或 ESP 提供。当给定了一个 SA ,就确定了 IPSec 要执行的处理,如加密,认证等。 SA 可以进行两种方式的组合,分别为传输临近和嵌套隧道。
1 . ESP ( Encapsulating Secuity Fayload )
ESP 协议主要用来处理对 IP 数据包的加密,此外对认证也提供某种程度的支持。 ESP 是与具体的加密算法相独立的,几乎可以支持各种对称密钥加密算法,例如 DES , TripleDES , RC5 等。为了保证各种 IPSec 实现间的互操作性,目前 ESP 必须提供对 56 位 DES 算法的支持。
ESP 协议数据单元格式三个部分组成,除了头部、加密数据部分外,在实施认证时还包含一个可选尾部。头部有两个域:安全策略索引( SPl )和序列号( Sequencenumber )。使用 ESP 进行安全通信之前,通信双方需要先协商好一组将要采用的加密策略,包括使用的算法、密钥以及密钥的有效期等。“安全策略索引”使用来标识发送方是使用哪组加密策略来处理 IP 数据包的,当接收方看到了这个序号就知道了对收到的 IP 数据包应该如何处理。“序列号”用来区分使用同一组加密策略的不同数据包。加密数据部分除了包含原 IP 数据包的有效负载,填充域(用来保证加密数据部分满足块加密的长度要求)包含其余部分在传输时都是加密过的。其中“下一个头部( Next Header )”用来指出有效负载部分使用的协议,可能是传输层协议( TCP 或 UDP ),也可能还是 IPSec 协议( ESP 或 AH )。
通常, ESP 可以作为 IP 的有效负载进行传输,这 JFIP 的头 UKB 指出下广个协议是 ESP ,而非 TCP 和 UDP 。由于采用了这种封装形式,所以 ESP 可以使用旧有的网络进行传输。
前面已经提到用 IPSec 进行加密是可以有两种工作模式,意味着 ESP 协议有两种工作模式:传输模式( Transport Mode )和隧道模式( TunnelMode )。当 ESP 工作在传输模式时,采用当前的 IP 头部。而在隧道模式时,侍整个 IP 数据包进行加密作为 ESP 的有效负载,并在 ESP 头部前增添以网关地址为源地址的新的 IP 头部,此时可以起到 NAT 的作用。
2 . AH ( Authentication Header )
AH 只涉及到认证,不涉及到加密。 AH 虽然在功能上和 ESP 有些重复,但 AH 除了对可以对 IP 的有效负载进行认证外,还可以对 IP 头部实施认证。主要是处理数据对,可以对 IP 头部进行认证,而 ESP 的认证功能主要是面对 IP 的有效负载。为了提供最基本的功能并保证互操作性, AH 必须包含对 HMAC-SHA 和 HMAC- MD5 ( HMAC 是一种 SHA 和 MD5 都支持的对称式认证系统)的支持。
AH 既可以单独使用,也可在隧道模式下,或和 ESP 联用。
3 . IKE ( Internet Key Exchange )
IKE 协议主要是对密钥交换进行管理,它主要包括三个功能:
? 对使用的协议、加密算法和密钥进行协商。
? 方便的密钥交换机制(这可能需要周期性的进行)。
? 跟踪对以上这些约定的实施。 |
|