当前位置: 主页 > 服务器技术 > 安全防护 > 详细分析ISA防火墙策略执行过程

详细分析ISA防火墙策略执行过程

时间:2010-3-1来源:互联网 点击:
  我们在Denver上换用IP访问,在IE中输入202.108.22.5,如下图所示,熟悉的百度界面已经出来了,哈哈,貌似严谨的访问规则竟如此不堪一击!这说明这次的访问请求没有和拒绝百度访问的防火墙策略匹配成功,而是和第二条允许内网用户任意访问的防火墙策略匹配成功了。

  

 看到这儿,有些朋友可能得出结论了,哦,原来用域名禁止访问某个网站是不成立的。错!如果202.108.22.5的反向解析结果为,那么拒绝百度的防火墙策略就是成立的!

 还是来认真分析一下原理吧,当客户机用HTTP访问目标网络时,ISA判断目标网络的根据是HTTP主机头,主机头的内容显然源自我们在浏览器中的输入。当我们在浏览器中输入www.baidu.com时,ISA开始检查访问请求能否匹配第一条防火墙策略,也就是拒绝内网访问百度的那条策略。ISA先检查,从(源网络),计划时间三个元素,这三个元素都能和访问请求匹配,然后ISA检查到(目标网络)元素,ISA根据主机头内容判断访问请求中的目标网络是www.baidu.com,而防火墙策略中的目标网络元素也包含了www.baidu.com,因此ISA判断访问请求和到(目标网络)元素也能匹配上。然后ISA检查用户和内容类型两个元素也可以匹配,所以ISA判断访问请求和拒绝访问百度的防火墙策略完全匹配,于是按照防火墙策略的要求拒绝了这次访问请求。

  当我们在浏览器中输入202.108.22.5时,ISA是这么检查的。首先还是判断 协议,从(源网络),计划时间三个元素匹配策略,然后检查到(目标网络)元素,ISA判断访问请求的目标是202.108.22.5,而防火墙策略的目标网络是包含www.baidu.com的域名集,这时ISA会对202.108.22.5进行DNS反向解析,如果解析的结果等于www.baidu.com。,ISA就认为访问请求的目标网络和策略的目标网络也是匹配的。如果反向解析的结果不等于www.baidu.com(解析的结果确实不是百度的域名),ISA就认为访问请求的目标网络和防火墙策略的目标网络不匹配。这样ISA就会停止匹配第一条拒绝访问百度的防火墙策略,转而匹配第二条允许内网任意访问的防火墙策略,匹配结果是完全成功,因此ISA执行第二条防火墙策略规定的动作,允许了对202.108.22.5的访问。

  如果客户机不是用HTTP协议访问目标网络,那么匹配的过程又稍微有些不同。例如客户机用FTP协议访问www.baidu.com,那么客户机在发送访问请求时不会把www.baidu.com作为目标网络,而是先对www.baidu.com进行域名解析,然后把解析出来的IP作为目标网络发送给ISA。ISA对访问请求进行匹配时,如果被匹配的防火墙策略用域名描述目标网络,ISA就会对访问请求发来的IP进行反向解析,看解析出的域名能否和防火墙策略的目标网络相匹配。根据这个结论,我们用IE访问www.baidu.com会被拒绝,因为刚才分析过了,此时客户机将域名www.baidu.com作为访问请求中的目标网络发送给ISA,ISA认为访问请求和拒绝访问百度的防火墙策略完全匹配,因此客户机被拒绝访问。但如果客户机在命令行下输入telnet www.baidu.com 80,如下图所示,直接连接百度的80端口,ISA会如何处理呢?

 

  如下图所示,ISA对访问请求放行了,显然这次的访问请求没有和拒绝访问百度的策略匹配上,原因是什么呢?

  客户机telnet百度80端口时,我在ISA上启用了实时日志,日志记录的结果如下图所示。从日志上我们很清楚地看到,客户机先对www.baidu.com进行了DNS解析,解析结果为202.108.22.5,然后客户机把202.108.22.5作为访问请求的目标网络发送给ISA,ISA对202.108.22.5进行反向解析,解析出的域名并不是www.baidu.com,因此ISA认为访问请求和第一条防火墙策略并不匹配。然后ISA将访问请求和第二条策略进行匹配,匹配成功后正从我们在日志中看到的那样,访问请求被第二条允许内网用户任意访问的策略放行了。
  

  我们可以总结一下,客户机使用HTTP协议访问时,目标网络取决于主机头,而访问者输入的主机头既可能是域名也有可能是IP(一般以域名居多);。客户机使用其他协议访问时,目标网络一定是以IP进行描述!

  现在我们考虑一下应该如果用ISA禁止用户访问某个目标网络,那这个目标网络应该如何描述,显然只用域名描述是不严谨的,除非你确信DNS反向解析的结果对你有利(大部分情况下你会失望的)。如果保险一些,我们应该用域名+IP来描述目标网络。以刚才的限制百度为例,用nslookkup查出www.baidu.com的域名解析结果为202.108.22.43和202.108.22.5。创建一个计算机集将这两个地址包含进去,如下图所示。

  然后就可以在拒绝访问百度的策略中加入刚创建的计算机集,如下图所示,这样做效果如何大家可以自己试试看,肯定比只用域名要好得多。

 

站长资讯网
.
分页: [1] [2] [3]
TAG: ISA 防火墙 策略 分析
推荐内容最近更新人气排行
关于我们 | 友情链接 | 网址推荐 | 常用资讯 | 网站地图 | RSS | 留言