互联网出口网关在校园网中的部署研究
2015-11-26薛建曲守宁
薛建++曲守宁
摘 要:出口网关是校园网连接互联网的关口设备,其基本功能是提供内网的互联网访问功能和内网的安全保护。本文以校园网出口网关的部署为例,阐述如何利用UTM或NGFW提供各项功能,构建高效、安全的校园网出口。
关键词:UTM;NGFW;网关
中图分类号:TP393.18 文献标志码:B 文章编号:1673-8454(2015)13-0079-03
NGFW(Next Generation Fire Wall)与UTM(Unified Thread Management)的初衷都是在一台设备上集成更多的安全功能,但在处理机制上却存在很大不同。UTM是在防火墙平台上发展起来的,这种架构中入侵防御、病毒防护等各个功能是叠加(串行处理)的,数据包需要逐个通过各个检测引擎,每通过一个引擎性能都有一定下降。全部引擎都开启后,系统性能将大为下降。NGFW最大的不同是将所有威胁检测功能融合在了一个引擎里,数据包只需要通过一个引擎,就可以完成所有威胁的检测。不管是UTM还是NGFW都将多种功能集成到一个设备里,其常见的功能包括:防火墙、入侵检测、入侵防御、VPN、网络防病毒等。有些厂家甚至以组件的形式将上网行为管理、流量管理、垃圾邮件过滤、URL过滤等功能都集成到一台设备里面。
本文以校园网出口网关的部署为背景,阐述如何利用UTM或NGFW提供的各项功能,构建高效、安全的校园网出口。
一、互联网访问认证功能实现
出口网关最首要的功能就是通过Nat提供内部用户访问互联网的功能。校园网为了完成用户的准入准出功能,需要进行用户认证,以判定用户是否具有接入内网和访问外网的权限。
校园网用户认证通常有Web、802.1x、PPPoE等方式。PPPoE原是城域网通行的一种认证方式,现在部分高校校园网也有采取PPPoE认证作为校园网运营的一种方式,其优势是可以计费到流量,而且由于采用PPPoE拨号方式,还会抑制广播流量对网络的影响。PPPoE对端接的BRAS设备的性能和可靠性要求很高,因为所有的PPPoE流量都要在此设备上封装和解封装,所以一般校园网环境很少采用PPPoE认证,除非是校园网要对学生宿舍网等进行运营才会选用PPPoE这样运营级的解决方案。随着PPPoE系统不断从电信级网络向校园网络推广,PPPoE系统的性价比已经有非常大的提高。
802.1x认证曾经在许多校园网得到应用,但由于各厂商对802.1x协议的实现有差异,造成不同设备之间802.1x互通存在兼容性问题。还有就是随着BYOD(Bring Your Own Device)的逐步盛行,各种层出不穷的智能终端,如手机和平板电脑等使得网络访问越来越来便利,而这些设备对802.1x的支持往往都非常不完善,所以先期部署了802.1x认证的高校有些在逐渐放弃这种方式。
现在校园网更多地采用Web认证, Web认证方式的优势是便于对用户的上网行为进行审计。Web认证刚开始推广的时候使用稍有不便,每次上网需要弹出认证窗口,且浏览器关闭后认证失效。而现在的Web认证用户体验大为改善,用户不必再每次上网前都要弹出窗口去认证。有很多厂商开发了Web认证的客户端,用户不论在校内还是校外都通过一个客户端,认证后就有相应的权限访问校园网的校内资源,使用非常便捷。
根据校园网的实际情况,选择三种认证方式的一种,基本可以满足绝大多数校园网的用户认证要求。但对某些传统的基于IP源地址认证的校园网(根据用户源IP地址和判断用户是否具有外网的访问权限),如作者所在的校园网,上述三种认证方式无法直接应用。
基于源地址的认证方式实现起来比较困难。为了说明这个问题,我们先来看一下出口网关配合认证服务器完成用户认证的大体流程:出口网关设备与认证服务器之间一般通过Radius通讯,即出口网关作为Radius认证的客户端,认证服务器作为Radius认证的服务器端。用户端设备通过出口网关发出一个认证请求到认证服务器,认证服务器再通过查询后台数据库完成用户的认证。因为出口网关作为Radius的客户端向认证服务器发起的Radius认证请求中通常不会包含用户的源IP地址信息(至少笔者们考察的主流网络设备厂商的出口网关设备在Radius请求里都不会包含源IP地址信息),所以Radius的认证服务器无法根据源IP地址完成认证。
解决这个问题的方法是将一台计费网关串接到出口网关之前,出口网关不再承担认证和计费任务,交由计费网关和认证服务器组成,计费网关串接到网络出口上,认证网关将用户的源地址信息发送到认证服务器,认证服务器通过查询用户数据库,决定是否允许该用户访问互联网。这种方式认证服务器和计费网关之间不是通过标准的Radius协议通讯,其拓扑结构如图1所示。
选择串接计费网关的认证方式,必须保证计费网关有足够高的吞吐能力,不能成为网络出口的瓶颈。计费网关一般的工作方式是“透明”的,不存在交换和路由的过程,所以能保证足够的高吞吐量。另外计费网关只认证第一个IP数据包,认证通过后认证服务器分发一条类似ACL的规则,后续的数据包只要匹配规则就会直接转发,所以,即使在高带宽的网络出口,只要设备选型合适,选择相应的千兆或万兆产品,计费网关也不会成为网络瓶颈。
由于计费网关一般是串接到网路中的,要求计费网关具备可靠性设计。计费网关都具有By-pass的功能,即计费网关出现物理故障时流量可以“绕过”计费网关,不影响用户的互联网访问;在对网络可靠性要求更高的场合,可以配置支持Fail-over功能的计费网关双机,一台出现故障时自动将流量都定向到另一台网关上,保持网络出口不间断。
二、VPN认证功能实现
VPN 利用L2TP、IPSec、SSL等VPN技术和认证加密等措施在互联网上建立可靠、安全的通道。VPN在高校图书馆有着非常广泛的应用,家住校外或出差的老师登录VPN后,可以通过园区网再来访问学校订阅的数据库资源。这种访问需求被称为Access-Server方式,一般采用SSL VPN技术,另外有种访问需求,比如总部和分支机构之间的安全通讯,也就是局域网和局域网之间通过Internet进行通讯,这种方式被称为Intranet VPN,一般采用IPSec VPN技术。现在很多的防火墙或UTM设备都集成了这两种技术,可以直接在防火墙或UTM设备上部署VPN,当然也可以采用单独配置VPN网关的部署方式。
作者所在单位用邮件账号作为VPN的登录账号,出口网关(VPN网关)和认证服务器之间采用Radius通讯。认证服务器通过POP3连接邮件服务器的用户数据库完成认证。POP3是一种非常通用的协议,使用这种认证方式邮件服务器不需要做任何改动,对于邮件服务器来说,每次认证就像一次邮件客户端的登录一样。这种认证方式不需要认证服务器维护自己的数据库,避免了邮件服务器的数据库同步到认证服务器的过程。
但考虑到现在高校购买的数据库资源一般很少以电子资源的方式位于校园网本地,而是分布于互联网不同位置的数据库上,所以就要求用户登录VPN后不仅可以访问内部网络,还必须同时具有访问外网的能力。一般的VPN部署达到用户登录后能访问内部信息的要求就可以了,而要用户在访问内部信息的同时还能访问互联网,必须对出口网关(VPN)做特殊设置,配置的大体过程如下:
首先我们将安全网关配置了4个区(Zone),对应安全网关的4个千兆接口,这4个区除了通常的内网、外网、DMZ(DMZ区通常用于放置对外服务器)之外,再增加一个区DMZ2专门用于VPN拨入用户,在这个区配置一个IP地址池,地址可以使用内部保留地址比如172.16.x.x。VPN用户认证登录后获取DMZ2里IP地址池的一个IP地址,然后用户以获取的这个IP为源地址,根据已经配置好的访问策略,经过NAT后就可以同时访问内网和互联网了,从而实现了校外老师对学校所订购的图书馆网上资源的访问。
三、基于NAT端口映射的反向访问实现
实现外网对内网(DMZ)中对外服务的服务器的访问,也是安全网关(防火墙)的最基本的功能之一。它是通过外网地址和内网地址一一对应NAT来实现的。如果内网需要提供对外访问的服务器数量多,就需要多个外网地址来对应。高校校园网中网站众多,各院系及各职能部门都有网站,数量可达几十个之多。这些网站大部分都需要被外网访问。而一般运营商提供给客户使用的互联网IP地址是非常有限的,再通过一一对应的NAT来实现显然是不现实了,解决这个问题可以通过反向代理和虚拟主机的方式实现。
最简单的就是配置一台或多台虚拟主机,把各网站都部署在虚拟主机上,虚拟主机的IP地址和通过出口网关映射到外网的一个IP地址上,再在DNS服务器上将各网站的DNS解析都指定到这个外网IP地址上,这样就实现了通过一个外网IP地址对外发布多个网站的目的。
还要考虑一种情况,现在很多院系都倾向于维护自己的网站和服务器,这些分布在不同物理位置的网站无法部署到一台虚拟主机上。这时可以采用反向代理服务器的技术:在一台具有内外2块网卡的服务器上安装代理服务软件(比如开源的squid),在DNS服务器上将各网站的DNS解析都指定到这个反向代理的外网IP地址上,这样外部网络就可以通过这个反向代理实现对内部网站访问。当然这一切对于外网的访问者都是透明的,用户不需要配置代理服务器客户端,也不知道是在通过代理服务器在访问。
除了虚拟主机和反向代理的实现,解决这个问题可以有一个折衷的、通过出口网关实现的方法:在出口网关上通过TCP端口映射的方法实现。即外网一个IP地址,这个IP地址的不同TCP端口号(共有65535个端口)对应内网(DMZ)区的一台服务器的一个TCP端口,这台服务器就可以通过这个外网IP和TCP端口对外发布服务。当然也可以做外网IP和内网服务器之间多个TCP端口的对应,这样这台服务器就可以通过多个TCP端口提供多个服务。
举例说,内网的一台数据库服务器10.1.1.1需要被外网访问TCP端口为1521的数据库服务,出口网关的外网地址比如是x.x.x.x,在安全网关做这样一个映射:x.x.x.x:1521对应10.1.1.1:1521,其中1521是需要被外网访问的数据库的TCP端口,这样外网通过IP地址x.x.x.x:1521来访问了内网的数据库服务。
四、带宽管理和上网行为管理
作为一个校园网络的出口,带宽管理功能和上网行为管理功能是必不可少的。带宽管理是在应用识别的基础上,为不同用户群体、不同应用制定不同的带宽使用策略。其中最简单的功能包括:每个IP地址的最大上传/下载带宽、最大TCP连接数等。由于应用识别需要设备分析第七层,即应用层的协议,所以对设备的处理能力有较高的要求。
带宽管理功能可以由独立的设备完成,也可以由出口网关独立完成,这需要根据使用的出口网关类型来决定。对于传统的UTM架构的出口网关,建议配置独立的上网行为和带宽管理系统,因为传统UTM串行处理的架构,加上上网行为和带宽管理将会占用大量的系统处理能力,可能会出现网络吞吐量降低的情况。对于采用下一代防火墙架构的出口网关,可以直接启用其上网行为和带宽管理功能,而不必担心其对吞吐量等性能造成的影响。
上网行为管理功能是需要出口网关设备和专门的上网行为管理设备配合完成的,出口网关与上网行为管理系统对接,通过输出Nat日志、上网URL等功能,提供上网行为的审计和回溯功能。虽然多数出口网关设备都提供了简单的上网行为管理功能,但由于其功能的局限性和其启用后对出口网关设备造成的性能影响,建议有需求的校园网配置独立上网行为管理系统。
五、关于多网络出口
现在大多数高校校园网都同时联入公网(中国联通或中国电信)和中国教育和科研计算机网(CERNET简称:教育网),这就面临着多互联网出口的问题。解决多互联网出口问题可以通过策略路由或静态路由解决,现在的出口网关设备一般都有策略路由(PBR),策略路由可根据源地址或目标地址进行选路,比如可以指定一部分用户通过某个运营商的线路访问互联网,而另外的用户通过另一个运营商的线路等;再比如指定访问教育网的流量走教育网出口,而访问公网的流量发往电信或联通的出口等。
有些厂家的出口网关设备还可以判定出口线路的通断和带宽占用情况,比如判断出某个出口线路中断或带宽占用超过设定的阈值会自动将流量发往另一个出口线路等。
在一些更简单的场合,实际上利用静态路由就可以解决多网路出口的问题,比如在核心交换机上通过静态路由将访问CERNET的流量定向到教育网出口,而通过一个简单的默认路由指向公网出口即可实现互联网的访问,这样就比较简捷地解决了多互联网出口的问题。
出口网关的产品形态有很多,各厂家也提供了功能和性能各有差异的产品。用户应根据自身校园网的实际情况,根据网络带宽和吞吐量的要求选择合适的产品,还要配置好出口网关同其他设备的协同工作,才可以构建安全高效的互联网出口。
参考文献:
[1]华为公司中文站点. http://www.huawei.com/cn/.
[2]薛松,顾宁平.浅析UTM设备在信息系统中的应用[J].信息化研究,2009(4):3-5.
[3]思科公司英文站点. http://www.cisco.com.
(编辑:杨馥红)