共用方式為


IIS 8:更完善的憑證管理

IIS 8 中央憑證存放區可簡化在多台伺服器上使用多個憑證的程序。

Jason Helmick

出色地簡單的解決方案,對複雜的問題時,它是令人耳目一新。 這就是只是如何在 IIS 8 的新中央憑證存放區 (CCS) 堆疊。 與早期版本的 IIS 中,您可以安裝使用 Windows PowerShell 遠端處理 Web 場中的證書。 如果您正在使用 IIS 在舊伺服器上,這是一個有用的過程。 如果你可以升級到 IIS 8 的幸運兒之一,然後可以很快看到如何使用證書的過程是輕而易舉的事。

介意商店

Ccs 技術基於一個真正簡單的概念。 將所有的憑證存放區在 Windows 檔案伺服器共用,然後使用這些本地安裝的證書,而 Web 網站綁定。 不只這不會減少混亂的多台伺服器上安裝證書,它大大減少了管理時間和精力定位即將過期的證書。

第一步是將.pfx 檔保存您的證書的檔案伺服器上創建一個共用。 您可以在任何檔案伺服器上,而不考慮作業系統來執行此操作。 似乎最好做到要防止單點故障的群集的檔案伺服器上。 你不想失去這些證書的存取權限。

如果您在工作場中的 Web 服務器,您可能已經有群集的檔案伺服器 — — 或分散式檔案系統 (DFS) — — 可供您共用的配置。 這是另一種為創建共用您的證書的好地方。 創建一個使用者帳戶具有讀取權限的共用,您已經全部設置。

Ccs 技術的工作原理是使用 Web 網站綁定的主機名稱稱完全相同的檔案名稱再加上.pfx 副檔名存儲區中找到證書。 例如,如果有兩個 Web 網站的主機名稱稱 www.WebBikez.com 和 www.MyCompany.com,證書應被命名為:

注意:您應該確保該萬用字元證書 (*。MyCompany.com) 使用底線替換萬用字元字元 (_.MyCompany.com.pfx)。

可以的隨時將 Web 網站添加到此共用添加證書。 您不再需要在您的 Web 服務器上安裝證書。 下一步是安裝和配置 IIS 8 Web 服務器,以便能夠使用這些證書上的二氧化碳捕獲和封存。

安裝 CCS

安裝過程很簡單。 您可以使用圖形化管理工具或 Windows PowerShell。 這裡是在本地 Web 服務器上安裝 CCS 的過程。 最後一節介紹如何在遠端 Web 服務器上,包括 Windows 伺服器 2012年核心執行這些任務。

在繼續之前,必須在您的 Web 服務器上安裝集中 SSL 憑證支援功能。 您可以在 Windows PowerShell 中使用伺服器管理員的圖形化工具或安裝 WindowsFeature Cmdlet:

PS> Install-WindowsFeature Web-CertProvider

當您成功安裝了新的功能時,一個新的圖示將出現下IIS 管理員的管理部分 (見圖 1)。

The CCS icon in the IIS Manager Management section.

圖 1 IIS 管理員管理一節中的 CCS 圖示。

按一下圖示以打開一個表單來配置 CCS (見圖 2)。 啟用 CCS,然後供應共用具有讀取權限的共用的 UNC 和使用者帳戶。

You can graphically configure the central certificate store.

圖 2 你可以以圖形化方式配置中央的憑證存放區區。

注意在表單的底部是否您匯出的.pfx 檔之一,您可以指定私密金鑰密碼。 通常情況下,您要匯出的證書與密碼,所以它在前面的示例中輸入。

使用這些圖形化的工具很簡單不夠如果您需要啟用和配置 CCS 單個本機伺服器上。 如果您要自動執行過程,您還可以使用 Windows PowerShell。 當您以這種方式安裝 ccs 技術時,將六個新 Cmdlet 添加:

  • 清除-WebCentralCertProvider
  • 禁用-WebCentralCertProvider
  • 啟用 WebCentralCertProvider
  • Get WebCentralCertProvider
  • 集 WebCentralCertProvider
  • 集 WebCentralCertProviderCredential

這些 Cmdlet 都一目了然,並且有説明檔。 下面是使用啟用 WebCentralCertProvider Cmdlet 來啟用和配置 CCS 在本地 Web 服務器上的一個示例:

PS> Enable-WebCentralCertProvider -CertStoreLocation \\serverdc\certstore -UserName company\certuser -Password P@ssw0rd -PrivateKeyPassword P@ssw0rd

創建 Web 網站綁定

在過程中的最後一步是創建、 修改或添加新的綁定到您的 Web 網站使用 CCS (見圖 3)。 注意到現在有一個新的選項,可以選擇"使用集中式憑證存放區"。

Binding your Web site to the central certificate store is the final step.

圖 3 綁定到中央憑證存放區您的 Web 網站是最後一步。

這裡是如何使用 Windows PowerShell 創建新的 Web 網站具有正確的 SSL 綁定的示例。 訣竅是新網站 Cmdlet 的 –SslFlags 參數。 SSLFlags 確定您將使用綁定的證書位於何處。 Ccs 技術,要選擇兩個或三個,具體取決於您是否使用伺服器名稱指示 (SNI)。 這裡是的選項:

  • 0 — — 經常在 Windows 憑證存放區中的證書
  • 1 — — SNI 證書
  • 2 — — 二氧化碳捕獲和封存
  • 3 — — SNI CCS 證書

下面介紹了如何創建一個新的應用程式池和 CCS 在使用 SNI 證書的 Web 網站:

PS C:\> New-WebAppPool -Name WebBikez_pool PS C:\> New-Website -Name WebBikez -HostHeader www.WebBikez.com -PhysicalPath c:\inetpub\wwwroot -ApplicationPool webbikez_Pool -Ssl -port 443 -SslFlags 3 -force

如果您只需要添加一個綁定到現有的 Web 網站,請執行此操作:

PS C:\> New-WebBinding -Name "WebBikez" -Protocol https -Port 443 -HostHeader www.WebBikez.com –SslFlags 3

遠端 Web 服務器上安裝 CCS

您可以運行所有使用 Windows PowerShell 遠端處理這些命令。 它很容易連接和 CCS 功能安裝到遠端伺服器,包括 Windows 伺服器 2012年核心。

創建使用新 PSSession Cmdlet 的遠端會話:

PS C:\> $Sessions=New-PSSession -ComputerName server2,server3

在遠端電腦上安裝 CCS 功能:

PS C:\> Invoke-Command -Session $sessions {Install-WindowsFeature Web-CertProvider}

這裡才是它真正棘手。 啟用 WebCentralCertProvider Cmdlet 具有一個參數 — — CertStoreLocation — — 接受網路共用為證書的位置。 問題是 Cmdlet 將嘗試驗證共用位置之前的資訊寫入註冊表。

在 Windows PowerShell 遠端處理,這將導致一個多跳的問題。 您連接到的遠端電腦,正試圖連接到遠端電腦。 在某一時刻,IIS 團隊將最有可能修復該 Cmdlet。 直到他們這樣做,這是解決問題的方式。 您可以只是條目到註冊表手動添加。

若要啟用 ccs 技術:

Invoke-Command -Session $sessions {Set-ItemProperty -Path HKLM:\SOFTWARE\Microsoft\IIS\CentralCertProvider\ -Name Enabled -Value 1}

若要設置共用位置的證書:

Invoke-Command -Session $sessions {Set-ItemProperty -Path HKLM:\SOFTWARE\Microsoft\IIS\CentralCertProvider\ -Name CertStoreLocation -Value \\ServerDC\CertStore}

您不能直接到註冊表中,設置的使用者名和密碼,但集 WebCentralCertProvider Cmdlet 會照顧的其餘部分:

Invoke-Command -Session $sessions {Set-WebCentralCertProvider -Password P@ssw0rd -UserName Company\certuser -PrivateKeyPassword P@ssw0rd}

在這一點上,您可以添加 Web 綁定到您的 Web 網站為 HTTPS 使用 Windows PowerShell 遠端處理,和你完成。 如果您還沒有機會嘗試 IIS 8,或許學習 ccs 技術的工作原理將給你良好的商業理由來看看。 它是您應該考慮向前推進的 IIS 8 中的新功能之一。

Jason Helmick

Jason Helmick 介面技術培訓,設在Phoenix,亞利桑那州是 Windows PowerShell 技術主任 他是揚聲器、 作者、 老師和無意中 IIS 管理員。

相關的內容