米葫芦网

如何在Exchange 2007中自定义未送达报告(NDR)

热度:7℃ 发布时间:2023-11-16 20:08:37
未送达报告 (NDR) 是一种类型的发送状态通知。只要邮件无法送达,就会生成 NDR。如果服务器检测到投递失败的原因,则会将该原因与状态代码及所写的相应错误消息相关联。

但是这些NDR都是系统自动生成的,有时候用户可能想自定义NDR中的内容。在Exchange 2003中,需要修改DLL文件才能实现,整个操作过程比较复杂。我们不在这里讲述了。在Exchange 2007,我们可以很容易地实现它。

首先我们需要创建自定义的传递状态通知(DSN),然后将自定义的DSN通过传输规则联系起来。这样当用户发送邮件后会自动触发传输规则,传输规则将根据自定义的DSN向发件人返回未送达报告 (NDR),并删除原始邮件。;;

1. 创建自定义的DSN:

1) 打开Exchange Management Shell,运行下面的命令:

New-SystemMessage -DsnCode 5.7.228 -Language En -Internal $True -Text "Sending messages between the Sales and Brokerage groups is prohibited by policy #123. For more information, see Compliance Policy 123."

-Internal 参数设置为True,当内部用户发送邮件时触发该DSN。如图1所示。

图1

New-SystemMessage -DsnCode 5.7.228 -Language En -Internal $False -Text "Sending messages between the Sales and Brokerage groups is prohibited by policy #123. For more information, see Compliance Policy 123."

-Internal 参数设置为False,当外部用户发送邮件给您的组织中的用户发送邮件时触发该DSN。如图2所示。

图2

2) 还可以运行下面的命令来检查刚才创建的DSN,如图3所示:

图3

Get-systemmessage

注意:在这里我们只是做演示,对内部发件人和外部发件人使用相同的文本(-Text后面的参数),在实际环境中,您可以根据自己的需要来设置文本。我们在这里设置的语言是英文,您可以设置其他的语言版本。比如中文的、日文等等。
;

  2. 创建传输规则将自定义DSN关联起来:

1) 打开Exchange Management Console,然后定位到组织配置-Hub Transport,点击传输规则,

2) 右键选择新建传输规则,输入名称比如dsntest。在comment中您可以输入一些信息描述该规则的用途。如图4所示。

图4

3) 然后点击下一步,选中send to people,点击people,点击add,将test001添加进来,如图5所示。

图5

4) 然后点击下一步,选择send bounce message to sender with enhanced status code。如图6所示。然后点击5.7.1,输入5.7.228。你刚才创建DSN指定的代码。当然你也可以点击Delivery not authorized, message refused然后输入自定义的信息。我们这里保持缺省的不变。如图7所示。

图6

图7

5) 点击两次下一步,然后点击new,点击finish。如图8所示。

图8

注:该配置是在150795M1上完成的。

3. 验证结果。

先介绍一下环境配置,我们有两个Exchange 2007组织。它们分别属于域dc.com和域wan.com。

dc.com域中的用户:dcadministrator,dctest001;

dc.com域中的Exchange 2007服务器名称:150795M1,该服务器有客户端访问服务器、邮箱服务器和中心传输服务器角色,同时该服务器还是DC。

wan.com域中的用户:wanadministrator。

dc.com域中的Exchange 2007服务器名称:roc-dc,该服务器有客户端访问服务器、邮箱服务器和中心传输服务器角色。同时该服务器还是DC。

我们首先在域dc.com中的内部进行测试:

1. 我们先通过OWA登录dcadministrator的邮箱,

2. 然后发送一封邮件给dctest001,

3. 然后等待系统的退信,该NDR中的用户信息部分显示的是我们刚才自定义的信息。如图9所示。

图9

我们首先在域dc.com中的外部进行测试,即使用外部用户wanadministrator发送邮件给dctest001。

1. 我们先通过OWA登录wanadministrator的邮箱,

2. 然后发送一封邮件给dctest001,

3. 然后等待系统的退信,系统确实退信了,但是产生的NDR不是我们想要的。如图10所示。

图10

出现该问题是因为当将Exchange 2007服务器升级到update rollup 4或者最新update rollup,DSNConversionMode的缺省值是UseExchangeDSNs。如果该参数设置为UseExchangeDSNs,Exchange Server 2007将DSNs转换为Exchange 2007 DSN格式。以前DSN中包含的任何自定义的文本或附件将会被覆盖。如果将该参数设置为PreserveDSNBody,Exchange Server 2007将DSNs转换为Exchange 2007 DSN。但是,DSN消息中的文本主体会保留。如果您将该参数设置为DoNotConvert,Exchange Server 2007 不修改DSN消息。实际上,Exchange Server 2007将该消息作为标准的邮件来传递。

我们先查看一下Exchange服务器roc-dc 上的DSNConversionMode的缺省值,如图11所示。运行命令:Set-transportConfig -DSNConversionMode DoNotConvert,然后在发送一次邮件给dctest001。

图11

这个时候收到的NDR正好是我们想要的。如图12所示。由于我们将该参数设置为DoNotConvert,所以Exchange Server 2007没有修改DSN,并且将原来的邮件作为附件附加上。

图12

如果我们运行Set-transportConfig -DSNConversionMode PreserveDSNBody命令的话,这个时候NDR中不包含原来的邮件。如图13所示。

网友评论
评论
发 布

更多软件教程
  • 软件教程推荐
更多+
Greenfoot设置中文的方法

Greenfoot设置中文的方法

Greenfoot是一款简单易用的Java开发环境,该软件界面清爽简约,既可以作为一个开发框使用,也能够作为集成开发环境使用,操作起来十分简单。这款软件支持多种语言,但是默认的语言是英文,因此将该软件下载到电脑上的时候,会发现软件的界面语言是英文版本的,这对于英语基础较差的朋友来说,使用这款软件就会...

07-05

Egret UI Editor修改快捷键的方法

Egret UI Editor修改快捷键的方法

Egret UI Editor是一款开源的2D游戏开发代码编辑软件,其主要功能是针对Egret项目中的Exml皮肤文件进行可视化编辑,功能十分强大。我们在使用这款软件的过程中,可以将一些常用操作设置快捷键,这样就可以简化编程,从而提高代码编辑的工作效率。但是这款软件在日常生活中使用得不多,并且专业性...

07-05

KittenCode新建项目的方法

KittenCode新建项目的方法

KittenCode是一款十分专业的编程软件,该软件给用户提供了可视化的操作界面,支持Python语言的编程开发以及第三方库管理,并且提供了很多实用的工具,功能十分强大。我们在使用这款软件进行编程开发的过程中,最基本、最常做的操作就是新建项目,因此我们很有必要掌握新建项目的方法。但是这款软件的专业性...

07-05

Thonny设置中文的方法

Thonny设置中文的方法

Thonny是一款十分专业的Python编辑软件,该软件界面清爽简单,给用户提供了丰富的编程工具,具备代码补全、语法错误显示等功能,非常的适合新手使用。该软件还支持多种语言,所以在下载这款软件的时候,有时候下载到电脑中的软件是英文版本的,这对于英语基础较差的小伙伴来说,使用这款软件就会变得十分困难,...

07-05

最新软件下载