探讨防火墙内核监听模式:ISA2006系列之十六

本文通过发布终端服务器和DNS服务器的实例,介绍了ISA服务器发布非Web服务器的过程及注意事项,特别是防火墙内核监听的重要性。
探讨防火墙内核监听

在前面的一系列博文中我们已经介绍了很多发布Web站点的内容,今天我们来发布一些其他的服务器,然后再来探讨一下发布这些服务器和发布Web站点有什么区别。我们先举两个例子,发布内网的DNS服务器和终端服务器,拓扑如下图所示,Perth是要发布的终端服务器服务器,Denver是要发布的DNS服务器。

 

首先我们来发布Perth上的终端服务器,在ISA服务器上右键点击防火墙策略,如下图所示,选择新建“非Web服务器协议发布规则”。

 

为发布规则取名为“发布Perth上的终端服务器”。

 

终端服务器PerthIP10.1.1.6

 

选择使用的发布协议,注意,发布规则使用的协议方向都是入站,而访问规则使用的协议方向都是出站

 

监听外网的访问请求。

 

完成服务器发布规则向导。

 

终端服务器发布规则生效之后,我们在外网客户机Istanbul上测试一下。在Istanbul上依次点击 开始-程序-附件-通讯-远程桌面连接,如下图所示,填入ISA服务器外网IP作为要连接的远程桌面服务器。

 

出现远程桌面的连接界面,如下图所示,输入用户名和口令登录系统。

 

OK,我们用远程桌面登录进入了Perth,发布终端服务器成功了!

 

这个实验很简单,我们再来尝试一下发布内网的DNS服务器,如下图所示,在ISA服务器上新建“非Web服务器协议发布规则”。

 

为发布规则取名为“发布Denver上的DNS服务器”。

 

填入DNS服务器地址10.1.1.5

 

这次使用的发布协议是DNS服务器。

 

监听外网的访问请求。

 

结束发布规则。

 

好了,我们还是在Istanbul上测试一下发布的效果,如下图所示,Istanbul已经在TCP/IP的设置中将DNS服务器指向了ISA的外网网卡。

 

Istanbul上测试一下DNS服务器的解析能力,如下图所示,域名解析成功,DNS服务器的发布也没有问题。

 

好了,举了两个发布服务器的例子之后,我们要考虑一下为什么ISA要强调这些服务器是非Web服务器,发布Web服务器和发布非Web服务器有什么区别呢?区别就在于监听模式,发布Web服务器时ISA委托TCP监听端口,而发布非Web服务器时ISA采用防火墙内核监听端口。例如刚才我们发布了终端服务器,那ISA的外网IP肯定要开放3389端口,否则外网用户无法访问终端服务器。我们在ISA上检查一下端口监听状况,如下图所示,我们用NETSTAT –ANO | FIND  “3389”来查看3389端口的监听状况。奇怪的事发生了,3389端口竟然没有进程监听,这是怎么一回事?外网访问者连接3389端口时为什么不报错呢?

 

其实,3389端口是有进程监听的,刚才我们说了,发布非Web服务器时由防火墙内核负责端口监听。由于防火墙内核工作在数据链路层和网卡驱动之间,因此我们用NETSTAT命令查看不到防火墙内核对端口的监听状况。那怎么才能知道防火墙内核在监听哪些端口呢?我们可以使用一个工具fwengmon,这个工具可以在微软网站下载,从文件名可以看出,这个工具可以监控防火墙内核引擎的工作。我们在ISA上允许fwengmon /c,如下图所示,我们可以很清楚地看到防火墙内核正在监听338953等端口。这下我们明白了,端口监听不一定非要委托TCPUDP,防火墙内核也可以进行隐性的端口监听。

 

那接下来再考虑这个问题,如果ISA用防火墙内核监听3389端口,同时又委托TCP监听3389端口,那两者的优先级哪个高呢?从理论上分析,应该是防火墙内核优先级更高,因为解码后的物理层数据先要经过防火墙内核才能到达TCP。我们用实验证实一下,我们先停止ISA的防火墙服务,然后在ISA上打开远程桌面连接,如下图所示,最后再启动防火墙服务。

 

如下图所示,现在ISA服务器上TCP驱动程序和防火墙内核都在监听3389端口,它们谁的优先级更高呢?我们用Istanbul连接3389来测试一下,如果能连接到Perth的远程桌面,那说明是防火墙内核优先级高;如果访问被ISA拒绝,那说明是TCP优先级高,因为ISA不允许外网访问本机的远程桌面。

 

Istanbul上测试,结果如下图所示,Instanbul连接到了Perth,这证实了防火墙内核的优先级确实要比TCP驱动高。

 

总结:以后如果遇到ISA发布服务器的故障,一定不要忘了可以用fwengmon检查防火墙内核对端口的监听状况,防火墙内核的端口盗用非常隐蔽,引发的故障不易发现,大家要注意到这个环节的问题。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值