Postfix、TLS 和自签名证书

Postfix、TLS 和自签名证书

我正在尝试使用 TLS 设置 postfix。

我通过执行以下操作来刷新它,删除默认设置,以便 tls enable-server 更新 main.cf 文件并生成证书:

sudo postconf -X `postconf -nH | egrep '^smtpd(_|_enforce_|_use_)tls'`
sudo postfix tls enable-server
sudo postfix reload

我遵循的许多说明似乎都表明这就是启用 TLS 所需的全部内容。

当我运行以下命令时...

openssl s_client -connect mailhost:25 -starttls smtp

我收到错误:

Verification error: self signed certificate

这会导致我的应用程序出现错误:

stream_socket_enable_crypto(): SSL operation failed with code 1. OpenSSL Error messages:  
  error:1416F086:SSL routines:tls_process_server_certificate:certificate verify failed

如果我理解的话,enable-server 命令将为我生成一个自签名证书,其他来源告诉我这是必需的。

我对自签名和后缀有什么误解吗?为什么我收到验证错误?

答案1

自签名证书意味着它不是由 Let's Encrypt 等公共信任的证书颁发机构颁发的。这意味着该证书不会被只信任公共颁发证书的应用程序(即大多数应用程序)信任。这就是您收到此验证错误的原因。

相关内容