周雍恺:面向金融的软件定义网络安全探索

谢谢大家,感谢主办方提供这样的交流学习机会,我是周雍恺,目前在中国银联电子商务与电子工程国家实验室做博士后研究。今天主要想作一个金融云网络安全的分享。上午平安的专家已经对金融云做了一个非常精采的报告。我的报告将侧重于安全方面。

首先我们此次是一个云数据中心的专场,因此我会首先介绍一下银联云平台与云网络的建设情况,其次是对于SDN安全的研究思路,之后对几个研究点做一下报告。

首先看一下银联云,银联其实很早就开始建云,在2011年的时候当时基于OpenStack E版本做了定制化的应用和开发。一开始先是进行了一些试点化的应用,之后在2014年的时候进入了大规模的应用,并在当年移交给了生产部门。目前我们研究院维护了一朵小云,这朵小云主要是做一些金融创新方面的服务,包括金融大数据试点开放,以及目前非常火的区块链业务,提供一个快速部署的支撑;同时也会做下一代云平台架构的验证与研究。

然后讲一下我们云网络的增强需求,其实OpenStack做的太早也并不总是好事,因为当时E版本的时候,连Quantum、Neutron组件都没有,当时网络方面只能采用稍微简单的方法,也就是把交换机的Trunk口打开,直接形成了一个平整的大二层网络,这样虚拟机之间就可以漂移。现在由于我们的网络业务越来越多样化,当前这个平台已经难以适应今后的需求。我们再看一下金融行业务转型的趋势,第一个首先面向互联网化的业务将会越来越多,以银联为例,一个比较重要的应用是银联钱包,这上面经常会有一些秒杀的活动,6块2抢100元电话充值卡等;另外还有云闪付,就是把我们的银行卡模拟到手机之中,今后我们在消费的时候直接刷手机就可以了,其实这是一个很大的体系,包括我们现在的ApplePay,三星Pay,华为Pay以及安卓上面的HCE都是在这个体系之下的。

第二大特点今天上午平安的专家也已经提到了,是面向外部机构提供金融云的一个服务:首先是中小金融机构有IT托管的需求,其次呢,像平安这种比较大的机构,他可能下面还会有平安证券,平安银行,平安保险等,像这类混业经营的情况不可能为每个都重建一个数据中心。

最后一点组网技术要求自主可控,这个是国家目前对金融、能源等大行业的要求。

基于以上的分析,我们形成了下一代面向金融的SDN网络建设的5点需求:首先是网络资源的集约化利用,要按需组网,第二支持未来行业云的应用场景,第三要求组网能够敏捷高效合规,第四SDN能够支持金融异地灾备和高可用的场景,第五,统一编排多种SDN方案。为此我们进行了一系列基于SDN方案的测试,将它们部署在不同的OpenStack区域中。

回到我们SDN安全这个主题。这张片子是SDN的概述,我想在此就不再赘述了,唯一需要强调的一点,很多人在问,SDN和传统的网络自动化到底有什么区别?我们认为,SDN可能更多的还是一个全网的视角,每一个操作都是面向全网的进行的。另外SDN还可以感知全网络的状态,如果出现异常的话,这些网络之间,他是能够把异常情况进行自动化的反馈和回调的,而这点是自动化脚本很难做到的。因此我们认为SDN它本质上是一个网络架构上的创新,能够使得网络的能力得到最大的程度的挖掘与灵活应用。

SDN在网络安全中有哪些应用呢?以前做网络隔离的话,是直接用物理隔离,现在是虚拟化的隔离。从前,我们会使用很多专用的硬件安全设备,现在的话,则是虚拟化的安全网元,这个其实是NFV的话题。当然某些安全网元如果是一些比较简单功能的防火墙或者负载均衡,也是可以通过SDN方法实现的。安全控制方面,以前是网工手动配置五元组,在SDN化的网络安全中,则是定义一个更高层次的抽象,基于安全组来进行配置,可以做更细粒度的网络规则定义。最后是网络的变更,从前做一次网络变更非常费时,而且需要长时间论证分析,在SDN化的网络安全中,网络策略是模版化的,SDN可以自己根据规则来进行推导,这样子就可以保证网络策略前后的一致性。因此SDN技术,他能够提升网络安全的运维能力,实现精细化的网络管控,保证网络变更前后场景的策略一致性。

其次讲一下我们软件定义网络安全的研究思路。其实最主要的就是两大类研究问题,第一类是SDN技术能否用于增强现有网络的安全性,第二个SDN会否引入新的安全风险。因此我们这个课题其可以为两部分,第一个是利用SDN的技术增强金融云网络的安全与可靠性,第二点就是SDN架构的安全风险评估及防控方法研究。接下来我会针对上述两个问题的几个研究点进行介绍。其一针对数据中心内部的组网优化,其次是针对数据中心之间的虚拟组网,第三个是SDN自身的安全增强。

首先看一下数据中心内部组网优化。现有的安全其实是基于安全区域的一种组网方式,每个区域长的模样都差不多,首先是区域汇聚,之后是硬件的防火墙,再上联到整个数据中心的交换核心。它们之间的链路是严格冗余互备的。最开始这样的组网方法有他的优点:结构化,模块化非常好,如果需要新建一个区域的话,就按照相同的方式来打造。但是这种方式在目前的云化场景中出现了很多的局限性,首先是每个区域其实都是很贵的,这些汇聚交换机以及硬件的防火墙,它们的成本都非常高,但是我们实际应用下来发现每个区域资源利用率往往并不高,所以很容易形成资源竖井。第二是由于现在的业务上线的非常频繁,这种基于区域级的隔离粒度目前已经显得有点粗了,区域内部其实很少有安全方面的控制。

因此我们针对数据中心的内部组网提出了大区模式的优化,什么是大区模式呢?从理论上来说,今后数据中心内部的组网,应该可以只分为两个区,一个是面向外部连接的DMZ大区,另一个是面向后台内部应用的APP大区, 这两个大区之间通过硬件防火墙来进行一个隔离,这是为了满足监管合规的要求。其他区域都可以归并到这两个大区之中。这样的模式如果要得以实现,对我们提出了两个问题,其一是这些区域之间的虚拟隔离如何做到,如何做到软件化的隔离。第二个就是APP大区和DMZ大区之间虽然是隔离的,但是他的互通性该如何实现。

首先看虚拟隔离。我们还是采用主流的Overlay技术,利用Vxlan隧道可以支持多租户的组网,而且地址可以复用,还可以在全网中进行漂移。这样的方式是如何做到安全的隔离呢?其实它是一个很自然的过程,因为我们可以为每个应用分配一个VXlan网络,这样隔离粒度就可以精细到应用级别。第二个问题如何做到原来的链路高可用,SDN的方式下,是采用SDN控制器来定时地检测链路的状态,一旦链路状态出现异常,则立刻下发流表进行链路切换。请注意这里的异常是通过软件化的方式进行定义的,链路异常的判定规则可以由运维人员自设定,这样可以防止假死的现象,因为以前基于硬件高可用的方式,只有当网络完全断了之后他才会进行切换,遇上时断时续的情况是无法进行切换的。从这两点看起来,整个用虚拟组网的方式,他的安全性,相对原有硬隔离的方式,反而不降反增了,一开始是个很意外的结果,其实细想下来也是很简单,我们通过Overlay的方式把网络软化、弹性化了,这样子做安全就会变得非常简单。Overlay真正的难点还是在于性能的调优、服务质量的保障等。好在我们今天只讨论安全的问题,其他的问题就暂时先不考虑了。

第二个问题,就是之前说到的两个硬件大区,硬隔离的大区之间如何做到网络互通,这个其实带出来另外一个问题,也即这两个大区我们肯定采用不同的SDN方案,如何使这两套SDN隔离的区域可以进行互通,并且进行一个统一的管理。这两天大家都在谈Orchestration,我们采用的方法是把这两个大区的交换矩阵部署到同一个OpenStack的不同Region,每个Region有独立的Nova与Neutron,每个Neutron可以对接不同的SDN方案。如此就剩下最后一个问题,这两个大区之间如何进行网络联通。我们想出来两个方案,方案一比较直观,直接通过一个浮动IP的方式,也即APP大区我们直接影射一个Underlay地址出来,这样DMZ大区就可以访问了。但是运维人员表示很难接受,因为这样子的话会额外多出一套地址空间。于是就有了第二套方法,也即Overlay的方法,首先在区域的出口路由器所在的物理机上面打通一条Vxlan隧道,其次在Ra,Rb上配置到对方的虚拟路由。这样子的好处就是对租户来说透明了,但是也出现了另外一个问题,硬隔离的流量发生了变化,变成了带Vxlan封装的UDP报文,这样的话防火墙就形同虚设,可能需要更换一个能够支持Vxlan解析的硬件的防火墙。总而言之这两种方案各有千秋吧。

第二个研究点是数据中心间的互联。对于金融数据中心而言,其数据中心之间的网络,最典型的就是两地三中心的物理架构,也即同城双活,异地灾备这样的一个高可用的模式,外部机构通过专线进行接入。未来的话,我们要打造面向行业云的两地三中心服务。基本思想还是依托于我们现有的物理设施,只不过对于未来的租户而言,他们也能看到一套完整的两地三中心的视图,这也就是我们所谓虚拟化两地三中心的一个设想。对于租户而言,他确实能够把应用部署在两个地方,比如布在上海和布在北京,而且可以双活的,出了问题也是可以切换的。我们认为今后的行业云应该是这样的一种模式。当然其中所涉及的安全问题,也有一些,但是不多,主要是如何进行异地的高可用切换,如何安全地复用专线、如何防止内部的ddos攻击等等。这是一个我们设想的组网的架构,数据平面还是通过原有的专线来进行互联,控制平面上的话,是通过MP-BGP联合,将租户之间的控制信息进行同步,之后还有广域网区,我们希望能够利用SDWan的技术来提高可靠性和资源的利用效率。

最后一个讲一下SDN自身的安全性的问题。首先我们看一下SDN架构,其相对于传统网络最大的变化,就是引入了一个中心化的SDN控制器,由此形成了北向和南向的两条链路。因此对SDN自身的安全,主要是对这几个新引入的部分进行增强。北向接口部分主要是一个API安全调用的问题;控制器应该是最核心的部分,它当中涉及的问题比较多,包括控制器的高可用设计,然后控制器的代码是否安全,还有控制器的访问控制;对于南向链路而言,SDN交换机和控制器之间我们认为应该有一个双向的认证,同时根据合规的要求看是否还需要加密。另外还有一个软件网元的安全性,这其实是NFV方面的事情,今天由于时间限制,有很多问题,包括安全监控方面的问题,可能不一定有时间分享了。还是转到对于SDN它自身增强的话题。我们采取的方法主要是两步。首先是金融行业,因为目前有自主可控的要求,所以将来会大规模采用开源软件,像SDN当中所涉及的开源软件就非常多,我们对开源软件的评估初步形成了一套方法论,涉及到11类的评估条件,其中我们可以看到,安全性和可靠性也是非常重要的一个指标。其次是对于它的安全增强,我们还是采用金融行业比较传统的一种信息安全工程管理的方法,主要是一开始先制定一个风控模型,以及列出现有的可能的一些防控手段,再制定出安全的指标,随后通过测试评估,以及组合形成防护方案,他们之间不断迭代,来判断是否能够达到合规的要求。

做一下简单的小结,今天主要讲了三个研究点,其一是数据中心内部的组网,我们主要的结论就是说可以把原来基于区域级的安全细化到应用级的安全,粒度可以更加细化;第二个大区之间互通所带出来的一个问题,就是解决了我们比较头疼的厂商绑定的问题,他可以统一编排多种SDN的方案。第二个是数据中心之间的组网,我们认为将来的组网模式可能是虚拟化的两地三中心模式,目前厂商推介的一些SDN方案,主要还是集中在单数据中心的虚拟化,今后在这方面,我觉得要继续研究增强。第三个就是SDN自身安全的一个增强,我们主要是通过开源软件的能力成熟度评估,还有安全工程的方法,来对新引入的安全风险点进行防护和加固。总而言之,我觉得网络安全性和可用性,他们之间的关系一直是比较复杂的,以前可能认为他们之间是矛盾的。因为要么不用是最安全的,要么必须把权限全部放开,才可以实现虚拟机之间的漂移。但是SDN出来之后,SDN最大的效果,就是增强了网络的可管理性,因此我们认为,它也能够强化原有的安全运维,可以把安全运维做到更加细致,因此我们认为他们之间又是一个相辅相成的关系。当然所有的这一切,都需要建立在SDN架构它自身的安全性之上,因此SDN自身的安全性也是整体安全的重要的基础。

最后,做一个简单的小广告,今天正好是6月2号,大家可以发现我们手上的银联卡,一般都是以62开头的,所以银联一般在6月2号左右搞大型的活动,今年主要推闪付卡和手机云闪付,据说可以优惠达到62折,晚上购物或者吃饭的时候请记得刷银联卡,谢谢大家!


  • 本站原创文章仅代表作者观点,不代表SDNLAB立场。所有原创内容版权均属SDNLAB,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用,转载须注明来自 SDNLAB并附上本文链接。 本站中所有编译类文章仅用于学习和交流目的,编译工作遵照 CC 协议,如果有侵犯到您权益的地方,请及时联系我们。
  • 本文链接https://www.sdnlab.com/17033.html
分享到:
相关文章
条评论

登录后才可以评论

SDNLAB君 发表于16-06-03
0