如何修復ERR_SSL_VERSION_OR_CIPHER_MISMATCH報錯

錯誤型別:
安全相關錯誤
錯誤名稱:
ERR SSL版本或密码不匹配
英文名稱:
ERR_SSL_VERSION_OR_CIPHER_MISMATCH
錯誤描述:
ERR_SSL_VERSION_OR_CIPHER_MISMATCH错误通常发生在较旧的操作系统或浏览器上。
錯誤變體:
SSL_ERROR_NO_CYPHER_OVERLAP
更多資訊

如何修復ERR_SSL_VERSION_OR_CIPHER_MISMATCH報錯

當您訪問通過HTTPS執行的網站時,瀏覽器和Web伺服器之間會執行一系列步驟,以確保證書和SSL/TLS連線有效。

其中一些包括TLS握手、針對證書頒發機構檢查的證書以及證書的解密。如果由於某種原因瀏覽器不喜歡它所看到的內容,例如配置錯誤或不受支援的版本,您的瀏覽器可能會顯示以下錯誤:“ERR_SSL_VERSION_OR_CIPHER_MISMATCH”這會阻止您訪問該站點。

檢視有關如何修復此錯誤的一些建議。

ERR_SSL_VERSION_OR_CIPHER_MISMATCH的原因

ERR_SSL_VERSION_OR_CIPHER_MISMATCH錯誤通常發生在較舊的作業系統或瀏覽器上。

但情況並非總是如此。事實上,我們最近剛剛在他們的WordPress網站上遇到了一個有這個問題的使用者,他從另一個主機遷移到另外一個主機。當然,我們執行的是最新版本的Chrome,所以問題出在他們的SSL證書上。Chrome實際上是通過不讓您載入它來保護您。

ERR_SSL_VERSION_OR_CIPHER_MISMATCH

ERR_SSL_VERSION_OR_CIPHER_MISMATCH

您可能還會看到錯誤的變體,例如:

  • Error 113 (net::err_ssl_version_or_cipher_mismatch): unknown error
  • The client and server don’t support a common SSL protocol version or cipher suite

檢視下面的原因,瞭解發生這種情況的原因以及您可以採取的措施。

檢查您的SSL證書

如果您看到此錯誤,第一個也是最容易開始的地方是對站點上安裝的證書執行SSL檢查。我們建議使用Qualys SSL Labs提供的免費SSL檢查工具。它非常可靠,只需在主機名欄位中輸入您的域,然後單擊“提交”。

如果您願意,您還可以選擇隱藏公開結果的選項。在您的Web伺服器上掃描您站點的SSL/TLS配置可能需要一兩分鐘的時間。

檢查SSL證書

檢查SSL證書

檢查證書名稱不匹配

在這個特定的例子中,遷移另外一個主機的客戶有一個證書名稱不匹配,這會引發ERR_SSL_VERSION_OR_CIPHER_MISMATCH錯誤。正如您從下面的SSL Labs測試中看到的,這非常快速且易於診斷。正如SSL Labs所說,不匹配可能有多種情況,例如:

  • 該站點不使用SSL,但與其他使用SSL的站點共享一個IP地址。
  • 該站點不再存在,但域仍指向舊IP地址,現在託管了其他一些站點。
  • 該站點使用不支援SSL的內容交付網路 (CDN)。
  • 域名別名是針對不同名稱的網站,但別名未包含在證書中。

證書名稱不匹配

證書名稱不匹配

檢查證書上當前域名問題的另一種簡單方法是在站點上開啟Chrome DevTools。右鍵單擊網站上的任意位置,然後單擊“檢查”。然後單擊安全選項卡並單擊“檢視證書”。頒發的域將顯示在證書資訊中。如果這與您當前所在的站點不匹配,則這是一個問題。

 

檢查SSL證書上頒發的域

檢查SSL證書上頒發的域

但請記住,有萬用字元證書和其他變體,但對於典型站點,它應該完全匹配。然而,在我們的例子中,ERR_SSL_VERSION_OR_CIPHER_MISMATCH錯誤實際上阻止了我們在Chrome DevTools中檢查它。這就是SSL Labs之類的工具可以派上用場的地方。

檢查舊的TLS版本

另一個可能的原因是Web伺服器上執行的TLS版本較舊。理想情況下,它應該至少執行TLS 1.2(更好的是TLS 1.3)。(建議閱讀:如果您使用的是舊版TLS版本,您可能需要修復Chrome中的ERR_SSL_OBSOLETE_VERSION通知)。

SSL Labs工具也可以提供幫助。在配置下,它將向您顯示使用該證書在伺服器上執行的TLS的當前版本。如果它是舊的,請聯絡您的主機並要求他們更新其TLS版本。

TLS 1.3伺服器支援

TLS 1.3伺服器支援

檢查RC4密碼套件

根據Google的ERR_SSL_VERSION_OR_CIPHER_MISMATCH文件的另一個原因是RC4密碼套件在Chrome版本48中被刪除。這不是很常見,但它可能發生在需要RC4的大型企業部署中。為什麼?因為在更大和更復雜的配置中,一切通常都需要更長的時間來升級和更新。

安全研究人員、Google和Microsoft建議禁用RC4。因此,您應該確保使用不同的密碼套件啟用伺服器配置。您可以在SSL Labs工具中檢視當前的密碼套件(如下所示)。

密碼套件

密碼套件

嘗試清除計算機上的SSL狀態

要嘗試的另一件事是清除Chrome中的SSL狀態。就像清除瀏覽器的快取一樣,如果事情不同步,這有時會有所幫助。要在Windows上的Chrome中清除SSL狀態,請按照下列步驟操作:

  • 單擊Google Chrome – 設定圖示 (Settings) 圖示,然後單擊設定。
  • 單擊顯示高階設定。
  • 在網路下,單擊更改代理設定。出現Internet屬性對話方塊。
  • 單擊內容選項卡。
  • 單擊“清除SSL狀態”,然後單擊“確定”。
  • 重新啟動Chrome。

在Windows上的Chrome中清除SSL狀態

在Windows上的Chrome中清除SSL狀態

如果您使用的是Mac,請參閱這些有關如何刪除SSL證書的說明

使用新的作業系統

較舊的作業系統會隨著TLS 1.3和最新的密碼套件等新技術而過時,因為瀏覽器不再支援它們。最新SSL證書中的特定元件將停止工作。事實上,谷歌瀏覽器早在2015年就停止了對Windows XP的支援。我們始終建議儘可能升級到更新的作業系統,例如Windows 11或最新版本的Mac OS X。

暫時禁用防毒軟體

如果您仍然看到ERR_SSL_VERSION_OR_CIPHER_MISMATCH錯誤,我們建議您嘗試的最後一件事是確保您沒有執行防病毒程式。或者嘗試暫時禁用它。某些防病毒程式會使用自己的證書在您的瀏覽器和Web之間建立一個層。這有時會導致問題。

評論留言