邮件策略在域树中的的实战应用
 
前段时间帮朋友解决了一个邮件策略问题,今天把它写出来供大家参考。拓扑如下图所示,某公司在域树环境下,父域是 exchtest.com ,子域是 shanghai.exchtest.com Florence 是父域的域控制器, Firenze 是子域的域控制器, Berlin Exchange 服务器。要求 Berlin ActiveDirectory 内的所有用户提供邮件支持,如果用户属于父域,那用户的邮箱后缀是 @exchtest.com ,如果用户隶属于子域,那用户的邮箱后缀是 @shanghai.exchtest.com  
解决这个问题并不难,主要注意以下三点
A  在子域中进行域准备
B  为子域用户创建收件人策略
C  为子域用户创建收件人更新服务


 
下面开始实验
 
  确定父域和子域的域控制器可以进行正常的 Active Directory 复制
 
首先我们要确保父域与子域之间可以进行正常的 Active Directory 复制。 Exchange Active Directory 结合得非常紧密,一旦出现了 Active Directory 的问题, Exchange 肯定会受到影响,所以我们首先检查两个域控制器之间的复制状态是否正常。在 Florence 上,开始-管理工具- Active Directory 站点和服务,在 Florence 的复制伙伴 Firenze 上选择“立即复制副本”,如下图所示

如下图所示, Active Directory 复制正常。这样我们就可以开展后续操作;否则应仔细检查 Active Directory 复制失败的原因,待故障排除后,再向下进行。
 

 
  在子域的域控制器上进行域准备
 
如果想让 Exchange 服务器为子域用户提供邮件服务,那么需要在子域的域控制器上进行域准备,域准备为 Exchange 读取及修改子域用户属性时提供了必要的权限。在 Firenze 上进行域准备很容易,放入 Exchange2003 的安装光盘,在命令提示符下输入 D:\setup /domainprep
D 是光驱的盘符,如下图所示。当然,在图形界面下从 Exchange 部署向导中进行域准备也是可以的。

 
开始域准备,确定选择的操作是 Domainprep


 
完成域准备后,现在 Exchange 可以为子域用户创建邮箱了。
 
为子域用户创建收件人策略
 
收件人策略决定了 Exchange 中邮箱的邮件地址, Exchange 安装完成后,会生成一个默认的收件人策略,默认策略将邮箱的邮件地址设置为以 exchange 安装时的域名作为邮箱后缀。因此现在无论是父域还是子域的用户,只要创建邮箱,邮箱后缀都是 @exchtest.com 。我们可以在 Exchange 服务器上打开 Exchange 系统管理器,在收件人策略中,双击“ Default Policy ”,在电子邮件地址(策略)标签中就可以看到默认的收件人策勒了。如下图所示。

 
如果想为子域用户提供以 @shanghai.exchtest.com 为后缀的邮箱地址,那一定要为子域用户创建新的收件人策略,在新的收件人策略中将子域用户的邮箱地址设置为以 @shanghai.exchtest.com 为后缀。但问题是,我们怎么判断一个邮箱是为子域用户创建的呢?我们要考虑一下在 Active Directory 中父域用户和子域用户在哪些属性上有区别,我们可以利用这些属性对父域子域用户加以区分。我们容易想到的是,父域用户和子域用户的登录名不同,父域用户的登录名是 @exchtest.com ,子域用户的登录名是 @shanghai.exchtest.com ,有这些就足够了。
 
 
Exchange 系统管理器中,我们为子域用户创建一个新的收件人策略

 
此策略将影响收件人的电子邮件地址

 
为新策略命名为 shanghai

 
在收件人策略中,切换到电子邮件地址(策略)标签,选中 SMTP 策略,点击“编辑”

 
将收件人的 SMTP 地址改为 @shanghai.exchtest.com

 
如何确保这个策略用于子域用户?在策略的常规标签下,在筛选规则处,点击“修改”

 
在筛选规则中切换到高级标签,在字段中选择用户的登录名结尾为 shanghai.exchtest.com ,这就是我们针对子域用户设置的筛选条件

 
现在 Exchange 中有了两个收件人策略,我们创建的新策略优先级高,默认策略优先级低。以后创建邮箱时, Exchange 先用高优先级的策略判断一下用户的登录名是不是以 shanghai.exchtest.com 结尾,如果匹配,就让邮箱地址以 @shanghai.exchtest.com 为后缀;如果不匹配,就用默认策略来处理,那样的话邮箱地址的后缀就会是 @exchtest.com

 
为子域用户创建收件人更新服务
 
Exchange 的收件人更新服务可以确保在创建新的收件人策略后,其内容应用于组织中的相应收件人。收件人更新服务还将现有的策略应用于在策略建立后新建的收件人。通过这种方式,可以利用最小的管理开销保持信息最新。每个域至少要设置一个收件人更新服务,并且必须从 Exchange 服务器上运行该服务。对于没有 Exchange 服务器的域,必须从该域外部的 Exchange 服务器上运行收件人更新服务。
因此我们应该在Exchange服务器Berlin上为子域shanghai.exchtest.com创建一个收件人更新服务,以使我们创建的收件人策略能应用到子域用户的邮箱上。
 
Exchange系统管理器中,新建“收件人更新服务”

 
设置一下收件人更新服务负责的域,点击浏览,在域列表中选择 shanghai.exchtest.com

 
选择由哪个 Exchange 服务器负责收件人更新,由于 Active Directory 中只有一个 Exchange 服务器,因此只能选择 Berlin

 

 
完成后,在子域中创建一个用户试试。由于事先没有将 Exchange 的管理权限委派给子域管理员,因此为子域用户创建邮箱的操作在父域的域控制器 Florence 上进行。在 Florence 上打开 Active Directory 用户和计算机,右键点击 exchtest.com ,选择“连接到域”,在域列表中选择 shanghai.exchtest.com 。这样我们就可以创建子域用户了。新建一个用户 user1

Berlin 上为子域用户 user1 创建邮箱

 
检查一下 user1 的邮件地址,如下图所示。 User1 的邮箱地址是 [email][email protected][/email] ,设置成功!

 
在父域中创建一个 user1 用户,看看他的邮件地址,如下图所示, [email][email protected][/email] OK ,问题解决。

 
特别提示,不要忘记在 DNS 中为 shanghai.exchtest.com 创建 MX 记录,否则子域用户可能收不到其他邮件发来的邮件哦。