![Postfix TLS 证书警告](https://linux22.com/image/763856/Postfix%20TLS%20%E8%AF%81%E4%B9%A6%E8%AD%A6%E5%91%8A.png)
当 Postfix 收到电子邮件时,我注意到 mail.log 中出现以下错误。
来自 domain.example.com 的 SSL_accept 错误 [xxxx] -1 警告:TLS 库问题:错误:14094416:SSL 例程:ssl3_read_bytes:sslv3 警报证书未知:../ssl/record/rec_layer_s3.c:1528:SSL 警报编号 46:
我试图理解这是什么意思。看起来证书有问题。我相信我在配置中关闭了 sslv3,因为它被引用为 !SSLv3。发送实体可能试图使用 SSLv3 吗?如果是这样,这是否意味着消息不是通过 TLS 发送的?无论出现上述错误与否,我最终都会收到消息。
谢谢
编辑:openssl 命令的输出。抱歉截图。我无法正确格式化块引用。看起来它可能不喜欢我的自签名证书?
答案1
我试图理解这是什么意思。看起来证书有问题。
没错。这意味着其他尝试连接您来传输邮件的系统不信任您的证书,因为它不是由受信任的 CA 颁发的。一些发件人不会强制执行此操作 - 即可能接受自签名证书 - 但有些会,而且您显然正在获得一个会执行此操作的发件人。您已经自己诊断出这一点。
发送实体是否正在尝试使用 SSLv3?
不。函数名称 ssl3_read_bytes
这是因为从 SSL3 开始的所有协议(包括 TLS1.0-1.3)都使用相同的记录格式,因此首次为 SSL3 编写的低级函数被重用。(另一方面,SSL2 使用了不同的记录格式,现在已完全过时并被遗忘。)错误文本 sslv3 alert certificate unknown
因为此警报首先定义在 SSL3 中,与(几乎所有)其他警报一样,它们在更高级别的协议中保持不变,而其他一些较新的警报添加. 以上都不意味着 SSL3协议正在使用。
答案2
看起来问题出在自签名证书上。我使用 Let's Encrypt 创建了一个免费的证书。一旦我将服务器配置为使用该证书,该错误就消失了。