Nginx

Laravel Forge/LetsEncrypt SSL 錯誤“SSL_ERROR_NO_CYPHER_OVERLAP”

  • May 2, 2019

一些使用者抱怨由於“安全連接失敗”(即 SSL)而無法訪問我們的網站。提供的實際錯誤程式碼是SSL_ERROR_NO_CYPHER_OVERLAP.

伺服器是 ubuntu 18.04 的 nginx。SSL 已通過 laravel forge LetsEncrypt 按鈕安裝。

我已經使用https://www.ssllabs.com測試了我們的 4 個網站,並且似乎都出現了相同的錯誤。

錯誤僅與某些瀏覽器/作業系統(通常是舊版本)有關,即

Chrome 49 / XP SP3  Server sent fatal alert: handshake_failure

我還注意到我的網站只支持 TLS 1.2 協議,所以我猜測這些舊版瀏覽器使用的是舊版協議。

| Protocols                                    |     |
|----------------------------------------------|-----|
| TLS 1.3                                      | No  |
| TLS 1.2                                      | Yes |
| TLS 1.1                                      | No  |
| TLS 1.0                                      | No  |
| SSL 3                                        | No  |
| SSL 2                                        | No  |
| For TLS 1.3 tests, we only support RFC 8446. |     |

有沒有人遇到過這個問題,或者對如何進一步診斷有任何建議。

一個可能的解決方法是在以下位置編輯 SSL 證書配置:

sudo nano /etc/nginx/sites-enabled/yoursite.com

我按照 mozilla 的建議將 TLS 版本和密碼證書修改為中間設置。它現在僅作為現代瀏覽器的預設 Forge 設置出現,這意味著許多都是無效的。

https://mozilla.github.io/server-side-tls/ssl-config-generator/

重新執行https://www.ssllabs.com/測試顯示瀏覽器兼容性沒有錯誤,但密碼強度水平有所降低。所以我想更多的兼容性和更少的安全性。

如果有人對更好的方法有任何意見,請提出建議。

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