博威---云架构决胜云计算

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2368|回复: 4

配置PIX515E DMZ的基本方法与故障排除

[复制链接]
发表于 2007-10-1 21:02:55 | 显示全部楼层 |阅读模式
配置PIX515E DMZ的基本方法与故障排除
  一、基本环境
  当前公司有PIX 515E防火墙一台(三个接口),服务器若干。要求将服务器迁移至DMZ区域并确保服务器正常工作,简略拓扑结构图。
  二、配置DMZ基本命令
  1.分别定义outside、inside、dmz的安全级别
  nameif ethernet0 outside security0               #定义E0口为非信任端口,security0代表此端口安全级别最低
  nameif ethernet1 inside security100             #定义E1口为信任端口,security100代表此端口安全级别最高
  nameif ethernet2 dmz security50                 #定义E2口为DMZ端口,security50代表此端口安全级别介于信任与非信任端口之间
  这里的数字0、50、100可自行调整,但需要注意数字之间的大小关系不能混淆。
  2.设置dmz接口IP
  ip address dmz 10.0.200.1 255.255.255.0         #设置DMZ接口IP地址,设置好后可以按拓扑结构图测试从PIX上ping 10.0.200.2检查连通性。
  3.允许dmz区域的主机通过icmp数据包以及访问外网的80端口
  access-list acl_dmz permit icmp any any             #允许DMZ主机访问外部网络icmp协议
  4.把acl_dmz规则邦定到dmz端口上使之生效
  access-group acl_dmz in interface dmz               #应用策略到DMZ接口
  5.设置静态的因特网、局域网、dmz区的访问关系
  static (dmz,outside) 218.104.XX.XX 10.0.200.2 netmask 255.255.255.255 0 0          #发布DMZ服务器到因特网
  6.允许outside区域访问dmz区域特定的某个端口
  access-list 100 permit tcp any host 218.104.XX.XX eq www                    #设置策略允许因特网访问DMZ服务器80端口
 楼主| 发表于 2007-10-1 21:07:33 | 显示全部楼层
三、基本测试方法及故障排除

  1、利用 ping/tracert命令测试

  在10.0.200.2服务器上,ping 10.0.200.1 正常,ping 10.0.6.8 不通;

  在10.0.6.8测试机上,ping 10.0.200.1 不通,ping 10.0.200.2不通,ping 10.0.1.254 正常;

  问题:局域网与DMZ区不能正常通讯。

  故障分析与排除:默认情况下,PIX防火墙的局域网接口可以访问DMZ接口,但DMZ接口不能访问局域网接口,在PIX上用命令show route可以看到有一条隐藏的到DMZ区域的静态路由存在,也就是说配置好DMZ后局域网就应该可以访问DMZ区域服务器(但DMZ接口是不允许 ping的)。

  但是为什么当前配置好DMZ后局域网测试机器不能正常访问DMZ区域的服务器呢?这里需要注意一点,在局域网访问DMZ的IP地址时,用命令 tracert 10.0.200.2时发现局域网访问10.0.200.2的数据包从因特网口出去了!根本就没有发往DMZ接口。所以重新加一条命令:

  access-list nonat permit ip 10.0.6.0 255.255.255.0 10.0.200.0 255.255.255.0

  nat (inside) 0 access-list nonat

  再用 ping/tracert命令测试结果如下:

  在10.0.200.2服务器上,ping 10.0.200.1 正常,ping 10.0.6.8 不通;

  在10.0.6.8测试机上,ping 10.0.200.1 不通,ping 10.0.200.2正常,ping 10.0.1.254 正常;
 楼主| 发表于 2007-10-1 21:07:49 | 显示全部楼层
、因特网访问DMZ

  用笔记本拨号上网,访问http://218.104.XX.XX 显示正常,说明DMZ服务器发布成功。

  3、DMZ访问局域网

  在10.0.200.2服务器上,利用远程桌面方式访问10.0.6.8(端口号被手工修改为9989,非标准端口3389), 访问超时。

  问题:DMZ不能访问局域网

  故障分析与排除:默认情况下DMZ区域是不能访问局域网网络的。但有些特殊情况:比如将WEB放在DMZ区,但是后台数据库放在了局域网。这样就必须使DMZ某些服务器可以访问局域网内特殊机器特殊端口。所以需要在PIX上更加策略以使DMZ可以访问局域网。

  所以应该在策略上加一条命令:

  access-list acl-DMZ permit tcp 10.0.200.0 255.255.255.0 host 10.0.6.8 eq 9989            #允许DMZ可以访问10.0.6.8的9989端口,经测试可以正常访问。
 楼主| 发表于 2007-10-1 21:08:55 | 显示全部楼层
4、DMZ不能访问因特网

  在10.0.200.2的机器,访问 www.baidu.com 不能正常显示页面。

  问题:DMZ不能正常访问因特网

  故障分析与排除:DMZ原则是不能访问因特网的,但是因为某些特殊情况比如邮件服务器放在DMZ时,则必须允许该服务器访问因特网的SMTP协议(25端口),所以还必须在DMZ接口上应用的策略上加一条命令:

  access-list acl_dmz permit tcp 10.0.200.0 255.255.255.0 any eq 80          #允许DMZ访问外部网络tcp 80端口

  access-list acl_dmz permit tcp 10.0.200.0 255.255.255.0 any eq 53          #允许DMZ访问外部网络tcp 53端口

  access-list acl_dmz permit udp 10.0.200.0 255.255.255.0 any eq 53         #允许DMZ访问外部网络udp 53端口

  加完这条命令后,测试访问 www.baidu.com 仍然不能正常显示页面,问题依旧
 楼主| 发表于 2007-10-1 21:09:10 | 显示全部楼层
继续查找问题可能存在的问题,用命令ping 外网DNS发现可以正常ping通,再ping百度的IP地址发现也可以ping通,telnet 百度地址的80端口也正常,但就是打不开百度的页面,用其他网站测试结果相同。

  这个问题研究了很久,没有得到很好的解决办法,后来跟我的经理一起讨论研究这个问题,他让我试一下网通的DNS看行不行。我把DMZ服务器的DNS修改成网通DNS后,发现可以正常访问百度首页,其他网站也正常打开。这个问题是经验问题,因为我们公司是网通链路,而我在DMZ服务器上设置的是电信的DNS (因为这个DNS我记得非常熟,所以基本上做测试都用它),而没有想到电信和网通在DNS服务器解析上有严格的保护措施,导致最终问题解决被推迟了很长时间。

  以上是我这次在PIX 515E上做DMZ配置的一些心得和体会,测试过程不是很复杂,但是相对一些初次接触DMZ的新手来说值得一看,DMZ的原理都一样,只是每种设备的配置不相同而已。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|boway Inc. ( 冀ICP备10011147号 )

GMT+8, 2024-11-24 05:54 , Processed in 0.907926 second(s), 16 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表