GET-VPN介绍

一、  GET VPN简介
网络已经成为了一个成功的企业的生命线,并且网络具有已经成为了具有战略意义的资产。在现今的网络中,网络不仅仅要保证重要业务的运行,同时也要保证新兴业务的正常运行如承载在IP网络上的语音和视频业务。分布式计算,语音和视频等业务需要随时随地的在分支机构间的网络中运行。基于以上的需求,传统意义上的Hub-Spoke结构的网络已经显示出了不足之处。企业需要在自己的专线网络中和VPN网络中保证任意节点之间的自由连通。
CISCO IOS提供了多种基于IPSec隧道的加密解决方案,但是这些传统意义上的VPN技术,皆为点到点的隧道结构。但是,实施一个全互联或者半互联的网络架构,为传统意义上的IPSEC隧道解决方案的实施造成了很大的麻烦。比如说复杂的互联结构消耗更多网络设备的CPU和内存资源,并且给管理员造成了很大的维护困难。在某些情况下,管理员使用DMVPN来简化站点间的VPN设计。然而,DMVPN需要在底层的路由结构上覆盖运行另一层路由结构,使得站点间的路由信息不一定是最优选的路由信息,同时DMVPN也缩减了基础的VPN网络设计的灵活性。
同时传统意义上的点到点IPSec隧道技术,对组播技术的支持也并不是十分的完善。
基于上述的原因,Cisco提出了一种名为组加密传输VPN的技术。
其中CISCO的组加密传输VPN提出了一个名叫信任组的概念,不再使用点到点隧道来承载路由信息。而是由所有的组成员(GMs)共享一个公用SA,在这里可以理解为一个组SA。这个特性将允许组内的成员解密其他成员发送过来的加密流量。同一个组的成员间不再需要协商点到点的IPSEC隧道。
IETF标准化文档RFC 3547中的组解释域Group Domain of Interpretation (GDOI)是GETVPN的最主要的部分。
GET VPN技术是公有开放标准和Cisco私有技术的结合产物,该技术发挥了底层MPLS和共享网络的优势。
二、  GETVPN的优势
GET VPN具有以下几个优势:
l 为任意节点间瞬时大范围的IP通信提供了安全范本。
l 只需利用基础的IP路由结构,而不需要在基础结构上构建另一层路由结构。
l 与传统的IPSec隧道技术相比,GET VPN技术提供了与组播技术的无缝结合。
l 通过使用加密和封装技术保护了源地址和目的地址之间的通信,同时也可以很好的与QOS等技术协同工作。
三、  GET VPN技术关键字
GETVPN技术分为以下几个核心组件:
l GDOI (RFC 3547)
l Key servers (KSs)
l Cooperative (COOP) KSs
l GMs
l IP tunnel header preservation
l Group security association
l Rekey mechanism
l Time-based anti-replay (TBAR)
我们对这些关键字进行一一的介绍:
GDOI:
GDOI组密钥管理协议为一组设备提供了加密密钥和策略的集合。在GET VPN的网络中,GDOI分配一个公钥到组内的其他VPN网关,来确保通信的安全性。组中的所有VPN网关使用一种叫做rekey的方法来定期的更新密钥。
GDOI协议受阶段1的IKE SA保护。所有的VPN网关必须使用IKE进行认证。并且支持所有的IKE认证方法(PSK,PKI)。当VPN网关被认证和通过IKE SA获得密钥后,IKE SA条目超时后,GDOI通过灵活有效的方法更新组成员。
GDOI包含两种不同的加密密钥,其中名为KEK的密钥用来保护GET VPN的控制层面,另
外一种名为TEK的密钥用来加密数据流。
IP tunnel header preservation:tek-081
传统意义上的IPSEC,隧道端点的地址被作为新的IP包的源和目的。数据包使用加密端的物理接口地址作为源地址,使用解密端的物理接口地址作为目的地址在IP网络上进行路由(隧道模式)。在GET VPN解决方案中,IPSEC保护的数据包将原数据包中的源地址和目的地址复制一份作为整个IP包头中的地址。
GET VPN数据包结构带来的最大优越性表现在可以使用底层的网络对GET VPN的数据包进行路由,分支机构中的高可用性技术可以和GET VPN解决方案无缝结合(如双接入点双链路等),不在需要在IPSec层面上实施高可用性的技术(如双HUB点,状态型高可用性IPSEC技术等)。
Key servers (KSs)
通常情况下IOS设备作为一个Key Server负责创建和维护GET VPN的控制层面。所有的加密策略包括:感兴趣流,加密协议,SA,rekey间隔等等,都需要在KS上进行统一的定义并在组成员想KS注册的时候将策略推送给组成员。
GET VPN是通过KS使用IKE第一阶段来认证组成员,组成员在认证通过后将key和加密策略下载到组成员本地。KS同时负责Key的刷新和分发。
和传统的IPSEC解决方案不同的是,GET VPN的感兴趣流是通过ACL方式定义在KS上,无论GMs是否和KS属于同一个子网内,该ACL都可以被下载到GMs路由器上。在定义感兴趣流的ACL时,建议将GM成员的网络汇总为尽可能的少的条目。例如如果组成员的网络都位于10.0.0.0/8的网络中(10.1.1.0/24,10.1.2.0/24等),最好将感兴趣流定义为permit 10.0.0.0/8 to 10.0.0.0/8”,而不是10.1.1.0/24 to 10.1.2.0/24。非对称的策略将导致ACL条目数量过于庞大,在这种情况下,为大多数组成员定义一个聚合策略是比较理想的策略实现方式。最少条目的聚合策略是permit ip any any,该策略加密GMs之间通信的流量,因此很多时候,我们需要定义排除的列表(使用Deny选项)使某些不需要与其他组成员通讯
的数据不进行加密传输。
GMs:
前面已经提到,加密策略主要定义在KS上,当组成员向KS注册时下载这些策略到GM成员的本地,而作为组成员来说,只需要定义IKE的第一阶段和GDOI组信息。基于这些下载的加密策略,GM成员决定哪些流量将被加密和被解密,以及使用什么样的key等。但是,在某些情况下,GM成员可以配置本地的策略来覆盖通过KS得到的策略。例如,在组中的几个成员间运行了路由协议,而这些参加路由协议的流量必须避开加密策略,这个时候我们需要在这些组成员上定义一些策略条目来避开全局的策略。
Group SA:
和传统的IPSEC解决方案不同的是,GET VPN使用组SA的概念。所有GET VPN组内成员间的互相通信使用统一的加密策略和一条公共的SA。有了这些公共的策略,组成员间将不必再协商IPSEC隧道,这减少了路由器的资源消耗。
Rekey Process
以上我们提到,KS不仅仅负责创建加密策略和key,同时也负责更新和分发新key到组成员。当已存在的key超时后,KS将分发新的key到组成员,这个过程就被称为rekey进程。GET VPN支持两种类型的Rekey消息:单播和组播。
如果组成员不能从KS处收到rekey消息(例如KS服务器down或者网络中断),GM将在已存在的IPSEC SA超时前60秒尝试向KS进行注册。如果注册成功,则组成员通过重注册过程收到新的SA并且流量不会产生中断。如果注册不成功,则组成员会每间隔10秒尝试向KS重试三次,如果依然不成功则在已存在的IPSEC SA超时前20秒时,尝试向其他已定义的KS注册。
Unicast Rekey
在单播Rekey的过程中,KS生成一个rekey消息并且将这个消息复制发送给每一个组成员。当组成员收到该消息后,返回一个ACK消息给KS。该机制不仅能确定在KS上注册的活跃组成员是正确的,同时也能确定rekey消息只发送给了活跃的组成员。
KS在网络出现短暂中断的时候,会对Rekey数据包进行重传。如果GM在KS发出的三次rek
ey的过程中不能响应,则KS会将该GM从活跃的GM数据库中移除,并停止向该GM发送rekey消息。
Multicast Rekey
在组播Rekey的过程中,KS创建一个rekey消息并发送该消息到预先配置好的组播组地址。每一个加入这个组播组的GM,在向KS注册的时候都会受到这个rekey消息的拷贝。
和单播rekey过程不同的是,组播rekey没有ACK的机制。KS不会维护一个活跃的GM数据库。和单播rekey过程相同的是,KS会对Rekey数据包进行重传,已防止短暂的网络中断。
为了使用组播方式的rekey,必须在核心的网络上打开组播功能。
COOP KSs
KS在整个GET VPN中扮演着最重要的角,KS维护着整个GET VPN的控制层面。因此,仅有一台KS时有可能会在VPN网络中造成单点故障。GET VPN支持多个KS服务器,称之为COOP KSs,用来确保如果主KS失效或者不可达的时侯,GET VPN的控制层面可以使主KS失效时无缝切换到其他的KS。
一个组成员可以配置多个活跃KS服务器,GM会对这个列表进行递归查询。
COOP协议配置在每一个GDOI的基本组内,一个KS可以配置多个GDOI组用来维护多个KSs所关联的不同的COOP列表。
当COOP KSs启动后,所有的KSs都被假设为处于备用状态并开始选举主KS。优先级最高的KS被选举为主KS,同时其他的KS都被置于备用状态。主KS用来创建和分发组策略到所有的GM,并且和其他的COOP KSs进行周期性的同步。
COOP KSs之间交换一种单向的消息通告(从主KS到备用KS)。如果一个备用的KS在一段时间内不能收到主KS发送来的消息,备用的KS将尝试联系主KS并请求更新消息。如果主KS没有响应,则COOP KSs间重新开始选举,直到一个新的主KS被选举出来。
建议在Coop KS内部配置DPD特性,该特性可以使主KS跟踪和显示其他的备用KS的状态。但是需要注意的是在GM和KS之间该功能不是必须的同时也不支持该功能。
Time Based Anti-Replay
在传统的IPSEC vpn解决方案中,防止回放攻击的能力可以防止第三方恶意攻击对IPSEC站点间IPSEC包进行抓包并回放从而造成的DOS攻击。传统的IPSEC VPN解决方案使用基于滑动窗口的计数器:发送者发送使用连续数值的数据包,接收者视同滑动窗口来确定这个包是否是被允许。
我们使用一种新的方法称为基于时间的反回放攻击来保护网络不受第三人的攻击。TBAR在KS上维护一个虚构的时间,所带来的其中一个优点就是不需要在GET VPN的设备间使用NTP来同步时间。主KS为整个组建立并维护一个虚构的时间。主KS会在GM进行rekey更新的时候与GM成员进行虚构时间的同步。每一个GM成员都在数据包内包含一个虚构的时间戳。接收数据包的VPN网关会将数据包内的时间戳和自身与KS同步得到的时间戳进行比较,如果数据包内的时间戳比较晚,则丢弃该数据包。

本文发布于:2024-09-21 05:43:12,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/4/349365.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:网络   策略   使用   加密   技术
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议