1.应用代理技术原理
包过滤防火墙工作在网络层与传输层,通过检查IP和其他协议的头部信息来实现过滤,而应用代理防火墙工作在应用层,它能提供多种服务。网络中所有的包必须经过应用代理防火墙来建立一个特别的连接,因而应用代理防火墙提供了客户和服务器之间的通路。
在我们上网的时候,经常使用一类特殊的服务器,叫作代理服务器(Proxy Server),简称代理,其功能顾名思义,就是代替用户去完成某些功能,形象地说,它是网络信息的中转站。如图5-11所示,一般情况下,当使用浏览器访问某网站时,请求直接由浏览器发给网站服务器,网站服务器则把响应直接返回给浏览器;当使用代理服务器时,浏览器把请求发给代理服务器,代理服务器再转发给网站服务器,返回响应时,也是经代理服务器中转才到达浏览器。
图5-11 代理服务器
除浏览器外,其他很多软件,如QQ都可以使用代理服务器。代理服务器既可以是专门的网络设备,也可以是一台计算机,只不过计算机要安装专门的代理服务器软件。
如果代理服务器在代替用户访问目的服务器的过程中,能够检查应用层的数据,并执行一些操作,就成为应用代理防火墙。应用代理防火墙既可以是一台专门的硬件防火墙,也可以是一台安装了代理服务器软件的计算机。
包过滤防火墙和应用代理防火墙的主要区别,就是应用代理防火墙能够理解各种高层应用。包过滤防火墙只能基于包头部中的有限信息,通过编程来决定通过或者丢弃网络包;应用代理防火墙是与特定的应用服务相关,它根据用户想要执行的功能,编程决定是允许或者拒绝对一个服务器的访问。例如,一个想要浏览某个Web页面的用户从工作站向因特网中的该页面发出一个请求,因为用户的浏览器被设置为向应用代理防火墙发送HTTP请求,因此这个请求不会直接传送到这个实际的Web服务器,而是传送到应用代理防火墙,再由应用代理防火墙向Web服务器发送请求。
实际上,应用代理防火墙从它连接到本地网络的网络适配器上接收请求,然而它并不将包含该请求的IP包路由(或者转发)到因特网中实际的目标服务器上。运行于应用代理防火墙中的代理应用程序根据一系列被管理员确认的规则来决定是否允许该请求。如果允许,应用代理防火墙就生成一个对该页面的请求,并使用其他的(连接到因特网上的)网络适配器地址作为请求的源地址。当因特网上的Web服务器接收到该请求后,它只能认为应用代理防火墙是请求该页面的客户,然后它就将数据发送回应用代理防火墙。
当应用代理防火墙接收到所请求的Web页面以后,它并不是将这个IP包发往最初的请求客户,而是对返回的数据进行一些管理员所设置的安全检查。如果通过了检查,应用代理防火墙就用它的本地网络适配器地址作为源地址创建一个新的IP包,将页面数据发送到?客户。
由此可见,客户与目标服务器间没有直接的IP包通信,也没有建立直接的TCP连接。这并不是使用应用代理防火墙的唯一好处,它还可以针对请求类型执行某些检查,并检查返回数据的内容。另外,根据设置的一系列规则,可以让应用代理防火墙接受或拒绝某些数据。
对于允许客户通过防火墙访问的每一种网络服务,可能都需要一个独立的应用代理防火墙应用程序。标准的代理应用程序对于典型的TCP/IP应用,例如FTP、Telnet以及像HTTP这样流行的服务已经足够。不过对于新的服务或者那些很少使用的服务,可能找不到代理软件。
应用代理防火墙的工作是双向的。可以使用应用代理防火墙来控制网络内部哪些用户可以建立因特网请求,也可以使用它来决定哪些外部客户或者主机可以向内部网络发送服务请求。在这两种情况下,这两个网络之间都没有直接的IP包通过。
2.内容屏蔽和阻塞
屏蔽因特网访问是近年来一个很热门的话题,它允许管理员阻塞内部网络的用户对某些站点的访问。一些产品允许详细指明要阻塞的网站,而另一些产品阻塞网络通信的内容,可以设置要阻塞的词语或者数据。毕竟,对于一个商业网络来说,老板可能希望员工将时间花在工作上,而不是让员工欣赏“有意思”的站点。
因为应用代理防火墙位于客户和提供网络服务的服务器之间,所以有很多方法来进行内容屏蔽或阻塞。
(1)URL地址阻塞。可以指定哪些URL地址会被阻塞(或者允许访问)。这种方法的缺点是因特网中的URL地址会经常改变,每天都有成千上万的页面被添加进来,让一个繁忙的管理员审查所有这些新页面是不可能的。
(2)类别阻塞。这种方法可以指定阻塞含有某种内容的数据包。例如,含有不良内容或者暴力内容的数据包,或是包括木马或病毒的数据包。
(3)嵌入的内容。一些代理软件应用程序能够设置为阻塞Java、ActiveX控件,或者其他一些嵌入在Web请求的响应里的对象。这些对象可以在本地计算机上运行应用程序,因此可能会被黑客利用来获得访问权限。
应用代理防火墙并不是完美的,它不应该是阻塞某些数据流入内部网络的唯一方法。尽管可以列出一长串的URL地址来阻塞用户的访问,但是有经验的用户可以在HTTP请求中不使用主机名,而是直接使用网站服务器的IP地址来通过这一检查。更有趣的是,IP地址并不一定要写成点分十进制记法。一个IP地址实际是一个32 bit的数字,点分十进制记法只是一种通常的简便记法。某些浏览器可以接受表示这个32 bit地址的十进制数字。以IP地址210.44.176.169为例,用二进制表示,其值分别是:
210=11010010,44=00101100,176=10l 10000,169=10101001
将这些数字组合起来,就是1101001000101 100101 1000010101001,再把它转变为十进制数,就是3526144169。因此,访问IP地址为210.44.176.169的站点时,在某些浏览器(如Windows XP SP3下的IE 7浏览器)中可以使用以下两种形式,它们得到的结果是一样的:
http://210.44.176.169(www.xing528.com)
http://3526144169
读者可以将其输入自己的IE浏览器地址栏尝试一下,不过前面的“http://”必须要写上。
不要使用应用代理防火墙作为唯一防御木马和病毒的工具。应用代理防火墙就像杀毒软件一样,只能根据已知的特征,发现并阻塞已知的木马与病毒。不过,现在一些高端的应用代理防火墙可以自动下载病毒特征库,一定程度上能够阻塞较新的木马与病毒。
3.日志和报警措施
应用代理防火墙一个不可忽视的重要功能就是能够记录用户的各种行为信息。在事先可预测的条件下,一些行为还可以设置为触发一个警报,例如。一封发送给管理员的Email;一条在控制台上弹出的消息。应用代理防火墙通常比其他类型的防火墙提供更多的记录信息,因为应用代理防火墙能理解用户使用的服务和应用层协议,能得到更多的协议信息。
审查日志是审查任何一个系统的重要组成部分,所以一定要尽可能多地记录各种事件,仔细观察记录的数据,力争从中发现不正常的现象。
4.应用代理防火墙的优缺点
应用代理防火墙只是一个好的防火墙系统中的一个组件。就像包过滤防火墙有其优缺点一样,应用代理防火墙也有其优缺点。如果将两者结合起来,就能解决更多的安全问题,更好地保护内部网络。使用应用代理防火墙可以得到如下的好处:
(1)隐藏受保护网络中计算机的网络信息,如内部网络中的IP地址,因为外部计算机只看到应用代理防火墙的IP地址。
(2)应用代理防火墙是能够对受保护网络和因特网之间的网络服务进行控制的唯一点(Single Point)。即使应用代理防火墙瘫痪,也只是会使网络不通,而不会使非法数据进出内部网络。
(3)应用代理防火墙可以被设置来记录所提供的服务的相关信息,并且对可疑活动和未授权的访问进行报警。
(4)应用代理防火墙可以筛选返回数据的内容,并阻塞对某些站点的访问。它们也能够阻塞包含已知病毒和其他可疑对象的包。
应用代理防火墙的缺点主要包括以下几点。
(1)尽管应用代理防火墙提供了一个进行访问控制的唯一点,但它也是导致整个系统瘫痪的唯一点。
(2)每一个网络服务都需要它自己的代理服务程序,即HTTP协议需要一个代理程序,而FTP协议需要另一个代理程序。虽然存在一样的解决方案,但是它没有提供与应用代理防火墙相同级别的安全性。
(3)在客户使用应用代理防火墙之前可能需要被修改或者重新配置,下面以IE浏览器为例说明。打开IE浏览器的“工具”菜单,选择“Internet.选项”菜单项,出现“Internet选项”对话框,如图5-12所示。选择“连接”选项卡,单击“局域网设置”按钮,出现图5-13所示的对话框。在“代理服务器”选项区域中,选中“为LAN使用代理服务器(这些设置不用于拨号或VPN连接)”复选框,在“地址”文本框中输入应用代理防火墙的IP地址或主机名,在“端口”文本框中输入应用代理防火墙的端口号。单击“确定”按钮,设置完毕。当访问某个网站时,应用代理防火墙会在浏览器与网站间转发HTTP请求与HTTP响应。
图5-12 “Internet选项”对话框
图5-13 代理服务器设置对话框
也有一些应用代理防火墙不需要客户做任何设置,应用代理防火墙作为内部网络与外部网络的唯一出入口,会截获经过它的所有数据,自动进行中转。这叫作透明代理,因为客户根本感觉不到它的存在。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。