前言:这篇文章描述了如何使用访问策略发布使用公共IP的DMZ主机。这种方法允许你在使用你服务器已经使用的公共IP和ISA Server 2004防火墙应用层过滤之间进行平衡。不像传统的基于包过滤的防火墙(PIX、Netscreen、SonicWall等等),ISA Server 2004防火墙对通过防火墙的所有通信执行过滤和应用层识别。这篇文章对此进行了完全的讨论。
使用ISA Server 2004防火墙发布位于公共DMZ网段的服务器
译自 Thomas W Shinder M.D,“Publishing Servers on a ISA Server 2004 Firewall Public Address DMZ Segment”,加以编辑修改
比起ISA Server 2000防火墙,ISA Server 2004的一个重大改进是多网络的支持。ISA Server 2004从“世界”中发现多网络,不同于ISA Server 2000只是把“世界” 认为是“信任与不信任“(LAT与非LAT)。ISA Server 2004防火墙认为所有网络都是不信任的,而且把访问策略应用到所有通过ISA Server 2004防火墙的网络连接,包括通过远程VPN连接的客户端和VPN网关。
ISA Server 2004多网络允许你连接多个网络接口(或多个使用VLAN标签的虚拟接口)和对经过ISA Server 2004防火墙的通信具有完全的控制。这个和ISA Server 2000当数据在内部网络中通行时不会受防火墙策略的影响和需要使用RRAS包过滤建立“不足的DMZ”的网络模型具有强烈的对比。
在这篇文章中,我们测试了如何发布位于公共IP的DMZ段的主机。你可能会记得ISA Server 2000需要使用DMZ网段的公共地址。ISA Server 2000DMZ网段需要使用公共IP,你不能使用私有地址因为ISA Server 2000防火墙路由(替代NAT)使用简单的包过滤连接到DMZ网段(类似PIX)。与之对比,ISA Server 2004防火墙允许你在Internet和DMZ使用之间路由,或者NAT。事实上,ISA Server 2004防火墙允许你决定使用什么方式进行连接:路由或者NAT。
如果你已经拥有一个具有多个使用公共地址的主机所建立的DMZ网段,而且因为如果他们地址架构的改变会影响到其他服务的改变如DNS服务等,你不希望改变他们的地址架构,此时,使用公共地址是必要的。你仍然想使用当前服务器上的IP架构,这样Internet主机可以使用过去一样的IP地址(实际上,相同的DNS映射)来访问DMZ主机。你可以通过ISA Server 2004来在Internet和包含你想发布的服务器的DMZ网段之间配置一个路由关系。
注意我加注了“Publish”。ISA Server 2004防火墙策略提供了两种方式让你可以控制通过防火墙的策略:Access Rules和Publishing Rules。访问策略(Access Rules)可以加入到路由和NAT关系。发布策略(Publishing Rules)总是对连接实行NAT,不过你是否使用公共地址网段或者在源主机和目的主机之间有路由关系。
如果这样听起来有点混淆,它是的。它在你按照ISA Server 2000方式,总是要对非信任主机和信任主机进行NAT的方法来实施时会特别混淆。在我们进入如何发布位于公共地址网段的服务器之前,先让我们对新的ISA Server 2004网络模型的的一些方面进行介绍。
下图显示了我们这篇文章中使用的示例网络。下图展示了一种Internet和DMZ网段之间的路由关系。当PocketPC PDA客户连接到位于DMZ网段的服务器,它用于建立连接的名字解析到DMZ主机的实际IP地址,在我们这个例子中是172.16.0.2。路由关系允许我们做DNS解析和保存映射到DMZ主机到实际IP地址的DNS记录。ISA Server 2004访问策略让DMZ主机对Internet客户可见。
但是,你同样可以使用发布策略来对Internet用户发布位于DMZ的主机。在这个例子中,位于Internet的PocketPC PDA主机使用一个位于ISA Server 2004防火墙外部接口的IP地址来访问DMZ主机。注意,DMZ主机同样也有一个公共IP。即使我们使用公共IP地址,因为使用发布策略,也会执行NAT。这样允许Internet主机连接到ISA Server 2004防火墙的外部接口并且有效的隐藏DMZ主机的IP。这个NAT隐藏对于公开的服务器是一种通用的安全方法。
注意在图中DMZ主机使用的DNS服务器的IP地址,172.16.0.1是DMZ接口的IP地址。我们使用这个IP地址代替实际的DNS服务器地址的原因是我们会发布位于内部网络的DNS服务器。DNS服务器发布策略会在DMZ接口的IP地址上进行侦听。你会在文章的后面配置细节中看到。
一个ISA Server 2000Web发布的主要缺点是你会在发布的Web服务器log中记录下ISA Server 2000防火墙的IP。这对于在日志分析和报告软件上花费了巨大投资的组织来说是一个问题。ISA Server 2004修复了这个问题并且允许你选择是将原始客户IP地址或者ISA Server 2004防火墙的地址发送到发布的Web服务器上。这个对于使用公共地址或者私有地址的DMZ中的Web和服务器发布都有效。
下表中描述了ISA Server 2004允许远程访问到使用公共地址和私有地址的DMZ网段的行为:
表一 远程访问使用私有地址和公共地址的DMZ服务器,NAT vs Route,访问策略和发布策略
地址架构、路由关系、规则类型 | 结果和描述 |
具有公共地址、路由关系和使用访问策略的DMZ | 这种配置允许你使用他们的实际IP地址连接到你的DMZ主机。位于发布的服务器上的Log文件将会显示远程主原来的IP地址。除非你建立一条访问策略连接到一台位于DMZ网段的HTTP服务器。在此例中,ISA Server 2004防火墙的IP地址将表现为源地址。这个可以通过在规则中禁止Web Proxy过滤器来禁止。 |
具有公共地址、路由关系和使用发布策略的DMZ | 这种配置需要你通过连接ISA Server 2004防火墙的外部接口来访问发布的DMZ主机。不会直接连接到DMZ主机,并且你公共的DNS记录可能需要修改。源IP地址将会是ISA Server 2004防火墙,除非你配置服务器和Web发布策略转发原始的IP地址。 |
具有公共地址、NAT关系和使用访问策略的DMZ* | 这种配置需要你通过连接ISA Server 2004外部接口来访问发布的DMZ主机。不会直接连接到DMZ主机,并且你公共的DNS记录可能需要修改。源IP地址将是ISA Server 2004防火墙,除非你配置服务器和Web发布策略转发原始的IP地址。 |
具有公共地址、NAT关系和使用发布策略的DMZ* | 这种配置需要你通过连接ISA Server 2004外部接口来访问发布的DMZ主机。不会直接连接到DMZ主机,并且你公共的DNS记录可能需要修改。源IP地址将是ISA Server 2004防火墙,除非你配置服务器和Web发布策略转发原始的IP地址。熟悉的话?J |
具有私有地址、NAT关系和使用发布策略的DMZ* | 这种配置需要你通过连接ISA Server 2004外部接口来访问发布的DMZ主机。不会直接连接到DMZ主机,并且你公共的DNS记录可能需要修改。源IP地址将是ISA Server 2004防火墙,除非你配置服务器和Web发布策略转发原始的IP地址。Yep,和上面的两个一样。 |
* 注意在所有的发布策略配置中,连接是通过NAT。当你使用Web或者服务器发布时,没有使用路由的场景。
我们对于这些结果是否基于Web Proxy过滤器启用与否有些好奇,我们会在文章的后面探讨这些行为。
在完成讨论之前,我得提醒你在使用访问策略代替发布策略来允许访问你的DMZ主机前将失去大量的安全性。ISA Server 2004比起PIX或者Netscrenn设备提供了很少的安全性。我们可能使用发布策略的原因包括:
Web发布策略允许你阻止用户使用IP地址来代替FQDN来访问DMZ主机的资源。许多蠕虫使用IP地址来访问服务器,而不是FQDN。
Web发布策略允许你配置自定义Web侦听器,它提供了基于Exchange窗体的认证、基本身份认证和RSA安全ID认证。
Web发布策略允许你执行SSL到SSL的桥接。这样阻止了在一个SSL隧道之间的攻击者的隐藏注入,当使用SSL到SSL桥接,ISA Server 2004防火墙“解开”SSL隧道,把连接“暴露”在ISA防火墙的应用程序识别机制下,并且丢弃包含有隐藏注入或者其他可疑特性的连接。被ISA Server 2004认为是值得信任的连接将重新加密,并且通过建立在ISA Server 2004和发布的Web服务器之间的第二个SSL连接发送到发布的Web服务器上。
服务器发布策略将进入的连接通过应用程序过滤器检查以保护特定的服务。例如包含SMTP过滤器将阻止缓冲区溢出攻击,DNS过滤器阻止许多DNS注入攻击,POP3过滤器阻止POP3缓冲溢出。如果你使用访问策略来发布来发布具有公共IP地址的DMZ主机,应用程序过滤器将不会保护它们。
如果你使用访问策略发布位于公共地址DMZ区域的Web服务器,你仍然受到HTTP安全过滤器的保护。HTTP安全过滤器对所有通过ISA Server 2004防火墙的HTTP通信提供非常深入的应用程序层识别。HTTP安全过滤器允许你粒度控制和基于每条规则进行配置。所以你不需要坚持为ISA Server 2004防火墙的所有策略设置一个HTTP安全策略。这是和过去的基于URLScan方法的HTTP通信过滤的巨大跃变(ISA Server 2000中使用URLScan来进行HTTP识别)。
文章的剩余部分将描述如何使用访问策略来发布使用公共IP地址的DMZ主机。这种方式允许你继续使用你服务器使用的公共ip,并且在继续使用ISA Server 2004防火墙的应用程序过滤之间进行平衡。不像传统的基于包过滤的防火墙(PIX、Netscreen、SonicWall等等),ISA Server 2004防火墙对通过防火墙的所有通信执行过滤和应用层识别,这样比起市场上的其他防火墙提供了更高级别的保护和控制。
为了达到我们的目标,你需要执行以下步骤:
配置上游路由器的路由表;
配置网络接口;
安装ISA Server 2004防火墙软件;
在DMZ服务器上安装和配置IIS WWW和SMTP服务;
配置DMZ网络;
在DMZ和外部网络之间、DMZ和内部网络之间建立网络规则;
建立一个服务器发布策略以允许DMZ发送DNS请求到内网;
建立一个访问策略以允许内网向外网发送DNS请求;
建立一个访问策略以允许外网向DMZ发送HTTP请求;
建立一个访问策略以允许外网向DMZ发送SMTP请求;
测试从外网到DMZ的访问策略;
通过修改访问策略禁止Web Proxy filter来允许外网向DMZ发送数据。
配置上游路由器的路由表
我见过的ISA防火墙管理的最常见的问题是在上游路由器的路由表中把DMZ网段和其他网段放在一起。当你建立一个公共地址的DMZ网段,你需要对你的公网地址进行子网划分,然后分配一个子网给DMZ网段。你可以绑定第一个分配给DMZ网段的有效的IP地址给DMZ接口,然后分配另外子网的第一个有效IP地址给公网接口。
这就是许多ISA防火墙管理员停止和出现问题的地方。你需要在上游路由器上配置DMZ网段的路由。你可以通过配置路由器使用ISA Server 2004防火墙的外部接口地址作为DMZ网段网络ID的网关地址。如果在上游路由器上丢失了这条路由项,那么对于DMZ网段,没有主要的进入连接、也没有对进入连接的回应、通信的出入可以正常工作。
在我们在这篇文章中使用的实验网络中,外部网络主机和ISA Server 2004防火墙的外部接口具有相同的网络ID192.168.1.0/24。ISA Server 2004防火墙的外部IP地址是192.168.1.70,外部主机将使用和它相同网络ID的IP地址。DMZ网段使用网络ID 172.16.0.0/16。因此,在这篇文章中我们使用的Windows XP外部网络主机中,我配置了一个路由项来告诉它使用ISA Server 2004防火墙的外部接口IP地址来到达网络172.16.0.0/16。我执行了以下命令:
route add 172.16.0.0 MASK 255.255.0.0 192.168.1.70
注意:这个例子中没有使用公网地址块的子网。在生产环境中,你可能会对你的公共地址块进行子网划分和在ISA Server 2004防火墙的上游路由器上为你的DMZ子网段建立对应的路由项。这意味着你必须得控制你的上游路由器,由于ISP的关系,这让公共地址的DMZ网段成为了难确定的一点。
配置网络接口
网络接口配置通常是ISA Server 2000管理员的争论焦点,并且我期望它能继续成为ISA Server 2004管理员的争论焦点。关于这个问题,有许多原因,主要的原因是你是否架设你的DNS服务。
对于ISA Server 2004防火墙来说,DNS是一个至关重要的服务,因为防火墙可以为Web Proxy和防火墙客户代理名字解析。ISA Server 2004防火墙使用它接口上的DNS设置来询问合适的DNS服务器。如果你配置了错误的DNS服务器,那么你将会体验缓慢的名字解析,或者根本不能解析名字,给予最终用户ISA Server 2004防火墙不能工作的印象。
我们可以使用以下的指导方法把ISA Server 2004防火墙正确的DNS配置进行摘要:
如果你在内部网络中拥有DNS服务器,你应该配置这个DNS服务器支持Internet的主机名字解析;
如果你不选择让你的内网DNS服务器执行Internet名字解析,你可以考虑在ISA Server 2004防火墙或者DMZ网段上放置一个缓存式DNS服务器。
如果你选择在DMZ网段放置一个为你可以公开访问的域进行授权的DNS服务器,不要允许这个DNS服务器解析DNS名字。它的意思是,你授权的DNS服务器应该只是对你架设的域解析进行解析,在用户想通过它解析其他域名时会返回一个错误。
如果你不想架设你自己的DNS服务器而且不想在内网里面使用DNS服务,那么配置ISA Server 2004防火墙使用公众的DNS服务器,例如你ISP的DNS服务器。注意这个配置在进行内部名字解析与在Web Proxy和防火墙客户端进行连接时将导致问题。因此,你应该为没有建立DNS基础结构的SOHO环境选择另外一种防火墙。但是,如果你具有SOHO环境而且具有DNS服务器,ISA Server 2004防火墙是保护你公司资产的理想防火墙。
永远不要在已经配置了内部DNS服务器地址的网络接口上再配置公众的DNS服务器地址。
DNS服务器地址应该在网络和拨号连接窗口的列表最顶端的接口上配置。例如,如果你有三个接口的ISA Server 2004防火墙:一个DMZ接口,一个内部接口和一个外网接口。那么内部接口应该是在列表最顶端并且DNS服务器IP应该配置在这个接口上。在你使用内网DNS服务器、DMZ DNS服务器、外网DNS服务器时,这是要值得注意的。
如果你不能理解这些规则,询问理解了的人。DNS设置非常重要,并且如果ISA Server 2004防火墙的DNS设置不正确,你将体验非常难调试的连通性问题,并且它会给你“ISA Server 2004防火墙不能工作”的坏印象。
最后一条:在发布你的公共地址的DMZ主机到Internet之前,正确的安排你的DNS服务器顺序。
安装ISA Server 2004防火墙软件
在处理完DNS之后,我们就可以安装ISA Server 2004防火墙软件了。至于安装说明,可以在本站http://www.isacn.org/info/info.php?sessid=&infoid=8 找到。
安装和配置IIS WWW和SMTP服务
在这篇文章中我们将把一台Windows Server 2003计算机放置在公共地址的DMZ中。这台计算机将安装IIS 6.0 WWW和SMTP服务,我们使用访问策略来发布它们。在生产环境中,根据你的需要,可能还会有前端的Exchange发布OWA、OMA、RPC over HTTP等服务。在DMZ网段中的主机使用有效的DMZ子网块的IP地址。发布的DMZ主机使用ISA Server 2004防火墙的DMZ接口作为它的默认网关。DMZ主机不能使用内部网络的IP地址作为它的默认网关,因为它没有访问内部网络的权限,除非我们给予它这个权限但是我们不会这样做。
DMZ主机网络接口的DNS服务器地址是ISA Server 2004防火墙DMZ接口的IP地址。因为我们将在DMZ网段和内部网络之间配置NAT关系并且一个服务器发布策略将把DNS服务器发布到DMZ接口的IP地址上。
内部网络DNS服务器已经为解析Internet主机名做好了配置。这个在你想使用DMZ网段的SMTP服务作为SMTP中继时很有效。SMTP中继需要为每个出去的邮件解析域名的MX记录并且这样它可以使用内部网络的DNS服务器完成这一点。
建立DMZ网络
当位于DMZ的服务器配置以后,我们现在可以进入ISA Server 2004管理控制台来建立DMZ区域。首先是建立DMZ网络,ISA Server 2004防火墙需要指导这个网络中使用的IP地址和它连接到其他网络时的路由关系。在我们当前的例子中,DMZ网络将会命名为DMZ,并且我们将分配给它所属网络ID的整个IP地址范围。在生产环境中,你需要包含你为DMZ网段建立的子网块的所有IP地址。
重要提示:
你或许会注意到ISA Server 2004自带的网络模板可以简化多网络(DMZ)环境下的配置。但是,我不推荐你使用这些模板,因为它们假设在你的网络之间具有路由关系,而且要求你非正式的配置防火墙访问策略。这个不能被ISA Server 2004的初学者很好的理解。我已经看到了许多因为使用网络模板导致的网络配置问题。它们这些问题可以通过使用手动设置防火墙来避免。通过避免使用这些网络模板,你可以确定你拥有一个安全的配置而且你的防火墙配置和访问策略正好符合你的需求。
执行以下步骤来建立DMZ网络:
1. 在 Microsoft Internet Security and Acceleration Server 2004 管理控制台,展开服务器,然后展开 Configuration ,点击 the Networks 。
2. 在 Networks ,在细节面板中点击 Networks 标签,在 Tasks 标签,点击 Create a New Network 。
3. 在 Welcome to the New Network Wizard 页,在Network name文本框中输入一个名字,此例中我们命名为DMZ,点击 Next。
4. 在 Network Type 页,选择 Perimeter Network ,点击 Next。
5. 在 Network Addresses 页,点击 Add Adapter 按钮。
6. 在 Select Network Adapters 对话框,勾选DMZ 网络接口。注意你可以直接勾选而不需要选择网络适配器先。但是,如果你不选择网络适配器,你不能在Network Interface Information看见正确的信息。点击 OK。
7. 在Network Addresses 页点击 Next 。
8. 在Completing the New Network Wizard页回顾你的设置,然后点击 Finish。
在DMZ和外部网络之间、DMZ和内部网络之间建立网络规则
现在DMZ网络已经定义好了,下一步是配置DMZ网络和内部网络、Internet(外部网络,除了已定义网络的任何网络)之间的路由关系。
在我们的例子中,我们想在DMZ网络和Internet网络之间是路由关系,在DMZ网络和内部网络之间是NAT关系。这允许我们使用访问策略来允许外部主机访问DMZ网段和一个服务器发布策略来隐藏内部网络的DNS服务器的IP地址。注意就算是我们在DMZ和内部网络之间使用路由关系,我们也可以建立一个服务器发布策略来允许DMZ主机访问内部网络的DNS服务器。至关重要的是我们使用服务器发布策略来替代访问策略,这样我们可以让DNS过滤器保护内部网络的DNS服务器。
执行以下步骤来建立网络规则控制DMZ网络和Internet之间的路由关系:
1. 在左面板的Networks 节点,点击细节面板的Network Rules标签。点击任务面板Tasks标签中的 Create a New Network Rule 链接。
2. 在 Welcome to the New Network Rule Wizard 页,在Network rule name文本框中输入名字,在此例中我们输入DMZvsExternal,点击 Next。
3. 在Network Traffic Sources 页,点击 Add 按钮。
4. 在 Add Network Entities 对话框,点击 Networks 目录,然后点击 DMZ 网络,然后点击 Close。
5. 在 Network Traffic Sources页上点击 Next 。
6. 在 Network Traffic Destinations 页,点击 Add 按钮。
7. 在 Add Network Entities 对话框,点击 Networks 目录,然后双击 External,然后点击 Close。
8. 在Network Traffic Destinations 页上点击Next 。
9. 在Network Relationship 页,选择Route 然后点击 Next。
10. 在Completing the New Network Wizard页,回顾你的设置,然后点击Finish。
下一步是建立DMZ和内部网络之间的路由关系,在这个例子中,我们选择NAT。执行步骤和上面的一样,其中名字设置为DMZvsInternal,网络通信源选择为Internal,网络通信的目的地选择为DMZ,网络关系选择为NAT。
自由广告区 |
分类导航 |
邮件新闻资讯: IT业界 | 邮件服务器 | 邮件趣闻 | 移动电邮 电子邮箱 | 反垃圾邮件|邮件客户端|网络安全 行业数据 | 邮件人物 | 网站公告 | 行业法规 网络技术: 邮件原理 | 网络协议 | 网络管理 | 传输介质 线路接入 | 路由接口 | 邮件存储 | 华为3Com CISCO技术 | 网络与服务器硬件 操作系统: Windows 9X | Linux&Uinx | Windows NT Windows Vista | FreeBSD | 其它操作系统 邮件服务器: 程序与开发 | Exchange | Qmail | Postfix Sendmail | MDaemon | Domino | Foxmail KerioMail | JavaMail | Winwebmail |James Merak&VisNetic | CMailServer | WinMail 金笛邮件系统 | 其它 | 反垃圾邮件: 综述| 客户端反垃圾邮件|服务器端反垃圾邮件 邮件客户端软件: Outlook | Foxmail | DreamMail| KooMail The bat | 雷鸟 | Eudora |Becky! |Pegasus IncrediMail |其它 电子邮箱: 个人邮箱 | 企业邮箱 |Gmail 移动电子邮件:服务器 | 客户端 | 技术前沿 邮件网络安全: 软件漏洞 | 安全知识 | 病毒公告 |防火墙 攻防技术 | 病毒查杀| ISA | 数字签名 邮件营销: Email营销 | 网络营销 | 营销技巧 |营销案例 邮件人才:招聘 | 职场 | 培训 | 指南 | 职场 解决方案: 邮件系统|反垃圾邮件 |安全 |移动电邮 |招标 产品评测: 邮件系统 |反垃圾邮件 |邮箱 |安全 |客户端 |