relay是指当一封邮件在使用该组织的smtp服务,而该邮件的收件人不是该组织的内的邮箱。所以这个权限默认都是deny的,只有通过smtp身份验证的用户才可以。如,contoso.com组织内的一台服务器,他只接收收件人为@contoso.com的邮件,当尝试发到其他域时,就得有relay权限。如果没有relay权限将不可发送邮件。如下图:
我用telnet 到exchange 服务器进行测试,如果没有开通relay权限将得到550 5.7.1错误
![](../p_w_upload/201106/215154740.jpg)
在此次升级中,我让我们部门软件开发人员要求他们在开发程序时如果调用smtp必须先进行身份验证,这样我就不必为不同的系统开放relay权限了,但是对于一些旧系统无法添加身份验证,那只能在exchange 2010上再开放relay权限。同时在exchange 2010中进行relay设定也不同于exchange 2003下,以下为设定步骤:
1.新建一个anonymous的接收连接器
![](../p_w_upload/201106/215942266.jpg)
2.填写relay名
![](../p_w_upload/201106/220131419.jpg)
3.直接下一步
![](../p_w_upload/201106/220245498.jpg)
4.删除默认地址,并添加只可允许relay的客户端
![](../p_w_upload/201106/220407847.jpg)
5.
![](../p_w_upload/201106/220450687.jpg)
6.打开刚建立的接收连接器,并设定权限组
![](../p_w_upload/201106/220649394.jpg)
7.同时设定该接收器允许接收的的邮件大限制,我这边设了31000kb,即该连接器可以接收31000kb以下的邮件大小
![](https://i-blog.csdnimg.cn/blog_migrate/9d31c63a6e5945c3bf5dd52ea90cb6ae.jpeg)
8.最后一步也是最重要的一步,只有这一步的设定才启用了Anonymous relay权限,该设定需要通过exchange power shell命令,并且要连接到连接器所在的hub服务器上。命令如下:Get-ReceiveConnector后为连接器名relay
Get-ReceiveConnector "relay" | Add-ADPermission -User "NT AUTHORITY\ANONYMOUS LOGON" -ExtendedRights "Ms-Exch-SMTP-Accept-Any-Recipient"<?xml:namespace prefix = o />
微软官方文档路径为:
转载于:https://blog.51cto.com/sting/583813