IIS 8.0 集中式 SSL 憑證支援:SSL 延展性和管理性
作者 :Shaun Eagan
相容性
版本 | 備註 |
---|---|
IIS 8.0 | IIS 8.0 中引進集中式 SSL 憑證支援。 |
IIS 7.5 | IIS 7.5 不支援集中式 SSL 憑證支援。 |
IIS 7.0 | IIS 7.0 不支援集中式 SSL 憑證支援。 |
問題
隨著更多電子商務網站上線,而更多企業正在線上儲存和共用機密檔,裝載和調整安全網站的能力越來越重要。 此外,透過雲端裝載和彈性延展性,必須動態新增和移除伺服器容量。 在 Windows Server 2012 之前,在裝載安全網站方面有幾項挑戰:
- SSL 延展性:在多租使用者環境中,例如共用主機,在 Windows Server 上可裝載的安全網站數目有一項限制,導致網站密度偏低。
- SSL 管理性:憑證會儲存在每個 Windows Server 的本機。 因此,它們必須在每個 Windows Server 上個別管理。 更新憑證等簡單工作必須在每部伺服器上重複。 此外,如果必須匯入數千個憑證,新增 Windows Server 可能需要數小時的時間。
解決方法
在 Windows Server 2012 上,集中式 SSL 憑證支援功能可讓伺服器系統管理員集中儲存及存取檔案共用上的憑證。 與 Windows Server 2008 中引進的共用設定功能類似,伺服器陣列中的 Windows Server 可以設定為視需要從檔案共用載入憑證。
透過這項功能,SSL 系結的管理體驗會大幅簡化。 在 SSL 方面,憑證的 DNS 名稱和 CN 名稱必須相符。 類似的合約可以進一步擴充至憑證的檔案名。 例如, www.contoso.com
會使用具有檔案名 www.contoso.com.pfx
的憑證。 此合約可讓 IIS 8.0 只有一個 SSL 系結,不論使用此功能的安全網站數目為何。 對應的憑證是由所要求網站的 SNI 值或主機名稱推斷,並將它比對為憑證的檔案名。
逐步指示
必要條件
IIS 8.0 安裝在具有集中式 SSL 憑證功能的 Windows Server 2012 上。 這項功能是 IIS 的選擇性元件,未安裝為預設安裝的一部分。
若要安裝這項功能,請從伺服器管理員,請務必選取[安全性] 節點下的 [集中式 SSL 憑證支援]:
具有 Null 密碼的範例憑證。 (或者,您可能有一個全域密碼的範例憑證。)
- 憑證必須具有 CN_name.pfx (的命名慣例,
www.contoso.com.pfx
也就是) 。 - 如果憑證是萬用字元憑證,請使用 「_」 作為萬用字元。 (即
_.contoso.com.pfx
) 。 - 如果憑證有多個 CN 名稱,則必須將其命名為個別檔案。 (,也就是 、
www.contoso1.com.pfx
、www.contoso2.com.pfx
等)
- 憑證必須具有 CN_name.pfx (的命名慣例,
兩個檔案共用:一個用於共用組態,另一個用於集中式 SSL 憑證。
- IIS 伺服器正在使用共用組態。
- 範例憑證已複製到檔案共用,以取得集中式 SSL 憑證。
\windows\system32\drivers\etc\hosts 已修改為用於範例網站和憑證。 例如,如果憑證的 CN 名稱是 centralCert0,則主機檔案必須包含:
127.0.0.1 centralCert0
已知 Bug 的因應措施
這項功能目前沒有已知的 Bug。
設定集中式 SSL 憑證支援功能
開啟 IIS 管理員。
在左側流覽視窗中選取伺服器節點:
在 [管理] 底下,按兩下 [集中式憑證]:
在 [ 動作] 窗格中,選取 [編輯功能設定]:
輸入以下資訊:
啟用集中式憑證:已選取
實體路徑:例如:
\\ccdemo\centralcert
- 這是憑證所在檔案共用的 UNC 路徑。
使用者名稱:指定具有檔案共用讀取權限的使用者帳戶。
密碼/確認密碼。
憑證私密金鑰密碼:
這是選擇性的。 如果憑證沒有密碼,請將此保留空白。
如果憑證有一個全域密碼,請在這裡輸入該密碼。
集中式 SSL 憑證支援功能現在已可供使用。 請注意,IIS 管理員會讀取憑證,並填入有關憑證的最相關資訊。 這項資訊會快取,以提升效能。
查看能夠查看憑證的簡單程度:
已過期
明天到期
本周到期
下周到期
下個月到期
稍後
建立安全的網站
開啟 IIS 管理員。
在左側導覽視窗中選取 [網站 ]:
選取 [新增網站]:
填入資訊,就像建立任何網站一樣:
網站名稱:centralCert0
實體路徑:
c:\inetpub\wwwroot
類型:HTTPs
主機名稱:centralcert0
- 這是 Windows Server 2012 的新功能,該主機名稱可以針對 SSL 指定。
- 此組態的實際值會根據所使用的範例憑證而有所不同。
需要伺服器名稱指示:未選取
- 如果您選擇的話,您也可以選擇選取 [需要伺服器名稱指示]。 集中式憑證存放區不需要您使用 SNI,但在使用 SNI 時會正常運作。
- 請注意,在開發人員預覽版本中,集中式憑證存放區也需要使用 SNI。 自 Beta 版起,已移除該限制。
使用集中式憑證存放區:已選取
- 請注意,不需要選取要使用的特定對應憑證。
- 透過使用命名合約,會自動選取對應的憑證。 在此範例中,IIS 會嘗試從中央 SSL 憑證檔案共用讀取 centralcert0.pfx。
確認網站已建立:
這樣就大功告成了。 安全網站是使用集中式 SSL 憑證支援所建立。 管理體驗與共享設定和傳統 SSL 系結非常類似。 差異包括:
- 憑證會集中儲存在檔案共用上。
- 您可以為 SSL 網站指定主機名稱。
- SSL 系結未明確管理 1 對 1。
測試安全網站
開啟瀏覽器並瀏覽至 https://centralcert0/
。 請注意,在必要條件中,主機檔案應該經過修改,以將此要求路由傳送至 localhost:
此外,若要查看新的 SSL 系結類型,請在提升許可權的命令列視窗中輸入下列內容:
netsh http show sslcert
請注意,SSL 系結是 主機名稱:埠 ,其值為 *:443。 此外,沒有 憑證雜湊 與此系結相關聯,因為對應的憑證會根據憑證的檔案名合約隨選載入。
案例
嘗試部署下列案例:
集中式 SSL 憑證支援的設計目的是要針對多租使用者環境進行調整。 請嘗試使用這項功能來設定數千個安全網站。
使用數千個憑證,在提升許可權的命令列視窗中執行下列命令。 請注意,不論安全網站數目為何,只有一個系結:
netsh http show sslcert
請嘗試在此伺服器陣列中新增伺服器。 使用共用設定和集中式 SSL 憑證支援功能,現在是 3 個步驟程式:
將新伺服器設定為使用共用組態。
設定新伺服器以使用集中式 SSL 憑證支援。
建立 SSL 系結。 一個提升許可權的命令列視窗,輸入:
add sslcert hostnameport=*:443 appid={00112233-4455-6677-8899-AABBCCDDEFF}
不同于舊版 Windows Server,Windows Server 2012 上的憑證會隨選載入記憶體。 使用集中式 SSL 憑證支援功能設定數千個安全網站之後,請將 GET 要求傳送至其中一個安全月臺,並觀察記憶體使用量。 這可忽略。 在舊版的 Windows Server 上,如果已設定數百個安全網站,只要傳送一個 GET 要求,就會讓 Windows Server 載入 所有 憑證,因而產生高記憶體使用量,並進一步限制延展性。
使用 SNI、傳統和集中式 SSL 憑證支援建立安全網站。 它們的設計目的是要共存。
總結
您已成功探索 Windows Server 2012 中的集中式 SSL 憑證功能。
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應