Chrome:不受信任的證書----openssl簽發帶Subject Alternative Name的證書

Chrome下自簽名證書提示無效的問題

發現chrome驗證證書很嚴格,必須帶有Subject Alternative Name.
簽發csr時,修改openssl.cnf :html

vi /etc/ssl/openssl.cnfnode

 

(windows  所在目錄 :\OpenSSL\bin\cnf\openssl.cnf )
[ req ]節添加
req_extetions = v3_req

生成 CSR 文件時讀取名叫 v3_req 的節的配置,
[ v3_req ] # Extensions to add to a certificate request 
basicConstraints = CA:FALSE 
keyUsage = nonRepudiation, digitalSignature, keyEncipherment 
subjectAltName = @alt_names

alt_names添加域名
DNS.1 = localhost
DNS.2 = your.doman.com
nginx


生成csr
git

ubuntu: openssl req -sha256 -newkey rsa:2048 -nodes -keyout  ssl.key -x509 -days 3650 -out  ssl.crt -config ./cnf/openssl.cnf -extensions v3_req
windows: openssl req -sha256 -newkey rsa:2048 -nodes -keyout  ssl.key -x509 -days 3650 -out  ssl.crt -config ./cnf/openssl.cnf -extensions v3_req
chrome

填寫完信息後,便可生成  對應的 key 和  srt 文件;ubuntu

將文件 放到nginx 對應的ssl  key  的配置目錄swift

接下來,關鍵的一步:把證書導入到當前系統windows

經過單擊「開始」按鈕,在「搜索」框中鍵入 certmgr.msc,而後按 Enter,打開「證書管理器」。‌ 若是系統提示輸入管理員密碼或進行確認,則須要鍵入密碼或提供確認。瀏覽器

windows 7 證書管理器(certificates manager)

windows 7 證書管理器(certificates manager)安全

先展開左邊欄裏的「受信任的根證書頒發機構」,選中其下的「證書」,而後點擊菜單欄的「操做」——>「全部任務」——>「導入」,便可打開證書導入嚮導。而後就能夠接着前面的「證書導入嚮導」那幅圖(快速跳轉)開始往下操做了。

另外,在查看證書詳情那一步,若是打開詳細信息標籤頁,能夠看到有個複製到文件的按鈕,單擊此按鈕便可保存該證書爲一個 CA 文件。

 

而後重啓瀏覽器便可。

 

參考:https://blog.zencoffee.org/2013/04/creating-and-signing-an-ssl-cert-with-alternative-names/

http://blog.chinaunix.net/uid-192452-id-5772724.html

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

 

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

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

經過 SSL 加密的 HTTPS 鏈接訪問網站時,須要安裝並配置一個受信任的 CA 根證書Trusted CA Root Certificate)。日常訪問一些加密網站之因此不須要本身安裝證書,是由於系統或瀏覽器已經提早安裝了一些受信任機構頒發的證書。但有些時候訪問一些組織或我的本身簽發證書的網站的時候,就會收到瀏覽器發出的警告。此時能夠將該證書添加到「受信任的根證書頒發機構」存儲區,而後就不會再收到安全提示了。

 

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 - 證書錯誤:訪問過程當中斷。提示說「此網站的安全證書有問題」。此時咱們能夠點擊「繼續瀏覽此網站(不推薦)」來繼續。

Internet Explorer 9 – 證書錯誤:訪問過程當中斷。提示說「此網站的安全證書有問題」。此時咱們能夠點擊「繼續瀏覽此網站(不推薦)」來繼續。

中文顯示的是:

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

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

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

詳細信息
若是經過單擊連接到達此頁面,請檢查地址欄中的網站以確保該地址是您但願到達的頁面。轉到如 https://example.com 等網站時,請嘗試將 「www」 添加到地址中,變爲https://www.example.com。有關詳細信息,請參閱 Internet Explorer 幫助中的「證書錯誤」。

在出現上圖所示的證書錯誤警告時,若是幸運的話,能夠在瀏覽器地址欄的最右邊看到紅色背景的文字「證書錯誤」(Certificate Error),以下圖所示。

IE 地址欄紅色背景的「證書錯誤」提示,單擊「查看證書」後能夠直接安裝該證書

IE 地址欄紅色背景的「證書錯誤」提示,單擊「查看證書」後能夠直接安裝該證書

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

IE 查看證書詳情,單擊「安裝證書」按鈕便可開始安裝證書

IE 查看證書詳情,單擊「安裝證書」按鈕便可開始安裝證書

由於是本身簽發的安全證書而不是通過認證的機構簽發的,因此 Windows 沒法自動信任該證書:此 CA 根目錄證書不被信任。要啓用信任,請將該證書安裝到「受信任的根證書頒發機構」存儲區。單擊「安裝證書」按鈕便可打開 Windows 證書導入嚮導,單擊「下一步」便可開始安裝證書,以下圖所示。

證書導入嚮導

證書導入嚮導

而後系統會詢問該證書的存儲位置。由於是未經認證的組織或我的本身簽發的證書,若是選擇讓 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)

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 的攻擊者。您應該就此中止操做。可是,若是您爲之工做的組織機構會自行生成證書,並且您要嘗試用此類證書鏈接本組織機構的內部網站,則您能夠安全地解決此問題。您可將本組織機構的根證書做爲「根證書」導入,由本組織機構頒發或驗證的證書隨即會獲得信任,下次嘗試鏈接內部網站時就不會出現此錯誤。請聯繫貴組織機構的支持人員,讓他們協助您向計算機中添加新根證書。

©

相關文章
相關標籤/搜索