共用方式為


選擇輸出匿名 TLS 憑證

 

適用版本: Exchange Server 2007 SP3, Exchange Server 2007 SP2, Exchange Server 2007 SP1, Exchange Server 2007

上次修改主題的時間: 2007-04-25

下列情況會需要選擇輸出匿名傳輸層安全性 (TLS) 憑證:

  • 在 Edge Transport Server 和 Hub Transport Server 之間的簡易郵件傳送通訊協定 (SMTP) 工作階段,目的在於驗證

  • Hub Transport Server 之間的 SMTP 工作階段,目的在於只以公開金鑰加密

對於 Hub Transport Server 之間的通訊,會使用匿名 TLS 和憑證的公開金鑰來加密工作階段。但接下來的驗證是 Kerberos 驗證。在建立 SMTP 工作階段時,接收伺服器會初始化憑證選擇程序,以決定在 TLS 交涉時要使用的憑證。接收伺服器也會執行憑證選擇程序。如需該程序的相關資訊,請參閱輸入匿名 TLS 憑證的選擇

本主題說明選擇輸出匿名 TLS 憑證程序。所有步驟都會在傳送伺服器上執行。下圖顯示此程序的步驟。

note附註:
在最初載入憑證期間,Edge Transport server role 和 Hub Transport server role 的輸出憑證選擇程序並不相同。下圖顯示每一個伺服器角色的起點。

選擇輸出匿名 TLS 憑證

輸出匿名 TLS 憑證的選項

從 Hub Transport Server 傳送

  1. 從 Hub Transport Server 或 Edge Transport Server 建立 SMTP 工作階段時,Microsoft Exchange 會呼叫程序來載入憑證。

  2. 憑證載入程序視 SMTP 工作階段是從 Hub Transport Server 或從 Edge Transport Server 初始化而定。

    在 Hub Transport Server 上     會執行下列檢查:

    1. 檢查工作階段連接的傳送連接器,查看是否有針對 ExchangeServer 設定 SmartHostAuthMechanism 內容。您可以使用 Set-SendConnector 指令程式,在傳送連接器上設定 SmartHostAuthMechanism 內容。您也可以在特定傳送連接器的 [設定智慧主機驗證設定] 頁面上,選取 [Exchange Server 驗證],將 SmartHostAuthMechanism 內容設為 ExchangeServer。若要開啟 [設定智慧主機驗證設定] 頁面,請在傳送連接器內容頁面的 [網路] 索引標籤上按一下 [變更]。

    2. 檢查郵件的 DeliveryType 內容,以判斷值是否設為 SmtpRelayWithinAdSitetoEdge。您可以使用格式清單引數 ( | FL) 來執行 Get-Queue 指令程式,以檢視 DeliveryType 內容。

      上述兩個條件必須同時滿足。如果未啟用 ExchangeServer 作為驗證機制,或 DeliveryType 內容未設為 SmtpRelayWithinAdSitetoEdge,則傳送 Hub Transport Server 不會使用匿名 TSL,因而不會載入任何憑證。如果兩個條件都滿足,則憑證選擇程序會繼續執行步驟 3。

    在 Edge Transport Server 上     會執行下列檢查:

    1. 檢查工作階段連接的傳送連接器,查看是否有針對 ExchangeServer 設定 SmartHostAuthMechanism 內容。如同本主題先前所述,您可以使用 Set-SendConnector 指令程式,在傳送連接器上設定 SmartHostAuthMechanism 內容。您也可以在特定傳送連接器的 [設定智慧主機驗證設定] 頁面上,選取 [Exchange Server 驗證],將 SmartHostAuthMechanism 內容設為 ExchangeServer。若要開啟 [設定智慧主機驗證設定] 頁面,請在傳送連接器內容頁面的 [網路] 索引標籤上按一下 [變更]。

    2. 檢查工作階段連接的傳送連接器,判斷 SmartHost 位址空間內容是否包含“- -“。

      上述兩個條件必須同時滿足。如果未啟用 ExchangeServer 作為驗證機制,且位址空間不含“- -“,則傳送 Edge Transport Server 不會使用匿名 TLS,因而不會載入任何憑證。如果兩個條件都滿足,則憑證選擇程序會繼續執行步驟 3。

  3. Microsoft Exchange 會查詢 Active Directory 目錄服務,以便在伺服器上擷取憑證的指紋。伺服器物件上的 msExchServerInternalTLSCert 屬性會儲存憑證指紋。

    如果無法讀取 msExchServerInternalTLSCert 屬性,或值為 null,則 Microsoft Exchange 不會在 SMTP 工作階段中通告 X-ANONYMOUSTLS,因而不會載入任何憑證。

    note附註:
    在 Microsoft Exchange Transport 服務啟動期間,而非在 SMTP 工作階段期間,如果無法讀取 msExchServerInternalTLSCert 屬性,或值為 null,則會在應用程式記錄檔中記錄事件識別碼 12012。
  4. 如果找到指紋,憑證選擇程序會搜尋本機電腦憑證儲存區,找出符合指紋的憑證。如果找不到憑證,則伺服器不會通告 X-ANONYMOUSTLS,也不會載入憑證,並在應用程式記錄檔中記錄事件識別碼 12013。

  5. 從憑證儲存區載入憑證之後,會檢查憑證是否已過期。憑證的 Valid to 欄位會與目前的日期和時間進行比較。如果憑證已過期,則會在應用程式記錄檔中記錄事件識別碼 12015。但憑證選擇程序並不會失敗,仍會繼續進行其餘檢查。

  6. 檢查憑證是否為本機電腦憑證儲存區中的最後一個憑證。進行此項檢查時,會建置潛在憑證網域的網域清單。網域清單的依據是下列電腦組態:

    • 網域全名 (FQDN),例如 mail.contoso.com

    • 主機名稱,例如 EdgeServer01

    • 實體 FQDN,例如 EdgeServer01.contoso.com

    • 實體主機名稱,例如 EdgeServer01

    note附註:
    如果伺服器設定為叢集,或若為執行 Microsoft Windows 負載平衡的電腦,則會檢查下列登錄機碼,而非檢查 DnsFullyQualifiedDomainName 設定: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WLBS\Parameters\Interface\{GUID}\ClusterName
  7. 在建置網域清單之後,憑證選擇程序會執行搜尋,以在憑證儲存區中找出具有相符 FQDN 的所有憑證。憑證選取程序會以清單的形式列出所有合格的憑證。合格的憑證必須符合下列準則:

    • 憑證是 X.509 第 3 版或更新版本的憑證。

    • 憑證具備關聯的私密金鑰。

    • Subject 或 Subject Alternate Name 欄位包含在步驟 6 中擷取的 FQDN。

    • 已針對安全通訊端層 (SSL)/TLS 用途啟用憑證。尤其,已使用 Enable-ExchangeCertificate 指令程式,對此憑證啟用 SMTP 服務。

  8. 從合格憑證中,根據下列順序選擇最佳憑證:

    • 依最近的 Valid from 日期排序合格憑證。Valid from 是憑證上的第 1 版欄位。

    • 使用此清單中找到的第一個有效的公開金鑰基礎結構 (PKI) 憑證。

    • 如果找不到有效的 PKI 憑證,則會使用第一個自行簽署憑證。

  9. 決定最佳憑證之後,接著會進行另一項檢查,以決定其指紋是否符合 msExchServerInternalTLSCert 屬性中儲存的憑證。如果憑證相符,則會針對 X-AnonymousTLS 使用此憑證。如果不相符,則會在應用程式記錄檔中記錄事件識別碼 1037。但這不會導致 X-AnonymousTLS 失敗。

相關資訊

如需如何針對其他 TLS 案例選取憑證的相關資訊,請參閱下列主題: