執行 HCW 之後,從內部部署傳送至 Exchange Online 的電子郵件會顯示為外部
原始 KB 編號: 4052493
徵狀
請試想下列案例:
- 您可以針對包含 Edge 伺服器的 Exchange Server 2016 或 Exchange Server 2013 環境執行混合式設定精靈。
- 使用者將電子郵件訊息從 Exchange 內部部署傳送至另一個使用者Exchange Online帳戶。 這兩位使用者都在您的組織中。
在此案例中,您會注意到接收者端有下列問題:
- 訊息似乎為外部。
- 寄件者不會解析為 GAL) (全域通訊清單中的收件者。
發生問題時的其他徵兆:
Send 連接器上有一個輸出至 Office 365TLSCertificateName屬性,可將訊息傳送至 Microsoft 365。 發生問題時,屬性值不會複寫到 Edge 伺服器。
當您從信箱伺服器執行
start-edgesynchronization
命令時,輸出會將 [組 態類型] 顯示為 [ 不完整]。 以下是範例摘錄:RunspaceId: RunspaceId Result: Incomplete Type: Configuration Name: userwap
下列錯誤會記錄在資料夾中的 EdgeSync 記錄檔中
<ExchangeInstallation>\TransportRoles\Logs\EdgeSync
。Date/Time.082Z,c76158dc155c4e2eab69305612c58890,689,,,EdgeServerName.contoso.com,50636,SyncEngine,Low,A 值在要求中無效。 [ExDirectoryException];內部例外狀況:要求中的值無效。 [DirectoryOperationException],「無法將專案 CN=Outbound 同步處理至 Office 365,CN=Connections,CN=Exchange 路由群組 (DWBGZMFD01QNBJR) ,CN=Routing Groups,, CN=Exchange 管理群組 (FYDIBOHF23SPDLT) ,CN=Administrative Groups,CN=ExchangeOrgName,CN=Microsoft Exchange,CN=Services,CN=Configuration,DC=domain,DC=com」,,,
若要啟用 EdgeSync 記錄,請執行下列命令:
Get-EdgeSyncServiceConfig | Set-EdgeSyncServiceConfig -LogLevel high -LogEnabled $true
原因
發生此問題的原因如下:
針對儲存在 Edge 伺服器上 ADAM 架構中的 ms-Exch-Smtp-TLS-Certificate 屬性,上限設為 256。
協力廠商憑證中的下列字串長度超過 256 個字元:
<I >Issuer< S >Subject name
若要判斷字串的長度,請執行下列命令:
("<I>$((Get-SendConnector 'outbound to Office 365').tlscertificatename.certificateissuer)<S>$((Get-SendConnector 'outbound to Office 365').tlscertificatename.certificatesubject)").length
若要解決此問題,請使用下列其中一個方法。
解決方案 1:在 Edge 伺服器上將上限增加到 1024
使用 [以系統管理員身分執行] 選項開啟Windows PowerShell視窗。
執行下列命令來安裝遠端伺服器管理工具組:
Add-WindowsFeature RSAT-ADDS
執行下列命令以匯入 Active Directory 模組:
Import-Module ActiveDirectory
執行下列命令,以確認屬性 TLSCertificateName 的 cap 值:
Get-ADObject -Filter {name -eq "ms-Exch-Smtp-TLS-Certificate"} -SearchBase ((get-ADRootDSE -Server localhost:50389).schemaNamingContext) -Server localhost:50389 -Properties * | Select-Object rangeupper
執行下列命令來設定 1024 上限:
Get-ADObject -Filter {name -eq "ms-Exch-Smtp-TLS-Certificate"} -SearchBase ((get-ADRootDSE -Server localhost:50389).schemaNamingContext) -Server localhost:50389 -Properties * | Set-ADObject -Replace @{rangeupper=1024}
在 HUB 傳輸或信箱伺服器上,執行下列命令將變更同步處理至 Edge 伺服器:
start-EdgeSynchronization
解決方案 2:設定使用 FQDN 的傳送連接器
設定 Send 連接器不要使用 TLSCertificateName 屬性來指定要在 TLS 交涉期間使用的憑證。 相反地,請使用 FQDN,根據選取 輸出匿名 TLS憑證中所述的憑證選取程式,選取適當的協力廠商憑證。
若要設定傳送連接器以使用 FQDN,請遵循下列步驟:
請確定將設為 FQDN 的功能變數名稱已設定為協力廠商憑證的主體名稱或主體別名。
執行下列命令,將 Send 連接器設定為使用 FQDN。 此命令也會清除 TLSCertificateName 屬性。
Set-SendConnector "outbound to Office 365" -Fqdn "Domain Note in step 1 of option 2" -TlsCertificateName:$null
在 HUB 傳輸或信箱伺服器上,執行下列命令將變更同步處理至 Edge 伺服器:
start-EdgeSynchronization
解決方法 3:使用不會超過上限的憑證
使用不會超過上限的憑證。 如果要執行這項操作,請依照下列步驟執行:
建立憑證,其中憑證中的下列字串小於 256 個字元:
<I >Issuer< S >SubjectName
匯入憑證。
將憑證與個別服務產生關聯。
再次執行混合式設定精靈以使用新的憑證。