使用網域安全性:設定相互 TLS
適用版本: Exchange Server 2010 SP2, Exchange Server 2010 SP3
上次修改主題的時間: 2009-12-07
本主題說明如何設定網域安全性的相互傳輸層安全性 (TLS),這是 Microsoft Exchange Server 2010 和 Microsoft Office Outlook 2007 中的功能集,相較於 S/MIME 及其他郵件層安全性解決方案,提供相對低成本的替代方案。
在此案例中,本主題說明虛構公司 Contoso 的 Exchange 系統管理員如何設定其 Exchange 2010 環境,以便與其合作夥伴 Woodgrove Bank 交換安全網域電子郵件。Contoso 系統管理員想要確定往返於 Woodgrove Bank 的所有電子郵件都使用相互 TLS 加以保護。此外,他們也想要設定網域安全性功能,如此在無法使用相互 TLS 的情況下,拒絕往返於 Woodgrove Bank 的所有郵件。
Contoso 具有可產生憑證的內部公開金鑰基礎結構 (PKI)。PKI 的根憑證已由主要協力廠商憑證授權單位 (CA) 簽署。Woodgrove Bank 使用相同的協力廠商 CA 來產生憑證。因此,Contoso 和 Woodgrove Bank 彼此信任對方的根 CA。
為了設定相互 TLS,Contoso 的 Exchange 系統管理員執行下列程序:
步驟 1:產生 TLS 憑證的憑證要求
步驟 2:將憑證匯入 Edge Transport Server
步驟 3:設定輸出網域安全性
步驟 4:設定輸入網域安全性
步驟 5:測試安全網域郵件流程
必要條件
本主題假設您已閱讀且了解產生協力廠商憑證服務的要求。
網域安全性要求完整部署 Microsoft Exchange EdgeSync 服務。一般來說,在網域安全性功能中不是以 ExchangeCertificate 指令程式所進行的組態變更,會在組織內變更,並使用 Microsoft Exchange EdgeSync 服務與 Edge Transport Server 進行同步處理。
您必須設定電腦和 PKI 環境,讓憑證驗證和憑證撤銷清單檢查正常運作,才能在 Edge Transport Server 上順利執行相互 TLS。如需相關資訊,請參閱在 Edge Transport Server 上使用 PKI 以提供網域安全性。
即使此案例中的個別組態步驟可以透過較少的權限完成,但若要完成整個端對端案例的工作,您的帳戶必須是「組織管理」管理角色群組的成員。
步驟 1:產生 TLS 憑證的憑證要求
Contoso 具有附屬於協力廠商 CA 的內部 PKI。在此案例中,從屬關係是因為 Contoso 在公司基礎結構中部署的 CA,包含公開協力廠商 CA 已簽署的根憑證。公開協力廠商 CA 預設是 MicrosoftWindows 憑證儲存區的其中一個信任的根憑證。因此,在信任的根儲存區含有相同協力廠商 CA 且連接到 Contoso 的任何用戶端,皆可驗證 Contoso 出示的憑證。
Contoso 有兩個 Edge Transport Server 需要 TLS 憑證:mail1.contoso.com 和 mail2.mail.contoso.com。因此,Contoso 電子郵件系統管理員必須產生兩個憑證要求,每個伺服器各一個憑證要求。
下列範例顯示系統管理員用來產生 base64 編碼 PKCS#10 憑證要求的命令。
Contoso 系統管理員必須針對 CN=mail1.contoso.com 執行此命令。
$Data1 = New-ExchangeCertificate -GenerateRequest -FriendlyName "Internet certificate for mail1" -SubjectName "DC=com,DC=Contoso,CN=mail1.contoso.com" -DomainName mail.contoso.com
Set-Content -Path "C:\Certificates\mail1-request.req" -Value $Data1
Contoso 系統管理員必須針對 CN=mail2.mail.contoso.com 執行此命令。
$Data2 = New-ExchangeCertificate -GenerateRequest -FriendlyName "Internet certificate for mail2" -SubjectName "DC=com,DC=Contoso,CN=mail2.mail.contoso.com" -DomainName mail.contoso.com
Set-Content -Path "C:\Certificates\mail2-request.req" -Value $Data2
如需詳細語法及參數的資訊,請參閱 New-ExchangeCertificate。
重要事項: |
---|
您所建立的憑證或憑證要求的特定詳細資料,取決於許多變數。如果您是產生要求,請確定與要發給您憑證的 CA 或 PKI 系統管理員密切合作。如需如何建立 TLS 的憑證要求的詳細資訊,請參閱產生協力廠商憑證服務的要求。 |
回到頁首
步驟 2:將憑證匯入 Edge Transport Server
在 Contoso 系統管理員產生憑證要求之後,Contoso 的 CA 系統管理員接著會使用要求來產生伺服器的憑證。產生的憑證必須以單一憑證或憑證鏈結的方式發行,並複製到適當的 Edge Transport Server。
重要事項: |
---|
請勿使用 Microsoft Management Console (MMC) 中的 [憑證管理員] 嵌入式管理單元,在 Exchange 伺服器上匯入 TLS 的憑證。在 Exchange 伺服器上使用 [憑證管理員] 嵌入式管理單元匯入憑證,不會將此程序中建立的要求繫結到發出的憑證。因此,TLS 可能會失敗。您可以使用 [憑證管理員] 嵌入式管理單元,將儲存為 .pfx 檔案的憑證及金鑰匯入本機電腦儲存區。 |
將憑證匯入 Edge Transport Server 時,您同時必須啟用 SMTP 服務的憑證。Contoso 系統管理員在每個 Edge Transport Server 上執行下列命令,對每個憑證各執行一次。
Import-ExchangeCertificate -FileData ([Byte[]]$(Get-Content -Path C:\Certificates\mail1-certificate.pfx -Encoding Byte -ReadCount 0)) | Enable-ExchangeCertificate -Services SMTP
上述範例中以管線將憑證傳輸到 Enable-ExchangeCertificate 指令程式,來匯入和啟用 TLS 憑證。您也可以在匯入憑證之後再啟用憑證。如果您這麼做,則需要指定要啟用的憑證指紋。
如需詳細的語法及參數資訊,請參閱 Import-ExchangeCertificate 及 Enable-ExchangeCertificate 主題。
傳輸憑證及相關金鑰
當您從 PKI 或 CA 提供者收到憑證時,請將所發出的憑證轉換為 .pfx (PKCS#12) 檔案,以便您可以將它備份為嚴重損壞應變的一部分。.pfx 檔案包含憑證及相關金鑰。在某些情況下,您可能想要傳輸憑證及金鑰,以便將它們移至其他電腦。例如,如果您有多部 Edge Transport Server,預期它們傳送與接收安全網域的電子郵件,您就可以建立所有伺服器可以運作的單一憑證。在此情況下,必須對每一部 Edge Transport Server 上的 TLS 匯入憑證,並啟用憑證。
只要您保有一份安全封存的 .pfx 檔案複本,就永遠可以匯入並啟用憑證。.pfx 檔案包含私密金鑰,所以必須實際保護該檔案,您可以將檔案保存在儲存媒體並將儲存媒體放在安全位置。
您必須了解 Import-ExchangeCertificate 指令程式永遠都會將從 .pfx 檔案匯入的私密金鑰標示為不可匯出。這是經過設計的功能。
使用 MMC 中的 [憑證管理員] 嵌入式管理單元匯入 .pfx 檔案時,您可以指定私密金鑰匯出功能及強式金鑰保護。
重要事項: |
---|
不要在針對 TLS 使用的憑證上啟用強式金鑰保護。每次存取私密金鑰,強式金鑰保護就會提示使用者。在網域安全性中,使用者是 Edge Transport Server 上的 SMTP 服務。 |
回到頁首
步驟 3:設定輸出網域安全性
您必須執行三個步驟以設定輸出網域安全性:
執行 Set-TransportConfig 指令程式,以指定您要傳送安全網域電子郵件的網域。
執行 Set-SendConnector 指令程式以設定傳送連接器的 DomainSecureEnabled 內容,此連接器會將郵件傳送至您要傳送安全網域電子郵件的網域。
執行 Get-SendConnector 指令程式以驗證下列各項:
傳送連接器 (將郵件傳送至您要傳送安全網域電子郵件的網域) 使用網域名稱系統 (DNS) 來傳送郵件。
設定 FQDN 以符合為網域安全性使用之憑證的主體名稱或主體替代名稱。
因為在這三個步驟中的變更具有整體效果,您必須在內部 Exchange 伺服器上進行變更。您所進行的組態變更將透過 Microsoft Exchange EdgeSync 服務複寫到 Edge Transport Server。
步驟 3a:在傳輸組態中指定寄件者網域
指定您要傳送安全網域電子郵件的網域相當簡單。Contoso 系統管理員會在內部 Exchange 2010 伺服器上執行下列命令:
Set-TransportConfig -TLSSendDomainSecureList woodgrovebank.com
TLSSendDomainSecureList 參數需要多重值網域名稱清單。Set-TransportConfig 命令會將 TLSSendDomainSecureList 的整個值取代為在指令程式中提供的新值。因此,如果您已設定其他網域,且想要加入新的網域,則需要在清單中包含現有的網域,或使用暫時變數。以下範例顯示如何將 woodgrovebank.com 網域加入 TLSSendDomainSecureList 參數,而不覆寫任何現有值。
$TransportConfig = Get-TransportConfig
$TransportConfig.TLSSendDomainSecureList += "woodgrovebank.com"
Set-TransportConfig -TLSSendDomainSecureList $TransportConfig.TLSSendDomainSecureList
如需詳細的語法及參數資訊,請參閱 Set-TransportConfig。
步驟 3b:設定預設傳送連接器
Contoso 會使用預設的 DNS 路由傳送連接器 (名為 Internet),將安全網域電子郵件傳送給其合作夥伴。因為預設的 DNS 路由傳送連接器就是預設的網際網路傳送連接器,所以使用 DNS 來傳送郵件,而不使用智慧主機。FQDN 已設定為 mail.contoso.com
。因為 Contoso 系統管理員建立的憑證將 New-ExchangeCertificate 的 DomainName 參數設定為 mail.contoso.com
,所以傳送連接器不需其他組態就可使用憑證。
如果已設定子網域進行測試,您可能必須更新傳送連接器的 FQDN,以符合您已建立的憑證 (例如,subdomain.mail.contoso.com)。另一方面,如果已建立憑證且該憑證在 [主旨名稱] 或 [主旨替代名稱] 欄位中包含子網域,您就不用更新傳送連接器的 FQDN。
因此,Contoso 系統管理員在傳送連接器中唯一要設定的組態為 DomainSecureEnabled 參數。若要這樣進行,Contoso 系統管理員必須在內部 Exchange 2010 伺服器上對網際網路傳送連接器執行下列命令。
Set-SendConnector Internet -DomainSecureEnabled:$true
如需詳細的語法及參數資訊,請參閱 Set-SendConnector。
步驟 3c:確認傳送連接器組態
完成組態變更之後,Contoso 系統管理員需要驗證網域安全性所使用的傳送連接器是否設定正確。若要執行這項作業,Contoso 系統管理員需要執行下列命令。
Get-SendConnector Internet | Format-List Name,DNSRoutingEnabled,FQDN,DomainSecureEnabled
此命令會列出針對網域安全性設定的相關參數,讓 Contoso 系統管理員驗證組態。
如需詳細的語法及參數資訊,請參閱 Get-SendConnector。
回到頁首
步驟 4:設定輸入網域安全性
您必須執行兩個步驟來啟用輸入網域安全性:
執行 Set-TransportConfig 指令程式,以指定您要接收安全網域電子郵件的網域。
在 Edge Transport Server 上,使用 Exchange 管理命令介面或 Exchange 管理主控台 (EMC),在您要接收安全網域電子郵件的接收連接器上啟用網域安全性。因為網域安全性需要相互 TLS 驗證,所以接收連接器上也必須啟用 TLS。
步驟 4a:在傳輸組態中指定收件者網域
指定您要接收安全網域電子郵件的網域相當簡單。若要指定網域,Contoso 系統管理員必須在內部 Exchange 2010 伺服器或管理工作站上使用命令介面來執行以下命令。
Set-TransportConfig -TLSReceiveDomainSecureList woodgrovebank.com
TLSReceiveDomainSecureList 參數需要多重值網域名稱清單。Set-TransportConfig 命令會將 TLSReceiveDomainSecureList 參數的整個值取代為 Set-TransportConfig 指令程式所提供的新值。因此,如果您已設定其他網域,且想要加入新的網域,則需要在清單中包含現有的網域,或使用暫時變數。以下範例顯示如何將 woodgrovebank.com 網域加入 TLSReceiveDomainSecureList 參數,而不覆寫任何現有值。
$TransportConfig = Get-TransportConfig
$TransportConfig.TLSReceiveDomainSecureList += "woodgrovebank.com"
Set-TransportConfig -TLSReceiveDomainSecureList $TransportConfig.TLSReceiveDomainSecureList
如需詳細的語法及參數資訊,請參閱 Set-TransportConfig。
步驟 4b:設定接收連接器
您必須在每個 Edge Transport Server 上 (從您接收網域安全電子郵件的網域接收郵件) 設定接收連接器。Contoso 環境設定為在兩個 Edge Transport Server 上各有一個網際網路接收連接器 (使用 Internet 的 Identity 參數值)。因此,在郵件傳送到或接收自 Woodgrove Bank 的情況下,若要啟用 TLS,Contoso 系統管理員在兩個 Edge Transport Server 上必須確定預設的網際網路接收連接器都啟用 TLS。若要這樣做,Contoso 系統管理員要在 mail1.contoso.com 和 mail2.mail.contoso.com 上執行以下命令。
Set-ReceiveConnector Internet -DomainSecureEnabled $true -AuthMechanism TLS
如需詳細語法及參數的資訊,請參閱 Set-ReceiveConnector。
您也可以使用 EMC 透過以下步驟設定接收連接器。
在 Edge Transport Server 上,開啟 EMC,按一下 [Edge Transport],然後在結果窗格中按一下 [接收連接器] 索引標籤。
選取接收連接器 (從您接收安全網域電子郵件的網域接收郵件),在此例中為 Internet 連接器,然後在執行窗格中按一下 [內容]。
在 [驗證] 索引標籤上,選取 [傳輸層安全性 (TLS)] 和 [啟用網域安全性 (相互驗證 TLS)],然後按一下 [確定]。
請注意,驗證機制指定為 TLS 不會在所有輸入連線上強制執行 TLS。
來自 Woodgrove Bank 的連線上將強制執行 TLS,原因如下:
在 Set-TransportConfig 指令程式的 TLSReceiveDomainSecureList 參數上指定 Woodgrove Bank。
在接收連接器上,將 DomainSecureEnabled 參數設定為
$true
。
Set-TransportConfig 指令程式的 TLSReceiveDomainSecureList 參數上未列出的其他寄件者,只有在傳送系統支援 TLS 時才會使用 TLS。
回到頁首
步驟 5:測試安全網域郵件流程
設定安全網域電子郵件之後,您可以檢閱效能記錄檔和通訊協定記錄檔來測試連線。在 Outlook 中,安全網域電子郵件流程路徑上成功驗證的郵件會顯示為「網域安全」訊息。
效能計數器
網域安全性功能在 [MSExchange Secure Mail Transport] 之下有下列效能計數器集:
已接收安全網域的郵件
已傳送安全網域的郵件
安全網域輸出工作階段失敗
您可以使用這些效能計數器來建立安全網域郵件流程的新計數器記錄檔,以監視傳送和接收的郵件數目,以及監視失敗的相互 TLS 工作階段。如需如何建立和設定計數器記錄檔的詳細資訊,請參閱 [效能記錄檔及警示] MMC 嵌入式管理單元隨附的說明檔。
通訊協定記錄
您可以檢閱傳送和接收通訊協定記錄,以判斷 TLS 交涉是否成功。
若要檢視詳細的通訊協定記錄檔,您必須在連接器上將通訊協定記錄等級設為 Verbose
,您的組織會使用這些連接器,來傳送及接收安全的網域的電子郵件。若要完成此動作,Contoso 系統管理員要在兩部 Edge Transport Server 上執行下列各項動作。
Set-ReceiveConnector Internet -ProtocolLoggingLevel Verbose
若要啟用傳送連接器的通訊協定記錄,Contoso 系統管理員要在內部 Exchange 伺服器或管理工作站上執行下列各項動作。然後會使用 Microsoft Exchange EdgeSync 服務將組態變更複寫到 Edge Transport Server。
Set-SendConnector Internet -ProtocolLoggingLevel Verbose
如需詳細的語法及參數資訊,請參閱 Set-ReceiveConnector 及 Set-SendConnector 主題。
如需如何檢視通訊協定記錄的相關資訊,請參閱設定通訊協定記錄。
回到頁首
© 2010 Microsoft Corporation. 著作權所有,並保留一切權利。