构建中型企业的分布式VPN
2012-08-13袁向英
袁向英
南京森林警察学院教育技术科 江苏 210046
0 前言
本文以南京某集团公司为例,该集团公司总部设在南京,同时在上海、北京、成都、广州设有分公司,各分公司每天都有财务的数据和南京总部沟通,公司还有很多项目组工作在全国各地,他们也需要和公司进行一些技术方面的沟通。公司一直在寻找一种有效的性能价格比高而且实用的方案。最初准备使用长途专线连接到总部,这种方案的成本和使用费用都很高,对于企业来说无疑是很大的负担。如今,各种宽带上网方式迅速发展,基于Internet构建集团的VPN网络无疑是一种高性价比的方案。
公司总部及各分公司都具备连接 Internet的能力,接入方式多种多样。另外公司在上海一IDC机房托管一台服务器提供公司的电子邮件及OA办公服务。因为南北电信网通互联互通的原因,此服务器使用两条100M共享以太网接入互联网,电信,网通接口各提供独立的静态IP地址及独立的网关设置。
1 VPN网络的要求
(1) 各分公司、项目组彼此分布在不同地点,而且是不同的ISP,VPN网络需要将分散在不同地点的局域网全部互联互通,组成一个更大的局域网,同时必须要解决南北网络(即电信和网通)之间通讯瓶颈的问题;
(2) 需要共享大量的资料及信息资源,必须保证资料在传输过程中的安全性;
(3) 解决方案要尽可能减少成本投入,并且将来易于扩展;
(4) 公司有大量的项目组常年在全国各地,过去,企业员工一旦离开了公司就无法使用本地的局域网,VPN系统需要支持公司外部移动办公的员工也能使用本公司局域网资源。
2 传统星型架构vpn的不足
传统 VPN网络架构为星型架构,组成方式为各分支机构运行VPN客户端通过VPN网络连接到公司总部运行VPN server 端的网络上如图1所示。
图1 星型网络拓扑图
这种架构的优点是结构及维护简单,所有的配置与维护工作量都在公司总部,但在实际使用过程中的不足的也是显而易见的。
3 分布式vpn的设计
3.1 分布式vpn架构的描述
相对传统方法组建的星型VPN网络中VPN网络的可靠性差、带宽的高要求、网络延时在很多应用场景下过长,本文提出了一个完全分布式 VPN 网络系统架构,网络拓扑结构如图2如示。
图2 分布式网络拓扑图
在此结构中充分利用了该企业原有的一台托管在上海IDC机房的双线路接入服务器,由此服务器解决因南北电信网通互联互通导致的网络延时过长的问题,此服务器所在的机房有中国电信与中国网通两条不同的物理联接,并且为服务器分别提供两家运营商的100M以太网线路,中国电信网内用户与中国网通网内用户可以分别访问服务器相应网络端口的地址,由于是网内通讯其最大网络延时基本可以控制在最大50ms 以内,各分支机构与公司总部根据其自身的网络接入供应商的不同,将 VPN连接至此服务器的相应网络端口,并且由此服务器充当 VPN网桥的作用,从而保证跨网络服务商的节点间的通信最大网络延时低于100ms。移动用户与分支机构节点相同,也可以根据当前所使用的网络供应商的类型不同将选择不同的 VPN 服务器进行登录,从而减小访问不同网络的延时。
由于此服务器在整个 VPN网络结构中承担了南北电信网通的桥接功能,在此将此服务器命名为桥接服务器一,IDC机房的接入等级较用户接入网高很多,而且在交换,路由及链路等方面都具备冗余及备份系统,电力供应也保障 24小时不间短供应,其本可以满足该公司网络可靠性高及低线路延时的要求,IDC的双100M以太网线路也完全可以满足全分支节点间的通信流量的总和,并且IDC机房的托管费用远低于ISP供应商的本地接入光纤带宽的扩容费用,将本地接入网带宽的扩容成本转换为IDC的托管费用换来的是更可靠的网络接入及低线路的延时。
为了防止因桥接服务器单点故障造成整个公司范围内的VPN网络全面断开,本方案中将在北京异地IDC中建立另一个桥接服务器二,同样使用电信网通双线路接入,各分公司及总部同时与两台桥接服务器建立 VPN连接。从而使整个公司的主要VPN链路具备多链路及冗余链路保证24小时不间断服务。
此分布式 VPN网络结构的另一个显著特点是为了减少同一互联网供应商内两分支机构节点间的网络通讯流经第三方服务器(桥接服务器),在同一互联网供应商接入范围两分支机构节点间进行了 VPN网络节点的直接链路连接,对于南京总部与上海分公司间同为中国电信接入的网间 VPN通信可以根据网络路由策略优先走南京与上海间的 VPN链路,从而减少桥接服务器的负担,并且能有效减少因走桥接服务器带来的网络延时的增加。
在分布式VPN网络中不存在VPN Client(VPN客户端)的概念,所有的 VPN 网关即可以作为传统意义上的 VPN Client 连接到远端的 VPN 桥接服务器,也作为传统意义上的VPN Server接受同网络运营商其它分支节点VPN网关客户端的连接请求。
任意两个 VPN 网关之间动态建立安全隧道直接通信,不需要第三方VPN Server的转发,是一种完全分布式的VPN网络。实现了VPN Server之间负载平衡,提高了VPN网络吞吐率,同时在某个VPN Server需要维护、升级或是出现故障无法工作的时候,其它VPN Server之间可以正常通信,从而解决了基于用户传统 VPN Server单点故障,提高了整个VPN网络的健壮性和可靠性。所以整个VPN具有高的灵活性和好的扩展性。
3.2 网关平台子网地址规划及路由策略
当公司总部与各分公司网络通过 VPN连为一个跨区域的大的网络时,为了实现不同区域间的计算机及网络设备的互相访问就需要对所有的公司及子公司网络地址分配情况进行统一规划设计。公司总部根据长远发展的需要规划 32个C类段IP地址,VPN网关地址为子网第一个可供使用IP地址。其它各分公司规划4个C类段IP地址,预留4个C类段IP地址,VPN网关地址为各子网每一个可供使用IP地址。两个网桥提供公司总部及各分公司 VPN网关接入服务各使用一个C类段地址,每个VPN链路使用4个IP地址。同一网络服务商分支节点网关间建立的直接 VPN链路使用一个C类段IP。每个网桥提供移动用户VPN接入各需要一个C类段使用DHCP方式分配IP地址。
公司总部及各分公司将提供访问的应用服务器及网络设备地址使用静态地址分配方式集中在一个或数个C类子网段,对于其它设备如计算机等根据需要可以使用DHCP方式进行动态地址分配。
3.3 防火墙策略及身份认证
集团公司的 VPN内部网络是构建在互联网上的,网络的安全是至关重要的,任何安全设置不当都可能导致网络应用中断机密数据泄露,产生巨大的损失,设计完善的安全策略可以将安全风险降到最低。
在 VPN网络构建完成后,本例中安全风险主要来自两部分:
从互联网通过各地网关及桥接服务器链路的非法入侵,由于集团分公司之间启用了 VPN系统,所有的应用服务都架构在内部网络,不再需要在互联网提供地址映射或端口映射,这就保证了非法入侵不能访问此类应用并且通过此类应用系统的不断被发现的技术漏洞进入内部网络,在各地的防火墙安全策略设计时只需要将所有网关通过 NAT转换后设计成单向对外部互联网访问,并且使用严格的先关闭所有外向访问应用,然后根据需要开启必需的控制策略即可以实现对来自互联网的安全访问控制。
来自内部网络的安全风险,在所有已知的网络入侵及机密数据泄密的事件中绝大部分是由于内部网络的绝对信任与不设防,基本没有安全措施保障存放重要数据的应用服务器与数据库服务器。本例中由于移动用户可以在任意时间及地点通过 VPN网络接入公司内网从而带来了更加严峻的安全风险,VPN系统的被非法入侵及非授权条件下的非法访问都是需要考虑的重要因素。
非授权条件下的非法访问控制的实现是通过各分公司的网关防火墙的安全策略来实现的,将所有提供应用服务的关键服务器放置在各总部与分公司的网关的DMZ区,通过访问地址策略、端口策略及访问时间策略来控制本地局域网及VPN网内其它地址对DMZ区的授权访问。
4 总结
本文根据南京某公司面临的现状,公司总部和各分公司及公司驻外项目组网络不能互联,无法使用公司的网络资源,进行详细的需求分析,制定出一套符合公司需求的解决方案。
性能上的不足是 VPN系统的一个重要问题,目前的一些解决方案都是从加解密机制入手,用减缓 VPN服务器加解密运算负荷的方式改善系统性能,但未能从根本上将服务器从“中转路由"的职责中解脱出来,因此性能的提高很有限。本文针对传统星型VPN网络中VPN Server负载过重和单点故障问题展开,从网络拓扑结构入手,提出了一个完全分布式的VPN Server 系统架构。该模型借鉴P2P(peer-to-peer)技术的分布式思想(P2P技术又称对等互联网络技术,是一种网络新技术,依赖网络中参与者的计算能力和带宽,而不是把依赖都聚集在较少的几台服务器上),利用边缘计算资源分担服务器的传输负载,提高了VPN网络的整体吞吐率。
[1] C.Martin.网络革命P2P.上海远东出版社.2000.