我遇到一個問題,網站的安全性憑證會定期從連接埠 443 解除綁定,並替換為伺服器上的另一個憑證。因此,每當用戶嘗試造訪該網站時,他們都會收到「不受信任」的警告。
因此,當這種情況第一次發生時,我進行了調查並發現了錯誤的證書,因此我將其改回來。這種情況在一段時間內效果很好,但後來又發生了。我檢查了事件日誌,並觸發了以下兩個警告:
已刪除端點的 SSL 憑證設定:0.0.0.0:443
由管理進程為端點所建立的 SSL 憑證設定:0.0.0.0:443
這種情況每天都會發生一兩次,我得不斷重新綁定正確的證書,目前還沒有找到解決方案。
該網站在 Windows Server 2012/ IIS 8 上執行
根據一些線上支援論壇/文章,ApplicationHost.config 檔案中存在一個舊的遺留設置,這應該會導致此問題。我發現的所有對此的引用都引用了“customMetaData”部分中的屬性,該屬性具有特定的 ID (5506)。我在伺服器上的 ApplicationHost.config 檔案中找不到此特定屬性。
有人遇到類似的問題嗎?或者有人能解釋一下造成這種情況的潛在原因嗎?在網上瀏覽後,我發現很難找到與我的問題相關的東西,但也許我沒有在尋找正確的東西......
關於這個問題的任何建議將不勝感激。
答案1
我在 AWS 實例上遇到了這個問題。似乎每隔 5 分鐘,我就必須進入綁定並重新選擇 SSL 憑證。因此,我決定透過建立一個從命令列設定 SSL 憑證的批次檔來節省一些時間。我運行了一次批次文件,然後將其留在桌面上,以便每次遇到此問題時都雙擊它。
問題再也沒有發生過。
我徹底科學的結論是從命令列設定 SSL 證書工作得更好而不是從 GUI 進行設定。這是我使用的命令:
netsh http add sslcert ipport=0.0.0.0:443 appid={some-guid} certhash=MyCertThumbrint
我用了一個線上 GUID 生成器產生appid。
這是一篇文章它告訴您在哪裡可以找到您的證書指紋。