Thunderbird 更新後的 Exim:“無法協商支持的密碼套件”
最近,在我的 Kubuntu 14.04 上安裝了更新之後。系統並安裝了新版本的雷鳥,我無法再發送電子郵件了。它提示:
發送消息失敗。無法發送郵件,因為連接到 SMTP 伺服器
$$ .. $$在交易過程中失去。重試或聯繫您的網路管理員。
因為我是我的郵件伺服器(exim)的管理員,所以我檢查了日誌。每次我嘗試用 thunberbird 發送電子郵件時,它都會說:
連接時出現 TLS 錯誤
$$ .. $$(gnutls_handshake):無法協商支持的密碼套件。
這很奇怪。這怎麼會突然發生?我用Google搜尋了這個問題,但日誌中顯示此消息的其他人的證書安裝有問題(算法太新等)。但是我沒有用我的證書更改任何內容,此外,從我的 android 手機(具有相同的 TLS 設置)發送帶有 K-9 Mail 的郵件仍然沒有問題。
我的伺服器執行Debian 7.6和EXIM 4.80。
(以防萬一:我的證書由 CACert 簽名)。
現在我降級了雷鳥(
sudo apt-get install thunderbird=1:24.4.0+build1-0ubuntu1
)。這行得通,但當然不是永久的解決方案。出了什麼問題,我該如何解決?
Firefox 和 Thunderbird 31 刪除了對弱密碼套件的支持,因此您會收到此錯誤。
您需要根據此Mozilla wiki 文章更新伺服器的 SSL 配置。
推薦的向後兼容密碼套件字元串的引用:
- 密碼套件:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA8 SHA256:DHE-DSS-AES128-GCM -SHA256:kEDH + AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-EC RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE- RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-A12 AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA -AES256-SHA: AES128-GCM-SHA256: AES256-GCM-SHA384: AES128: AES256: AES25: SHA: HIGH:!ANULL:!ENULL:!EXPORT:!DES:!RC4:!MD5:!PSK
- 版本:SSLv3、TLSv1、TLSv1.1、TLSv1.2
- RSA 密鑰大小:2048
- DH 參數大小:1024
- 橢圓曲線:secp256r1、secp384r1、secp521r1
您應該能夠使用
tls_require_ciphers
指令指定密碼。它應該接受來自上面的 Ciphersuite 字元串。
當您在這裡閱讀http://kb.mozillazine.org/Security.tls.version.*時,設置為 2 或 3 的 Thunderbird
Security.tls.version.max
不會回退到較低的設置。即使您
tls_require_ciphers
如上所述配置 Exim 4.80,它也不會首先提供 ECDHE(至少這是我在某處讀到的內容,因此請謹慎相信這一點)。也許這也是一個證書問題,使用不同的設置更新它也可能會有所幫助。因此,要讓 Thunderbird 像以前一樣執行配置編輯器(Preferences -> Advanced -> Config Editor (Button) 並蒐索
tls
然後更改security.tls.version.max
為 1,它應該會再次工作。