2006年10月26日

在 Trend Micro IMSS 外发邮件时使用目标域名的特定 MX RRs

Author: Hagen.GoO 转载请注明作者出处
MSN contact:
wantm009@hotmail.com
Keyword: Trend Micro,TrendMicro,IMSS,InterScan,Mail Gateway


朋友公司安装在 Windows Server 上的 Trend Micro IMSS 遇到了一点问题,大致情形是:
某目标域名(target.com)有3个 MX 记录,分别是:

target.com. IN MX 10 mx1.target.com.
target.com. IN MX 20 mx2.target.com.
target.com. IN MX 50 mx-backup.target.com.

某些特殊原因,IMSS在连接 mx1/mx2 的时候老是 554 被拒,猜想IMSS的IP可能进入了对方 mx1/mx2 的黑名单,不过手动测试 mx-backup 倒是可以连接。但是愚蠢的 IMSS 每次都是按照 MX 的优先级依次尝试,当连接到 mx1/mx2 发生 554 被拒时,就停止尝试,无论如何都无法连接到 mx-backup 。

原想:修改 %SYSTEMROOT%\SYSTEM32\DRIVERS\ETC\HOSTS 手动添加一条“x.x.x.3 target.com”(x.x.x.3 表 mx-backup 的IP地址)的记录就可以搞定。但测试发现 IMSS 使用的是自己的 DNS 函数,并不会调用本机上的 HOSTS 文件,此法作古。

经过一番苦思,得另两法:

1,修改路由法。即在 IMSS 的服务器上手动修改本机到 mx1/mx2 的路由,以期 IMSS 无法连接到 mx1/mx2,继而被迫连接 mx-backup。(当然也可以在上一级路由器上,或者防火墙上配置)操作命令行下执行:

route add x.x.x.1 mask 255.255.255.255 GATEWAY-IP metric 99 (x.x.x.1 表 mx1的IP地址)
route add x.x.x.2 mask 255.255.255.255 GATEWAY-IP metric 99 (x.x.x.2 表 mx2的IP地址)
注: GATEWAY-IP 应是一个不可到达,或者无效的网关地址。可以是本机的内网IP,或同网段其它IP。

2,使用 SmartHost 递交法。即针对 target.com 域的邮件都转发到 SmartHost 中所列的 mx-backup 上。操作如下:

IMSS WEB 控制台 -> Configuration -> SMTP Routing -> Delivery -> Domain-Based Delivery
-> 添加一个记录:域名target.com 递交方法 SmartHost x.x.x.3:25 (如图:)

方法2可能会有小小的漏洞:即对于 target.com 域来说,本地 IMSS 是一个 OpenRelay 的服务器;但方法1则受到网络配置的局限。因此是各有千秋,依酌而使吧。

没有评论: