在托管主机单网卡环境下如何进行web发布


第1页,共23页
在托管主机单网卡环境下如何进行web发布
原文:http://www.isaserver.org/articles/2004ispcolo.html
翻译:szyoyo (jj96master@hotmail.com)
基于ISA 2004 防火墙的ISP 托管配置
在ISA 防火墙中有一种特殊的配置称作"ISP 托管"配置。我曾经在一篇配置
ISP托管 Web/SMTP/ISA Server的文章中写到过基于ISA Server 2000防
火墙的这种配置方法。我把它称做ISP 托管配置,因为在ISP托管主机环境里
你不可能为你的服务器安装多块网卡,因此,你只需要一块网卡来运行ISP 托
管的Web,FTP,SMTP服务器。这篇文章将教你如何在ISA 2004防火墙中创
建单网卡的托管主机。
这是一种很有趣的配置,因为它关系到ISA 2004防火墙软件是否有效地保护
了位于ISP托管主机上的公共可访问资源。如果你正在这么去做的话,我强烈
建议你不要在ISA 2004防火墙主机上安装额外的软件,因为每个额外的程序
或者服务将增大防火墙被攻击的机会。
但是,ISP托管主机的部署也不近相同。通常ISP会提供些基本的PIX或者
Netscreen包过滤支持,这些防火墙是基于网络层的过滤,一旦需要执行高强
度的应用层检测时,它们就显得无能为力了。而在被托管的Web,FTP,SMTP主
机上使用ISA 2004防火墙软件时你就会感到一些重要的优势。
这种ISP托管主机配置也可应用于其他场合,例如,假设你想给你的网络配置
强大的ISA 2004应用层检测防火墙,而你也不得不要尽可能说服那些轻信硬
件防火墙的人 (参考此文 http://isaserver.org/articles/2004tales.html)。
一种折中的办法是将ISA 2004防火墙部署在位于2个“硬件”防火墙之间的
DMZ区域,使用这种位于DMZ区域的ISP 托管配置的ISA 2004防火墙,将
获得真正的应用层检测保护。
ISP托管主机配置使用一块单网卡和一个“虚拟”网卡,这个虚拟网卡就是
Microsoft loopback适配器,loopback适配器不是真正的物理网卡,但可以
象配置真网卡那样给loopback适配器配置IP 地址信息。ISA 2004防火墙把
loopback适配器视作一个物理接口,你可以使用它来发布服务。
在ISA 2004 防火墙上安装虚拟网卡可以“欺骗”ISA认为它充当了一个防火墙
的角色。你可以给ISA 2004安装单网卡,但你随即失去了防火墙的许多功能,
因为ISA 2004防火墙软件认为你只想让防火墙运行在Web代理模式。相反,
当你安装了loopback适配器后,防火墙软件就认为它是一个真实的接口可以完
全执行应用层检测的任务。

第2页,共23页
这篇文章中我们将讨论ISP托管配置,下图是实验部署图,你可以使用VMware
或者Virtual PC虚拟网络环境测试实验。你可以从位于ISA 2004防火墙物理
接口同一网段的主机测试,也可以从位于Internet路由器一端的广域网主机上
测试。
loopback适配器分配了一个假地址10.0.0.1/24,注意这个假内部接口没有
DNS和默认网关地址分配。
ISA 2004防火墙外部接口上有一个真实的IP 地址和默认网关,这样配置很重
要,因为这个外部IP地址是必须被访问到的,默认网关地址也是必须的以便ISA
2004防火墙能响应Internet主机的请求。DNS服务器地址应该是一台能解析
Internet主机名的DNS服务器,因为托管的ISA 2004防火墙
/Web/FTP/SMTP服务器需要解析外发邮件的Internet MX 域名,注意,配置
中也可以使用ISA 2004防火墙自带的SMTP Message Screener。
如果你计划使用ISA 2004防火墙位于2个所谓“硬件”防火墙之间的DMZ方
案,我建议DMZ段和后方防火墙之间应该是路由关系而不是NAT关系。
按如下配置:
●在托管的ISA 2004防火墙主机上安装loopback适配器,配置IP地址信息
●安装IIS,禁用socket pooling,绑定这些服务在loopback适配器的IP地
址上
●安装ISA 2004 防火墙软件
●在内部接口上禁用Web代理和防火墙客户监听器

第3页,共23页
●创建Web和Server发布规则
●创建允许从本地主机网络到外部网络的SMTP外出访问规则
●测试配置
注意:
本站98%的文章都是我曾经真实进行过的安装和配置介绍,2%的文章是我认
为可以用实验表达的。这些实验文章需要用实践来说明,但是我和我知道的人没
有真正在实际环境中测试过。这就是我为什么要在大部分文章里提供一个实验部
署参考图的原因,以便你们在实际操作前能了解配置的步骤。我希望没有给
isaserver.org社区错误的印象,认为本站文章仅仅是纸上谈兵而不是真实的案
例,希望我提供的大部分文章可以经受住真实网络环境测试的考验。
●在托管的ISA 2004 防火墙主机上安装loopback 适配器,配置IP 地址信

第一步(在一台单网卡机器上安装完Windows Server 2003后)安装
Microsoft loopback适配器。通过Add/Remove Hardware面板安装。
1.在ISA 2004防火墙主机上,Start->Control Panel->Add Hardware
2.点击Next,
3.Is the hardware connected:Yes,I have already connected the
hardware->Next
4.The following hardware is already installed on your computer:Add a
new hardware device->Next
5.The wizard can help you install other hardware:Install the hardware
that I manually select from a list(Advanced)->Next
6.From the list below,select the type of hardware you are
installing:Network adapters->Next
7.Select Network Adapter:Microsoft-> Microsoft Loopback
Adapter->Next

第4页,共23页
8.The wizard is ready to install your hardware: ->Next
9.Completing the Add Hardware Wizard: ->Finish
10.右击My Network Places: ->Properties
11.Network Connections: ->loopback adapter ->Properties
12.Properties: ->Internet protocol(TCP/IP)->Properties
13.Internet Protocol(TCP/IP) Properties: ->IP
address:10.0.0.1->Subnet mask:255.255.255.0
14.OK
●安装IIS,禁用socket pooling
首先安装IIS服务,此例中我们需要安装IIS World Wide Web(W3SVC 或
者WWW服务),FTP服务,SMTP服务。你也许想到了Microsoft Exchange
服务,我打算把它安装在同一台ISA 2004防火墙主机上。如果你想Exchange
服务器完全被ISA 2004防火墙保护的话,那么应该把它放置在防火墙后面,
并且用托管设备做特殊安排。
执行以下步骤在ISA 2004防火墙主机上安装IIS服务:

第5页,共23页
1.在ISA主机上:Start->Control Panel->Add or Remove Programs
2.Add/Remove Components
3.Windows Components:Application Server->Details
4.Application Server:Internet Information Services(IIS)->Details
5.IIS:File Transfer Protocol(FTP) Services,SMTP Services and WWW
Services->OK
6.Application Server:->OK
7.Windows Components:->Next
8.Insert Disk:->OK
9.Files Needed:输入Windows Server 2003 i386路径->OK
10.Completing the Windows Components Wizard->Finish
下一步是禁止掉IIS服务的socket pooling。socket pooling允许IIS服务在
所有接口卡上监听相同的端口号,这是针对专用IIS服务器的一种性能优化。但
是对于运行了ISA 2004防火墙软件的IIS服务器,socket pooling是致命的
危害。为了让我们的Web 和Server发布方案运行在ISA 2004防火墙里,在
配置内部IP地址(分配给loopback适配器的IP地址)的监听服务前需要禁止
掉socket pooling。
执行以下步骤禁止掉IIS WWW服务里的socket pooling:
1.拷贝 Windows Server 2003安装光盘/support/tools 到ISA主机上。
2.安装suptools.msi
3.Start->Run->cmd
4.输入:httpcfg set iplisten -i 10.0.0.1,
回显:HttpSetServiceConfiguration completed with 0
5.输入:httpcfg query iplisten

第6页,共23页
现在我们来禁止掉IIS FTP服务里的socket polling:
1.cmd->net stop msftpsvc
2.转向/InetPub/Adminscripts,运行cscript adsutil.vbs set
/msftpsvc/1/DisableSocketPooling 1
3.cmd->net start msftpsvc
禁止掉IIS SMTP服务里的socket polling:
1.cmd->net stop smtpsvc
2.转向/InetPub/Adminscripts,运行cscript adsutil.vbs set
/smtpsvc/1/DisableSocketPooling 1

第7页,共23页
3.cmd->net start smtpsvc
现在来绑定WWW,FTP,SMTP服务到ISA 2004防火墙的内部IP地址上:
1.在ISA服务器上,Start->Administrative Tools->IIS manager
2.展开Web Sites->Default Web Site->Properties
3.Default Web Site Properties:IP address栏里选择10.0.0.1->Apply

第8页,共23页
4.展开FTP Sites->Default FTP Site->Properties
5.IP address:10.0.0.1
6.Default SMTP Virtual Server->Properties
7.IP address:10.0.0.1
8.Access->Authentication
9.Authentication:勾选Integrated Windows Authentication。这个选项允
许验证用户通过发布的SMTP服务器进行中转。注意这样不会打开SMTP转发
器,未经验证的用户将不能通过SMTP服务器中转,发往外部的邮件将不要求
验证,Internet上的SMTP服务器发邮件到这台机器也将不要求验证。比如,
你可能要为你的客户提供MX域的主机中转服务,你可以使用远程域来转发邮件
到他们的服务器上;一旦他们的服务器当掉,你的SMTP服务器可以接收这些
邮件直到他们的服务器恢复正常。
10.->Apply->OK
11.Restart IIS

第9页,共23页
12.Stop/Start/Restart:->Restart Internet Services on
servername->OK
13.cmd->netstat -na,注意端口21,25,80在10.0.0.1上被监听,这些
端口(服务)的socket pooling被禁止掉了,因为他们没有在0.0.0.0上被监
听。
●安装ISA 2004 防火墙软件

第10页,共23页
1.ISA Server 2004 CD-ROM->isaautorun.exe->Install ISA Server
2004
2.Next
3.I accept the terms in the license agreement->Next
4.User name->Organization->Product Serial Number->Next
5.Setup type:->Complete->Next
6.Internal Network:->Add
7.Select Network Adapter
8.Select Network Adapter:如下图
9.OK
10.address ranges dialog box:->OK
11.Next

第11页,共23页
12.Firewall Client Connection Settings:接受默认设置->Next
13.Services:->Next
14.Ready to Install the Program:->Install
15.Installation Wizard Completed:->Finish
16.Restart the firewall
17.以管理员身份登录,关闭Web浏览器窗口。
●在内部接口上禁用Web 代理和防火墙客户监听器
因为这里没有真实的内部网络,没有内网客户端,因此就没有必要打开Web代
理和防火墙客户监听器。这些监听器有可能引起Web发布规则的冲突,使用ISA
2004服务器上的的服务资源,出于这个原因,我们必须禁止掉Web代理和防
火墙客户监听器。
执行以下步骤:
1.ISA 2004控制台:展开服务器名->展开Configuration->Networks
2.右击Internal network->Properties
3.Internal Properties:->Web Proxy

第12页,共23页
4.Web Proxy:取消Enable Web Proxy clients 选项
5.->Firewall Client
6.Firewall Client:取消Enable Firewall client support for this network 选

7.->Apply->OK
●创建Web和Server发布规则
为了能让远程用户访问ISA 2004防火墙上的服务,我们必须使用Web/Server
发布规则。Web发布规则用来发布Web协议(HTTP,HTTPS(SSL))。Web
协议没有严格定义,你也可以使用Web发布规则发布download-only FTP站
点,所有其他的服务必须使用Server发布规则,Web和Server发布规则体现
了ISA 2004防火墙连接的复杂的应用层检测机制。
我们将创建1个Web发布规则和2个Server发布规则,Web发布规则用来
允许远程连接至ISA 2004防火墙主机上的Web服务器,Server发布规则用
来允许外部连接至SMTP 和FTP服务。

第13页,共23页
在下面的例子中,Web发布规则允许我们连接至使用ISA 2004 防火墙外部IP
地址的Web站点,但是我要着重提醒你,不应该使用他的“公共”名字来发布站
点,如果你这样做,用户将能使用IP地址访问被发布的Web站点,而不是用
你站点的FQDN来访问。允许访问你站点的IP地址可能存在被蠕虫和匿名扫描
攻击的危害。事实上我建议你不要将站点发布到可访问的IP地址上,但是我也
不想对于如何部署DNS或者HOSTS文件项的安全解决方案做详细说明了,相
关文章在站点上已经有了。
执行以下步骤创建Web发布规则:
1.ISA 2004控制台:展开服务器名->Firewall Policy
2.Publish a Web Server link
3.New Web Publishing Rule Wizard:输入Web Server名字
4.Select Rule Action:->Allow option
5.Define Website to Publish:输入Web Server监听器IP地址,这里Web
服务器在10.0.0.1上监听,因此输入这个值,在Path text里输入"/*" ->Next

第14页,共23页
6.Public Name Details:选择“This domain name(type below)”,输入ISA
2004防火墙外部IP地址,注意:这里使用的IP地址仅作示范。我建议你不要
发布公开的用IP地址就可以访问的WEB站点,在Path(optional)输入"/*"。
7.Web Listener:选择一个Web监听器,如果没有Web监听器需要创建一个。
此例中我们不需要创建任何Web监听器,如要创建单击New。
8.Welcome to the New Web Listener Wizard:输入HTTP监听器 ->Next
9.IP Addresses:勾选External,这样ISA 2004防火墙就允许外部访问请求
到绑定在外部接口所有IP地址上的Web监听器 ->Next。
10.Port Specification:接受默认设置,选择Enable HTTP,HTTP端口为80。
11.New Web Listener Wizard: ->Finish
12.Select Web Listener: ->Next,注意:我们创建的Web监听器出现在
Web listener下拉列表里了。

第15页,共23页
13.User Sets:选择默认项All Users ->Next
14.Finish
15.Apply
16.OK ->Apply New Configuration
以下步骤创建SMTP服务器发布规则:
1.ISA2004控制台:Firewall Policy
2.Create a New Server Publishing Rule link
3.输入SMTP Server的名字
4.Select Server:输入被监听的SMTP服务的IP地址,此例中为10.0.0.1。
5.Select Protocol:选择SMTP Server

第16页,共23页
6.IP Addresses:勾选External
7.Finish
最后进行FTP服务器发布规则:
1.ISA2004控制台:Firewall Policy
2.Create a New Server Publishing Rule link
3.输入FTP Server的名字
4.Select Server:输入被监听的SMTP服务的IP地址,此例中为10.0.0.1。
5.Select Protocol:选择FTP Server

第17页,共23页
6.IP Addresses:勾选External
7.Finish
8.Apply
9.OK
●创建允许从本地主机网络到外部网络的SMTP外出访问规则
此例中配置的SMTP服务允许验证用户从本地中继到其他的e-mail 域上,ISA
2004防火墙必须配置为允许从本地主机网络访问到外部网络,以便防火墙能转
发SMTP消息到Internet上的SMTP服务器上。注意,这里是不允许匿名的
SMTP中继,匿名的SMTP中继会使垃圾邮件通过你的SMTP服务器发送出去,
从而导致额外的网络带宽和开销,更糟的是可能被反垃圾邮件联盟列上黑名单。
执行以下步骤创建SMTP外出访问规则:
1.ISA2004控制台:Firewall Policy ->Create New Access Rule link
2.在Access Rule里输入外出的SMTP ->Next
3.选择Allow ->Next

第18页,共23页
4.选择Selected protocols ->Add
5.选择SMTP协议 ->Close
6. ->Next
7.->Add
8.选择Local Host network ->Close
9.->Next
10.->Add
11.选择External network ->Close
12.->Next
13.接受默认项All Users ->Next
14.->Finish
15.->Apply
16.->OK

第19页,共23页
●测试配置
现在我们来测试配置,第一步,使用Outlook Express发送邮件到ISA 2004
防火墙上的SMTP服务器,OE配置成使用SMTP服务器验证使用ISA主机默
认的管理员帐号,在实际环境中你需要在ISA 防火墙主机上创建用户帐号,以
便外部用户能用这个帐号通过防火墙中继邮件。
我将发送一个e-mail 到我的Hotmail 帐号上,当邮件发送时我们可以在ISA
防火墙的时实日志查看器上看到以下的信息,红线框出的表示从Outlook客户
端到ISA防火墙的进入连接,注意,这个连接是SMTP服务器规则允许的。蓝
线框出的表示外出SMTP连接,这个连接是外出SMTP规则允许的。图上的最
后一项反映的是DNS查询,ISA 2004 防火墙没有发现Hotmail 站点的MX
记录信息,这有可能发生在邮件发送出去以前,但日志记录表示是发生在邮件发
送出去的同时,因为DNS查询响应是很快的。
当我们去Hotmail 站点收取这个邮件时,邮件信息显示received by
ISALOCAL from xpprosp1,然后hotmail.com服务器从ISALOCAL接受了
这个邮件,注意,ISALOCAL列出的IP地址确实是路由器外部接口上的IP地
址,而不是ISALOCAL主机自己的IP地址。
Received: from ISALOCAL ([209.30.181.91]) by
mc4-f12.hotmail.com with Microsoft SMTPSVC(5.0.2195.6824); Tue,
13 Jul 2004 21:15:13 -0700
Received: from xpprosp1 ([192.168.1.172]) by ISALOCAL with
Microsoft SMTPSVC(6.0.3790.0); Tue, 13 Jul 2004 23:12:36 -0500
X-Message-Info: JGTYoYF78jHHLX5R9IFBtsCYF3X+PLrD
Message-ID:
<000801c46958$ca281700$ac01a8c0@msfirewall.org>
X-MSMail-Priority: Normal
X-Mailer: Microsoft Outlook Express 6.00.2800.1158

第20页,共23页
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1165
Return-Path: tshinder@tacteam.net
X-OriginalArrivalTime: 14 Jul 2004 04:12:36.0626 (UTC)
FILETIME=[CB8CD720:01C46958]
现在来测试FTP站点的功能,在ISA防火墙主机的FTPROOT目录中放入些文
件,从外部客户机上打开命令行,输入ftp 192.168.1.70,输入administrator
和管理员密码,输入dir,你会看到文件列表,使用GET命令来下载文件,PUT
命令上传文件。
让我们试一下PUT命令,我们上传客户机根目录上boot.ini 文件,图例显示了
命令序列,注意,出现了550拒绝访问信息,这是怎么回事?

第21页,共23页
答案是,ISA 2004是防火墙,而不是包过滤或者NAT服务器,默认设置是安
全设置,是只允许FTP下载的,而上传到FTP站点将使服务器处于极大的安全
威胁当中,我们必须修改FTP服务器发布规则来允许FTP的上传。
执行以下步骤做需要的修改:
1.ISA2004控制台:Firewall Policy ->右击FTP Server Publishing
Rule->Configure FTP
2.取消Read-only项 ->Apply->OK

第22页,共23页
3.->Apply
4.->OK
现在我们先登出FTP站点再登录进去,输入PUT命令,看到以下信息:

第23页,共23页
最后的测试是在外部客户机上使用WEB浏览器,输入http://192.168.1.70
将会看到默认的WEB站点。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值