DMZ
的部署及配置
DMZ
是
Demilitarized Zone
的缩写,俗称非军事化隔离区。
DMZ
是一个位于内网和外网之间的特殊区域,一般用于放置公司对外开放的服务器,例如
Web
服务器,
Ftp
服务器,邮件服务器等。其实从
ISA
的角度来看,
DMZ
就是一个网络。有些朋友可能会有些疑问,为什么不把这些服务器直接放到内网呢?为什么需要
DMZ
这个单独的网络呢?被发布的服务器放在内网是 可以的,我们在前面的博文中已经讨论了技术上的可能性。但把发布服务器放在内网并非最佳选择,因为内网中还有其他的计算机,这些计算机和发布服务器的安全 设置并不相同。例如内网中的域控制器并不适合开放给外网用户,财务室人员使用的工作站更是要严加防护。但如果这些计算机和发布服务器都放在内网,对我们进 行访问控制是不利的。一旦发布服务器出现安全问题,有可能会危及内网其他计算机的安全。因此比较安全的解决方法是把发布的服务器放在一个单独的隔离网络 中,管理员针对隔离网络进行有别于内网的安全配置,这样一来的话显然对安全更加有利。
下面我们用一个实例来为大家介绍一下如何利用
ISA2006
部署和配置
DMZ
,拓扑如下图所示,
Beijing
是
ISA2006
服务器,
Beijing
有三块网卡,分别连接内网,外网和
DMZ
,
DMZ
在
ISA
中也被称为外围。
Denver
在内网,
Perth
是
DMZ
,
Istanbul
在外网。
![](https://i-blog.csdnimg.cn/blog_migrate/661f35fe95d4fbcd5ed56b8821bfe38c.png)
一
创建
DMZ
Beijing
是一个有三块网卡的
ISA
服务器,我们准备在
Beijing
上手工创建
DMZ
网络,网络范围是
23.1.1
.0
-
23.1.1.255
。这个工作我们也可以通过
ISA2006
自带的三向外围防火墙模板来进行,但这个模板 和国内公司的网络环境不太匹配,因为国外公司的
DMZ
使用的往往是公网地址,而国内
DMZ
使用的大多是私网地址,这种环境上的差异会导致网络规则和防火墙策略配置上的差别,因此这个模板不太适合国内大多数公司使用,我们还是 来手工创建并配置一个
DMZ
网络。
顺便介绍一个
ISA
中网络的一些基本原则,供大家创建网络时参考:
1 、 ISA 防火墙上的 每个网络适配器可以有单个或者多个 IP 地址,但是每个 IP 地址只能与一个网络适配器所关联( NLB 的虚拟 IP 地址不在此讨论范围内)。
2 、 一个地址只能属于 一个网络; ISA 防火墙上任何一个网络适配器都必须并且只能属于一个网络,并且这个网络适配器上的所有地址都必须属于相同的网络;一个网络可以包含一 个或者多个网络适配器。
3 、 在网络定义的 地址范围中,应包含 ISA 防火墙对应网络适配器接口的 IP 地址。 ISA 将没有关联适配器的网络视为暂时断开连接,也就是说, ISA 服务器假定存在与该网络关联的适配器,但该适配器当前被禁用。当 ISA 服务器假定适配器断开连接时, ISA 服务器将拒绝去往或来自属于断开的网络的 IP 地 址的通讯, 因为这些数据并没有通过和此网络相关联的网络适配器来进行转发,并认为这些数 据包欺骗所有已启用的适配器。
4 、 对于除外部网络之 外的其他网络的网络适配器后还有其他子网的情况(即可以通过此网络适配器所关联的网络中的某台路由器到达的其他的网络,称之为网络后面的网络), 你必须在 ISA 防火墙对应的网络的定义中,包含这些子网的地址,否则 ISA 防火墙会触发 IP 欺骗或者配置错误的警告。这是因为没有在此网络中定义的 IP 地 址范围,不属于此网络,但是却又必须从此网络相关联的网络适配器进行数据的转 发, ISA 防 火墙认为这是一种欺骗行为。
5 、 通常情况下, 对于一个完整的网络定义,地址范围应该从网络地址起,到子网广播地址为止。例 如一个 C 类网 络 192.168.0.0/24 ,那么完整的网络地址范围为 192.168.0.0 ~ 192.168.0.255 。对于网络地址是从 A 类网络地址、 B 类网络地址中划分的子网的情况,在网络地址范围中还需要包含对应 的 A 类网络、 B 类网络的广播地址,例如一个 A 类子网 10.1.1 .0/24 ,那么内部网络地址中除了 10.1.1.0 ~ 10.1.1.255 外,还需要包 括 A 类网络的广播地址 10.255.255.255 ~ 10.255.255.255 。建议你总是通过添加适配器来添加内部网络地址。非完整的网络定义不需要遵 循此要求。
不过,对于没有 关联网络适配器的网络被视为暂时断开连接这一假设存在例外,在这些例外情况中, ISA 服务器将该网络视为网络后面的网络,这些例外包括下列网络:
默认的外部网 络。 ISA 防 火墙总是认为默认的外部网络位 于与默认 路由所关联的网络适配器(配置了默认网关的网络适配器)所关联的网络的后面,去往或来自外部网络中的地址的通讯必须通过该适配器。来自外部网络中 的地址但是通过其他适配器的任何通讯都将被视为具有欺骗性,并将被丢弃。如果 路由表中不存在默认网关项目, ISA 防火墙将认为外部网络暂时断开连接。
配置为使用 IPSec 隧道模式的站点到站点 VPN 网络。
被隔离的 VPN 客户端网络,该网络从不与任何适配器关联,并总是位于与 VPN 拨入适配器关联的 VPN 客户端网络的后面
现在我们开始创建
DMZ
,在
Beijing
上打开
ISA
管理器,如下图所示,选择新建网络。
![](https://i-blog.csdnimg.cn/blog_migrate/4f0cba7014b49c6abebf6fe870ee7200.png)
为新创建的网络命名为
DMZ
。
![](https://i-blog.csdnimg.cn/blog_migrate/24a5c5962c4bc567e1fb9fa72c5d3679.png)
网络类型是外围网络。
![](https://i-blog.csdnimg.cn/blog_migrate/b3560cfb13b31739664d479467473e96.png)
DMZ
的地址范围是
23.1.1
.0
-
23.1.1.255
,注意,这个地址范围如果之前属于内网,那我 们需要把它从内网范围中删除。根据我们刚才提到的网络原则,一个地址只能属于一个网络。
![](https://i-blog.csdnimg.cn/blog_migrate/aa1bebace43dadaf7e59b093650d3c4d.png)
如下图所示,我们成功地完成了
DMZ
网络的创建,是不是很轻松啊。
![](https://i-blog.csdnimg.cn/blog_migrate/1843488bb55dbdd5d60d612e02d4d5f1.png)
二
创建网络规则
DMZ
网络创建完毕后,我们需要创建
DMZ
网络和其他网络之间的网络规则。因为我们知道,
ISA
处理数据的访问请求,首先考虑的是这个数据包的源网络和目标网络的网络规则,因此网络规则决定了两个网络之间数据通讯的方向性和可能 性。网络规则的设定取决于实际的访问需求,在本次实验中,
DMZ
的
Perth
拥有网站和
Ftp
服务器。我们希望内网用户和外网用户都可以访问
DMZ
的资源,同时
DMZ
的服务器需要对外网进行访问。基于这个需求,我们可以把网络规则设定为从内网到
DMZ
是
NAT
,从
DMZ
到外网是
NAT
。为什么
DMZ
到外网不设定为路由呢?因为
DMZ
使用的是内网地址,外网用户无法直接访问这些
IP
地址。
在
Beijing
上打开
ISA
管理器,如下图所示,选择“创建网络规则”。
![](https://i-blog.csdnimg.cn/blog_migrate/1810c2d9027feaa9541cc621f8408ae1.png)
为网络规则命名为“从内网到
DMZ
”。
![](https://i-blog.csdnimg.cn/blog_migrate/05c161c1003a75a485a1ac6104028c16.png)
源网络是内网。
![](https://i-blog.csdnimg.cn/blog_migrate/28de3737d711612031a0cbf2ac6e83d0.png)
目标网络是
DMZ
。
![](https://i-blog.csdnimg.cn/blog_migrate/5398de2af382d23dd83029a31183d001.png)
源网络到目标网络的网络关系设定为
NAT
。
![](https://i-blog.csdnimg.cn/blog_migrate/82352a36d72885d2199e8842e172d1f5.png)
这样我们就设定了从内网到
DMZ
的网络关系是
NAT
,用同样的方法,我们设定从
DMZ
到外网的网络关系是
NAT
。
![](https://i-blog.csdnimg.cn/blog_migrate/05059e9e53fd2130b10692d5a59d056a.png)
三
创建防火墙访问规则
在我们的实验环境中,我们希望内网能够访问
DMZ
,由于内网和
DMZ
的网络关系是
NAT
,因此我们应该通过访问规则来完成这个任务。有的朋友可能会想,究竟什么情况下应该使用访问规则,而什么环境下更适用发布规则呢?我们 给出使用访问规则的原则:
对于访问规则 :
只适用于网络之 间具有路由网络关系或正向 NAT 关系(源网络到目的网络为 NAT )的网络间的访问;
一个访问规则可 以允许到多个服务器的访问;
在访问规则中只 应使用出站协议定义客户所访问的服务;
用户只能访问协 议中所定义的端口
下面我们来具体创建访问规则,在
Beijing
上打开
ISA
管理器,如下图所示,选择新建“访问规则”。
![](https://i-blog.csdnimg.cn/blog_migrate/fdad90a062fa677c6ff279f5c0220e36.png)
我们在访问规则命名为“允许为内网访问
DMZ
”。
![](https://i-blog.csdnimg.cn/blog_migrate/2bac333ae303a15cff3693588d0d69d2.png)
当访问请求符合规则时允许访问请求的操作。
![](https://i-blog.csdnimg.cn/blog_migrate/5a86e78b60f41679acbee35524592871.png)
允许所有的出站通讯协议。
![](https://i-blog.csdnimg.cn/blog_migrate/e5d2297c9091b5afc6603953c1147650.png)
访问请求的源网络是内网。
![](https://i-blog.csdnimg.cn/blog_migrate/c42670444ad0e54b48d2d654727c6a61.png)
访问请求的目标网络是
DMZ
。
![](https://i-blog.csdnimg.cn/blog_migrate/268df92d995f149c03fe5d4c0ef5f074.png)
允许所有用户的访问请求。
![](https://i-blog.csdnimg.cn/blog_migrate/b18d93e65bfb712905eb13a38f43a795.png)
如下图所示,顺利完成访问规则的创建。
![](https://i-blog.csdnimg.cn/blog_migrate/ba3bf2353cf6e70983b425a8cdaf4e58.png)
测试一下访问规则的成果,在内网的
Denver
上访问
DMZ
的
Perth
,如下图所示,访问正常。
![](https://i-blog.csdnimg.cn/blog_migrate/1111e9d291a06f671ab6f6e593082bed.png)
四
创建发布规则
我们在本次实验中还希望
DMZ
的服务器能够发布到外网,在这种情况下我们应该使用发布规则来完成任务。同样我们会给出使用发布规则的原则:
对于服务发布规则 :
适用于源网络和 目的网络之间具有路由网络关系或者 NAT 网络关系的网络间的访问。只是根据网络关系的不同,服务发布规则侦听的 IP 地址不同。在目的网络到源网络具有 NAT 网络关系的情况下,服务发布规则侦听的 IP 地址是 ISA 防火墙上连接源网络的网络接口的 IP 地址;而在源网络和目的网络之间具有路由网络关系或者 NAT 网络关系的的情况下,服务发布规则侦听的 IP 地址是被发布的服务器的 IP 地址;
一个发布规则只 能允许到一个服务器的访问;
服务发布规则中 只能使用入站协议定义所发布的服务;
通过服务发布规 则,你可以通过修改服务发布规则的属性轻松的实现端口转换,并且许多内建的应用层过滤器或其某些特性只能通过服务发布规则实现,例如 SMTP 过滤器和 Web 代理过滤器的链接转换功能,就只能通过服务发布规则实现;
服务器应配置为 SNAT 客户;如果服务发布规则的到属性中配置为 “ 使请求显示为来自初始客户端 ” ,那么服务器应该配置 ISA 防火墙为其默认网关。
下面我们来创建发布规则,如下图所示,在
ISA
管理器中选择新建“非
Web
服务器协议发布规则”。
![](https://i-blog.csdnimg.cn/blog_migrate/22ef8bc4ea1ae79c9666b62165255751.png)
我们为发布规则命名为“发布
Perth
上的
FTP
服务器”。
![](https://i-blog.csdnimg.cn/blog_migrate/9b84e7848eb339aebcc08dd9386ee18e.png)
被发布的服务器我们填写
Perth
的
IP
地址
23.1.1
.6
。
![](https://i-blog.csdnimg.cn/blog_migrate/ea3f85d30188ee12f431cfb00a93989b.png)
发布协议选择
FTP
服务器。
![](https://i-blog.csdnimg.cn/blog_migrate/0fbc880803de810a506dd6b9593575e7.png)
侦听器监听外网的请求。顺便提一下,以前遇到有朋友想把
DMZ
的服务器发布到内网,但未能成功,他的实验环境和我们完全一样。用发布规则的使用原则分析一下就明白了,内网访问
DMZ
不能通过发布规则而应该使用访问规则。
![](https://i-blog.csdnimg.cn/blog_migrate/172cdb6faa820d0951793b6f813f4706.png)
好,完成发布规则的创建。
![](https://i-blog.csdnimg.cn/blog_migrate/b29e042c32699276f407cb43d16088d9.png)
在外网的
Istanbul
上测试一下,看能否访问
Perth
的
FTP
服务器。测试结果如下图 所示,
DMZ
的
FTP
服务器发布成功!
![](https://i-blog.csdnimg.cn/blog_migrate/3566a885d728714c0cb8ed54134e8ab8.png)
今天我们用一个实例介绍了
DMZ
的部署和配置,
DMZ
从
ISA
的角度看,其实只是一个 网络。本文的重点在于讨论了一般意义上的网络创建原则,访问规则和发布规则的使用原则。大家如果能够对这些原理融会贯通,一定能够对大家的
ISA
管理大有裨益。
感谢ISA中文网的风间子提供的技术支持。