由于最近对 POODLE 的恐慌,我们已经开始将每个人的连接更改为 TLS 而不是 SSL...
虽然这个过程对于 HTTPS 来说很顺利,但似乎 Dovecot 和 Postfix 拒绝(或者说丢弃,因为连接尝试超时)邮件客户端通过 TLS 进行连接的尝试 ---
但是,当我运行时:
openssl s_client -connect {our IP}:465 -tls1_2
// 也适用于 993
它返回:
CONNECTED
[...]
New, TLSv1/SSLv3, Cipher is [...]
Server public key is 4096 bit
[...]
SSL-Session:
Protocol : TLSv1.2
[...]
在 中/etc/postfix/main.cf
,相关内容如下:
smtpd_use_tls = yes
[...]
smtpd_tls_security_level = may
smtpd_tls_auth_only = no
smtp_tls_note_starttls_offer = yes
smtpd_tls_received_header = yes
smtpd_tls_session_cache_timeout = 3600s
tls_random_source = dev:/dev/urandom
在/etc/dovecot/${grep -l -R 'tls'}
- 中,唯一未注释的相关行是:
ssl_cert = </etc/dovecot/dovecot.pem
ssl_key = </etc/dovecot/private/dovecot.pem
在查看了文件的其余部分之后,我不确定 SSL 如何与 Dovecot 配合使用 --- 但是它确实可以 - !
我确信我只是对其工作原理存在简单的误解,并且我遗漏了一小部分信息,这些信息可以完美地解释为什么openssl s_client
显示积极结果,而其他任何东西都无法通过 TLS 连接......
因此,我很欣赏你对此的见解 -
答案1
并非所有应用程序都已更新至 TLS 1.2。我的 SMTP 日志显示 TLS 1.0 和 TLS 1.2 的比例约为 50/50。这可能夸大了 TLS 1.2 的采用率,因为我的内部服务使用的是 TLS 1.2。
-ssl3
尝试使用、-tls1
和tls1_1
以及运行测试-tls1_2
。目前只会-ssl3
失败。这应该能够让大多数现代客户端连接。
我已禁用 SSLV3上周末在我的服务器上。我运行 Dovecot、Apache 和 Exim,所以我没有 Postfix 的说明。对于 Dovecot,我使用了:
ssl_protocols = !SSLv3 !SSLv2