1. 程式人生 > >添加自簽發的 SSL 證書為受信任的根證書

添加自簽發的 SSL 證書為受信任的根證書

eight cert 否則 manager 自帶 center ace 1.0 幸運

原文:http://cnzhx.net/blog/self-signed-certificate-as-trusted-root-ca-in-windows/

添加自簽發的 SSL 證書為受信任的根證書

發表於 2012-08-09 作者 H Zeng
更新於 2012-09-01

通過 SSL 加密的 HTTPS 連接訪問網站時,需要安裝並配置一個受信任的 CA 根證書(Trusted CA Root Certificate)。平常訪問一些加密網站之所以不需要自己安裝證書,是因為系統或瀏覽器已經提前安裝了一些受信任機構頒發的證書。但有些時候訪問一些組織或個人自己簽發證書的網站的時候,就會收到瀏覽器發出的警告。此時可以將該證書添加到“受信任的根證書頒發機構”存儲區,然後就不會再收到安全提示了。

快捷閱讀目錄

  1. 前言
  2. 從Windows 自帶的瀏覽器 Internet Explorer 中導入
  3. 通過 Windows 證書管理器安裝
  4. Chrome 中的錯誤提示

1. 前言?

為什麽要自己簽發安全證書(Self-signed CA)呢?因為一些受信任機構頒發的證書年費通常不菲,而且有些時候公司或者組織內部小範圍使用的話沒有信任問題,這時就可以自己簽發一個安全證書。

對於這種安全證書,能否被信任就需要用戶自己練就火眼金睛去識別了。比如我簽發的證書,我的朋友就多半認為可以被信任,其他人不了解我的話就多半不信任。

在 VPS 上部署了 SSL 服務之後,因為證書(CA)是自己簽發的,通過 HTTPS 加密鏈接訪問網站的時候會提示證書不被信任之類的。可以將證書添加到 Windows 證書管理器的“受信任的根證書”目錄中,以後 HTTPS 加密訪問自己的網站就不會再收到安全提示了。

警告:只有當你確認要安裝的安全證書是可以信任的情況下才能安裝,否則可能帶來嚴重的安全問題,甚至造成財產損失。下面將介紹如何安裝非授權機構發行的安全證書為受信任的根證書。

因為安全證書管理機制不同,下面介紹中涉及到:

  1. Internet Explorer 9 —— 微軟系的都差不多,以下簡稱 IE。
  2. Chrome —— Chrome 版本變動頻繁,下面以 21.0.1180.60 版本為例,而且因為 Chrome 使用的就是 Windows 系統裏的證書,沒有獨立的證書存儲單元,所以搞定 IE 也就搞定 Chrome 了。從 Chrome 中打開證書管理器的方法是,設置(Settings)——> 高級設置(Advanced Settings)——> HTTPS / SSL ——> 管理證書(Manage Certificates …)。
  3. Firefox —— Firefox 現在版本升級也很快了,好在界面、功能和操作變化不是太大,下面舉例用的是 Firefox 15。Firefox 的安全證書管理是獨立的,請參考另一篇文章:將自簽發的 SSL 證書導入為 Firefox 中的受信任根證書。

2. 從Windows 自帶的瀏覽器 Internet Explorer 中導入?

使用 IE 通過 HTTPS 打開相應網站,會收到如下圖所示的安全警告:

技術分享圖片

Internet Explorer 9 – 證書錯誤:訪問過程中斷。提示說“此網站的安全證書有問題”。此時我們可以點擊“繼續瀏覽此網站(不推薦)”來繼續。

中文顯示的是:

此網站的安全證書有問題。
此網站出具的安全證書不是由受信任的證書頒發機構頒發的。

安全證書問題可能顯示試圖欺騙您或截獲您向服務器發送的數據。建議關閉此網頁,並且不要繼續瀏覽該網站。

  • 單擊此處關閉該網頁。
  • 繼續瀏覽此網站(不推薦)。

詳細信息
如果通過單擊鏈接到達此頁面,請檢查地址欄中的網站以確保該地址是您希望到達的頁面。轉到如 https://example.com 等網站時,請嘗試將 “www” 添加到地址中,變為 https://www.example.com。有關詳細信息,請參閱 Internet Explorer 幫助中的“證書錯誤”。

在出現上圖所示的證書錯誤警告時,如果幸運的話,可以在瀏覽器地址欄的最右邊看到紅色背景的文字“證書錯誤”(Certificate Error),如下圖所示。

技術分享圖片

IE 地址欄紅色背景的“證書錯誤”提示,單擊“查看證書”後可以直接安裝該證書

單擊這個錯誤提示靠下位置的“查看證書(View certificates)”就可以看到該證書的詳情,並可以直接安裝該證書到 Windows 系統的證書管理器中。如下圖所示。

技術分享圖片

IE 查看證書詳情,單擊“安裝證書”按鈕即可開始安裝證書

因為是自己簽發的安全證書而不是經過認證的機構簽發的,所以 Windows 無法自動信任該證書:此 CA 根目錄證書不被信任。要啟用信任,請將該證書安裝到“受信任的根證書頒發機構”存儲區。單擊“安裝證書”按鈕即可打開 Windows 證書導入向導,單擊“下一步”即可開始安裝證書,如下圖所示。

技術分享圖片

證書導入向導

然後系統會詢問該證書的存儲位置。因為是未經認證的組織或個人自己簽發的證書,如果選擇讓 Windows “根據證書類型,自動選擇證書存儲”的話,一般會給存儲到“中級證書頒發機構”中。以後加密訪問該網站的時候還是會收到安全警告。

根據我們的需要 —— 以後打開自己的網站時候不會再發出安全警告,也就是本文的目的,而且又是自己簽發的證書,信任不成問題,咱就直接給添加到“受信任的根證書頒發機構”存儲中。如下圖所示。

技術分享圖片

Windows 安裝安全證書:選擇證書存儲位置

點選“將所有的證書放入下列存儲(P)”,然後單擊“瀏覽(R)”,打開“選擇證書存儲”窗口來選擇。有些時候可能需要選擇“顯示物理存儲區(S)”,然後勾選“受信任的根證書頒發機構”下面的“本地計算機(Local Computer)”來存儲。

選擇後單擊“確定”按鈕,然後“下一步”。此時可能會收到安全警告(如下圖),提示添加的是“根(root)”證書(信任級別最高)。下圖中所示證書就是水景一頁自己簽發的了。

技術分享圖片

確認添加根證書

剩下的就是確認幾次,任務完成!然後關閉瀏覽器重新打開,就可以試試效果了。

3. 通過 Windows 證書管理器安裝?

因為 Windows 和 IE 都是微軟自家的,管理的是同一個證書管理器。所以不管是從 Windows 系統的證書管理器中導入安裝證書,還是直接根據 IE 的提示來安裝,效果都是一樣的。唯一不同的是,通過 Windows 證書管理器來安裝證書的話,需要先將安全證書(.crt 類型的那個文件)保存到本地磁盤。如果不能直接獲取該證書,請先看另一篇文章介紹的從 Firefox 證書管理器中導出安全證書一節吧。

在 Windows 7 中(via 微軟),要查看或管理證書,必須以管理員身份進行登錄,才能執行這些步驟。可以使用“證書管理器”查看有關證書的詳細信息,修改、刪除這些證書,或者申請新證書。要打開證書管理器:

通過單擊“開始”按鈕,在“搜索”框中鍵入 certmgr.msc,然後按 Enter,打開“證書管理器”。? 如果系統提示輸入管理員密碼或進行確認,則需要鍵入密碼或提供確認。

技術分享圖片

windows 7 證書管理器(certificates manager)

先展開左邊欄裏的“受信任的根證書頒發機構”,選中其下的“證書”,然後點擊菜單欄的“操作”——>“所有任務”——>“導入”,即可打開證書導入向導。然後就可以接著前面的“證書導入向導”那幅圖(快速跳轉)開始往下操作了。

另外,在查看證書詳情那一步,如果打開詳細信息標簽頁,可以看到有個復制到文件的按鈕,單擊此按鈕即可保存該證書為一個 CA 文件。

4. Chrome 中的安全證書錯誤提示?

因為 Chrome 使用的就是 Windows 系統裏的證書,沒有獨立的證書存儲單元,所以搞定 IE 也就搞定 Chrome 了。從 Chrome 中打開證書管理器的方法是,設置(Settings)——> 高級設置(Advanced Settings)——> HTTPS / SSL ——> 管理證書(Manage Certificates …)。

在 Chrome 中遇到網站證書問題時會收到類似下面的錯誤提示:

該網站的安全證書不受信任!
您嘗試訪問的是 cnzhx.net,但服務器出示的證書是由您計算機的操作系統不信任的實體所頒發。這可能表明服務器已自行生成了安全憑據,Google Chrome 瀏覽器認為其中的身份信息不可靠;也可能表明攻擊者正試圖攔截您的通信內容。
您不應再繼續,尤其是如果您以前從未在此網站看到這一警告信息,則更不應繼續操作。

  • 仍然繼續
  • 返回安全連接
  • 幫助我了解
    連接安全網站時,網站所在的服務器會向您的瀏覽器出示所謂的“證書”,用於驗證其身份。這種證書包含網站地址等身份信息,已經過您計算機信任的第三方驗證。通過核實證書中的地址是否與網站地址相符,可以證實自己正與所要訪問的網站進行安全通信,而不是正與第三方(如您網絡中的攻擊者)進行通信。這種情況下,證書未經過您計算機信任的第三方進行驗證。任何人都可以創建證書,隨意聲稱自己是任何網站,因此必須要由受信任的第三方對證書進行驗證。如果未經上述驗證,證書中的身份信息就沒有意義。因此,您無法驗證與自己通信的對象是真正的 cnzhx.net,還是某個自行生成證書,聲稱自己是 cnzhx.net 的攻擊者。您應該就此停止操作。但是,如果您為之工作的組織機構會自行生成證書,而且您要嘗試用此類證書連接本組織機構的內部網站,則您可以安全地解決此問題。您可將本組織機構的根證書作為“根證書”導入,由本組織機構頒發或驗證的證書隨即會得到信任,下次嘗試連接內部網站時就不會出現此錯誤。請聯系貴組織機構的支持人員,讓他們協助您向計算機中添加新根證書。

?

本文發表於水景一頁。永久鏈接:<https://cnzhx.net/blog/self-signed-certificate-as-trusted-root-ca-in-windows/>。轉載請保留此信息及相應鏈接。

添加自簽發的 SSL 證書為受信任的根證書