Postfix SSL-Intermediate-CA

MyF*_*ult 4 postfix openssl ssl-certificate

我有一个 thawte 通配符 SSL-Cert for *.my.example.com.

现在我想将它用于我的邮件服务器(主机名:)test.my.example.com

/etc/postfix/postfix_default.pem在此文件中编辑并包含了密钥、证书和 CA。

不幸的是 SSL 检查失败并出现错误

未知权威

或者

证书未验证:无法获得本地颁发者证书

我必须在我的配置中更改什么?

Nik*_*nov 10

Postfix 有完善的文档。对于您的主题:http : //www.postfix.org/TLS_README.html

特别是,您遇到了一个问题,因为 Postfix 无法找到到受信任 CA 的完整证书信任链。您必须为该链提供您的终端服务器证书。

这意味着您必须将所有中间 CA 包含到您提供给 Postfix 的证书包中,首先是终端服务器证书,然后是从底层到顶层的所有 CA:

cat server_cert.pem intermediate_CA.pem > server.pem
Run Code Online (Sandbox Code Playgroud)

我们在自己的文件中实现了密钥,所以我的配置看起来像这样(在main.cf):

smtpd_tls_cert_file = /path/to/server.pem
smtpd_tls_key_file = /path/to/server.key
Run Code Online (Sandbox Code Playgroud)

当然,密钥文件应该保持安全,仅对 root 可用(Postfix 以 root 身份启动,读取它然后删除权限)。您可以在单个文件中包含证书链和密钥,然后在两个设置中指定相同的文件。

这只是 smtpd(SMTP服务器组件)配置。Postfix 还有一个 SMTP客户端组件,用于在传输出站邮件时连接到其他服务器。一个客户端有它自己的配置,通常你必须使用另一个证书。服务器证书应具有“SSL 服务器”用途,而客户端证书则需要“SSL 客户端”用途。有关详细信息,请参阅我链接到的手册页。