
我最近將我的主郵件伺服器遷移到了一台新伺服器,舊伺服器已經運行了近 10 年,是大約 20 個網域和 40 多個郵箱的生產伺服器。
一切都很順利,配置與舊的沒有太大區別,但 postfix 和 dovecot 是更新的。
但我遇到的一個問題是出於相容性原因至少啟用 TLSv1.1。我在日誌中看到許多與 TLS 相關的連接錯誤,並且我有一個頑固的客戶端,他在 El Capitain 中使用不支援 TLSv1.2 的 Apple Mail。
我需要啟用此功能至少一年,以便有時間進行升級。問題是無論我在 postfix main.cf 中指定什麼,它只會服務 TLSv1.2 及更高版本。
smtpd_tls_mandatory_protocols = !SSLv2, !SSLv3
smtpd_tls_protocols = !SSLv2, !SSLv3
和
smtp_tls_mandatory_protocols = !SSLv2, !SSLv3
smtp_tls_protocols = !SSLv2, !SSLv3
但如果我用testssl.sh測試我總是得到
Testing protocols via sockets
SSLv2 not offered (OK)
SSLv3 not offered (OK)
TLS 1 not offered
TLS 1.1 not offered
TLS 1.2 offered (OK)
TLS 1.3 offered (OK): final
在連接埠 25 上,提交或 smtps。我在 centos8 上啟用 TLSv1.1 時錯過了什麼嗎?
編輯:如果我為 smptd 指定這個
smtpd_tls_mandatory_protocols = !SSLv2, !SSLv3, TLSv1, TLSv1.1
smtpd_tls_protocols = !SSLv2, !SSLv3, TLSv1, TLSv1.1
測試結果為:
Testing protocols via sockets
SSLv2 not offered (OK)
SSLv3 not offered (OK)
TLS 1 not offered
TLS 1.1 not offered
TLS 1.2 not offered
TLS 1.3 offered (OK): final
那麼現在它禁用了 TLSv2 嗎?我在設定檔中做錯了什麼嗎?我知道 3.6 中的語法發生了變化,但這個也應該可以工作。
答案1
@moray 嘗試將 CentOS 加密策略設定為 LEGACY:
update-crypto-policies --set LEGACY
關於 RedHat 文章,這啟用了 TLSv1.0 / TLSv1.1。設定完成後,只需重新啟動您的 postfix,您的郵件就會被發送。