内容概述:Tom在这篇文章中,以一个实例来分析了如何排除发布的SMTP服务器的故障。故障的原因是很简单的,不过我们学习的应该是那种系统化的网络故障分析过程及原理。原文有些字句不容易理解,我在翻译时进行了适当的修改,希望通过这篇文章,能够让你理解如何系统化的分析网络故障。
ISA防火墙的Web发布和服务器发布规则通常用于允许外部客户访问位于受ISA防火墙保护的网络的服务器。ISA防火墙保护的网络是在ISA防火墙中定义的网络,其他没有在ISA防火墙的网络中定义的任何IP地址都属于默认的外部网络。
SMTP服务器发布是很常见的,它允许你发布位于ISA防火墙保护后的网络中的SMTP服务器。发布的SMTP服务器可以是指定的SMTP中继或者是邮件传送的端点,例如Exchange服务器。SMTP服务器发布规则允许进入的TCP 25端口的数据通过ISA防火墙来到达ISA防火墙保护网络中的SMTP服务器。
但是,和简单的包过滤硬件防火墙不一样,ISA防火墙对进入的SMTP邮件执行状态过滤和应用层状态识别。ISA防火墙通过以下两个特性来执行应用层状态过滤:
对于SMTP服务器发布规则,SMTP过滤器总是启用的。SMTP邮件筛选器必须在ISA防火墙上、SMTP中继或者Exchange服务器上安装(我不推荐你在Exchange服务器上安装SMTP邮件筛选器)。SMTP邮件筛选器可以通过对每封邮件的内容进行监视,通过关键字、附件、源地址或者目的地址来阻止邮件,保护你的SMTP服务器不受到缓冲区溢出的攻击。
因为常用,所以ISA防火墙的SMTP服务器发布也带来了大量的故障问题。在这篇文章中,我们来讨论如何排除发布的SMTP服务器的故障。
在此文中,我们通过以下方面来进行介绍:
[page_break]
简单的试验网络环境
下图显示我我们使用的简单的网络环境的拓朴结构:一个ISA防火墙(具有两个网络适配器,分别连接到内部和外部网络),一个Exchange服务器(一个网络适配器连接到内部网络),还有一个位于外部网络的客户计算机(用于测试)。ISA防火墙和Exchange服务器的操作系统是Windows Server 2003,外部的客户操作系统是Windows XP,各计算机的TCP/IP设置见下图(注意,请仔细看,或许,你从中可以看出本文所述故障的所在)。
我们建立了一个SMTP发布规则发布内部IP地址为10.0.0.2的SMTP服务器,ISA防火墙上SMTP服务器发布规则侦听IP地址192.168.1.70的25端口。在DNS中已经做好了配置,有A记录指向192.168.1.70,并且域的MX记录解析到此A记录上。这一切看起来都工作正常,但是用户通知我们说当他们从Hotmail账户发送邮件到自己的邮箱中,不能在本地收到邮件,看起来好像邮件没有到达Exchange服务器。
这是一个很常见的网络环境,解决这个问题是很简单的,只需要系统化的进行处理。首先我们使用Telnet来开始研究。
使用Telnet
首先我们需要确认不是DNS的问题。在Web和服务器发布规则出现问题时,很多时候都是因为DNS的故障。我们在外部客户上可以使用Telnet来连接到ISA防火墙SMTP服务器发布规则所指定的外部侦听器上。
在外部客户计算机上打开一个命令提示符,然后输入以下命令: telnet 192.168.1.70 25 然后敲回车,当你自己使用时,请替换192.168.1.70这个IP地址为你发布规则中侦听的实际IP地址。如果你看到下图,你可以知道这不是DNS引起的问题。这不是说DNS就没有问题,但是在这点我们可以确定问题和DNS无关的(如果只是DNS的问题,那么通过IP应该是可以连接的)。
使用ISA防火墙的实时日志查看器 现在我们想观察连接到ISA防火墙外部接口的Telnet连接,我们可以通过ISA防火墙的实时日志查看器来观察。执行以下步骤来配置实时日志查看器: 在这点我们知道外部客户发起的连接到达了ISA防火墙,并且服务器发布规则正确的进行了配置。下一步我们需要使用网络监视器来看连接过程中发生了什么。 在ISA防火墙和Exchange服务器上使用网络监视器 我们可以在ISA防火墙和Exchange服务器上使用网络监视器来深入研究我们的问题。你同样可以使用网络监视器来解决大部分使用ISA防火墙遇到的问题。 首先我们需要安装网络监视器,,它默认是没有安装的。你可以通过控制面板中的添加/删除程序来安装它。安装好后,在ISA防火墙上执行以下步骤: 因为ISA防火墙的服务器发布规则是正常工作的,所以下一步我们需要在Exchange服务器上运行网络监视器。在Exchange服务器上安装网络监视器,执行以下步骤: 在此例中,为什么没有IP地址为10.0.0.10的主机回复ARP请求信息呢?因为网络中没有主机具有这个IP地址。现在我们需要研究为什么当外部客户连接时Exchange服务器需要寻找这个IP的主机呢?因为外部客户和Exchange服务器不处于同一子网中,Exchange响应外部客户的请求时,会将数据包转发至自己的默认网关,所以转发给了错误的默认网关10.0.0.10。这可能是在配置Exchange网络适配器属性时的输入错误。 解决问题 我们有两个办法来解决这个问题: 服务器发布规则的默认配置要求发布的内部服务器是SNAT客户。不过,在ISA Server 2004防火墙中,你可以在服务器发布规则中选择保留客户源IP地址或者将ISA防火墙的IP地址作为源地址。对于ISA防火墙的IP地址作为源地址的情况,你不需要配置发布的服务器作为SNAT客户。 方式一:修改Exchange服务器的默认网关 我们将Exchange服务器的默认网关修改为ISA防火墙的内部接口的IP地址,现在我们来看看发生了什么。你可以看到外部客户发起了连接,并且Exchange服务器进行了回复。 在外部客户上进行Telnet,你可以看到如下图的提示: 方法二:修改SMTP服务器发布规则 另外一个办法是配置服务器发布规则,使用ISA防火墙的IP地址来替换客户的源IP地址。在ISA管理控制台中双击SMTP服务器发布规则,然后点击到标签,在到标签,选择请求表现为来自ISA Server计算机,点击确定后再点击应用按钮保存修改和更新防火墙策略。 再次在Exchange服务器上运行网络监视器,然后再执行Telnet,你可以看到发起连接的客户端IP为10.0.0.1,这个是ISA防火墙的内部接口的IP地址。Exchange服务器进行了响应。在这种情况下,就不需要配置Exchange服务器为SNAT客户了。但是这样,在Exchange服务器的日志中,记录的就都是10.0.0.1的IP地址了。
自由广告区 |
分类导航 |
邮件新闻资讯: 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营销 | 网络营销 | 营销技巧 |营销案例 邮件人才:招聘 | 职场 | 培训 | 指南 | 职场 解决方案: 邮件系统|反垃圾邮件 |安全 |移动电邮 |招标 产品评测: 邮件系统 |反垃圾邮件 |邮箱 |安全 |客户端 |