通配符憑證僅在 Google Chrome 上引起警告

通配符憑證僅在 Google Chrome 上引起警告

我有一個公司.sv網域並最近購買了RapidSSL 通配符證書,我安裝了它並使用許多瀏覽器(Firefox、Chromium、Chrome、IE)和SSL 檢查工具對其進行了測試,除了Google Chrome 之外,它在Windows、Linux 和Android上都運作良好。

每次我透過 Google Chrome 造訪該網站時,都會顯示一條警告,說我試圖訪問www.company.sv或者隨便.company.sv但伺服器將自身標識為 **.company.sv*。如果我不顧警告繼續並點擊紅色鎖,它會告訴我,我連接到的伺服器僅在我的網路內部有效,無法透過外部認證實體進行驗證。

我聯絡了證書經銷商的支援服務,但他們無法直接回答我的問題所在。我一直想知道這是否與 TLD 有關.sv。我還檢查了 Chromium 原始碼,但這似乎毫無意義,因為證書在 Chromium 上完美運行。

也許值得一提的是,我在 Ubuntu 12.04 伺服器上使用 NGINX,並且在購買通配符憑證之前我測試了 Comodo 的免費單域憑證。

答案1

聽起來您好像忘記在 Web 伺服器上安裝中間憑證包。造訪證書供應商的網站以下載中間包。

對於 nginx,這必須與您的憑證連接並放置在ssl_certificate指令中,例如:

# cat company.sv.crt ca_bundle.crt > company.sv.chained.crt

在你的 nginx 設定中:

ssl_certificate /etc/path/to/company.sv.chained.crt

答案2

我懷疑您的主題 CN= 欄位中有網站名稱,它需要位於主題備用名稱欄位中,Chrome 才能接受它。如果您在瀏覽器中顯示證書,或使用openssl x509 -in certificate-file -text

看:

這篇博文

這些基準要求要求憑證授權單位在其頒發的 SSL 憑證中始終包含至少一個主題備用名稱,這意味著現在應用程式不需要同時查看通用名稱和主題備用名稱,他們只需要檢查後者。

目前,大多數憑證授權單位也會在通用名稱欄位中包含主題備用名稱中的第一個 DNS 名稱,但這主要是出於遺留原因,並且在不久的將來的某個時候將會停止。

這次討論

憑證有兩種方式來表達它們所綁定的域/IP - 一種是非結構化且不明確的 (commonName),另一種是明確定義的 (subjectAltName)。在沒有任何 subjectAltNames 的情況下,Chrome 目前會回退到將網域與 commonName(如果存在)進行比較。

該提案旨在刪除該後備路徑;實際上,需要一個 subjectAltName。理想情況下,我們會對所有憑證(公共信任和私人信任)執行此操作,但如果擔心相容性風險,我們可以將其限制為公共信任的憑證。

相關內容