Certificate

HTTPS 證書展示文稿究竟是如何工作的?

  • October 6, 2021

我正在解決 SAS 供應商的問題。需要明確的是,這個問題不是“我該如何解決它?”,也不是“究竟是什麼導致了這個問題?” ——更確切地說,它是“這些技術是如何工作的,使得這種症狀組合成為可能?” 我已經向供應商開放了一張支持票(而且我不太耐心地等待它升級給有足夠能力的人)。這個問題的目的是擴大我自己對這些事情(通常?)如何工作的理解,以及我沒有考慮過哪些變數可能在起作用。

所述供應商提供“域定制”功能,您可以通過您控制的域訪問他們的服務。(您向他們提供一個私鑰,以及一個帶有鏈的證書,然後添加一個指向供應商控制下的域的 CNAME 條目。)

我與這個供應商有兩個“租戶”——一個用於開發目的,一個用於生產。兩者都配置了自定義域。他們使用完全相同的證書和PK;證書將生產域作為其 CN,並將 dev 和 prod 域列為 SAN。

生產租戶完美執行,所以我知道證書是正確的。但是,當我在瀏覽器中訪問開發租戶時,大約 80-90% 的時間會出現證書錯誤,當我進行調查時,我的瀏覽器會報告所提供的證書是有效的,但不是我的,而是一個屬於供應商的(因此,不會將我的域列為 CN 或 SAN)。我試過不同的瀏覽器。我試過了curl。我已經嘗試遠端訪問我可以訪問並從那裡檢查的各種伺服器。我分佈在美國各地的同事也嘗試過。該行為似乎不會因客戶端軟體、客戶端硬體、地理位置或網路配置而異。

在我的過程中,我在想“好吧,他們在負載均衡器後面有一個伺服器池,有些伺服器沒有正確的證書,所以他們在某種回退中呈現了其他東西。” 當然,很好,有道理。

但後來我嘗試了DigiCert 的網站安全工具,您可以在其中輸入一個域,它會評估您的證書的正確性(除其他外)。使用該工具,我無法重現間歇性行為;相反,它每次都失敗。

作為一名擁有數十年在各種堆棧中建構網站和服務的經驗的軟體工程師,我對 DNS、HTTPS、TLS 證書、網路伺服器配置、網路路由、負載平衡等有相當好的了解。但我對 DigiCert 驗證器如何看到與我自己不同的行為感到困惑。

我的第一個想法是 DNS 傳播延遲,但DNSChecker表示沒有這樣的問題。接下來,我認為 DigiCert 可能會在他們的末端記憶體一些東西,但這會導致他們的工具存在明顯的缺陷。在這兩種情況下,這種解釋的可能性已經降低,因為這種行為已經持續了幾天。

所以,我的問題是,對於那些在這方面比我更有專業知識的人:對於 DigiCert 工具的體驗與我嘗試過的所有其他客戶不同,有什麼可能的解釋?

(抱歉,如果這不是解決此類問題的正確 SE 站點。這似乎是比網路工程更好的選擇,而且當我仔細閱讀我的選項時,我沒有看到任何其他看起來正確的選項。)

我同意您的猜測,這可能是由於在不同系統上使用了不同的證書造成的,這可以解釋不一致的行為;根據供應商用於分發請求的任何關聯規則,這也可以解釋為什麼有人(例如 DigiCert 的測試工具)總是得到錯誤的結果。

然而,在這裡試圖猜測發生了什麼是完全沒有用的。您應該將此問題報告給供應商的支持人員並要求他們進行修復。

引用自:https://serverfault.com/questions/1079754