relay是指當一封郵件在使用該組織的smtp服務,而該郵件的收件人不是該組織的內的郵箱。所以這個權限默認都是deny的,只有通過smtp身份驗證的用戶纔可以。如,contoso.com組織內的一臺服務器,他只接收收件人爲@contoso.com的郵件,當嘗試發到其他域時,就得有relay權限。如果沒有relay權限將不可發送郵件。如下圖:
我用telnet 到exchange 服務器進行測試,如果沒有開通relay權限將得到550 5.7.1錯誤
在此次升級中,我讓我們部門軟件開發人員要求他們在開發程序時如果調用smtp必須先進行身份驗證,這樣我就不必爲不同的系統開放relay權限了,但是對於一些舊系統無法添加身份驗證,那只能在exchange 2010上再開放relay權限。同時在exchange 2010中進行relay設定也不同於exchange 2003下,以下爲設定步驟:
1.新建一個anonymous的接收連接器
2.填寫relay名
3.直接下一步
4.刪除默認地址,並添加只可允許relay的客戶端
5.
6.打開剛建立的接收連接器,並設定權限組
7.同時設定該接收器允許接收的的郵件大限制,我這邊設了31000kb,即該連接器可以接收31000kb以下的郵件大小
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"