您從哪裡獲得用於 postfix 的 CA 捆綁包 (crt’s)?
學習後綴,我已經在我的伺服器上設置了 SSL,一切正常。
Google/Gmail 一直在說
Untrusted TLS connection established
,直到我下載了一個 Equifax SSL CA 包並將其添加到我的 CA 包中。現在它說trusted connection
每當向Google發送電子郵件時。所以現在我正在嘗試對 Yahoo 和 Outlook365 連接做同樣的事情。
Untrusted TLS connection established
每當我向他們發送電子郵件時,這些聯繫都會說。我會以正確的方式解決這個問題嗎?通過下載 CA 包並將它們放入我的 CA 包中?我試過
ssl_CA_path
了,只是把它們放在那裡,但這沒有用,只是smtp_tls_CAfile
似乎有效。
- 美分 6.7
- 後綴 3.2.2
每個(主要)Linux 發行版都帶有來自通常受信任的所有主要機構的 CA 證書。
這是 CentOS 的預設位置:
smtpd_tls_CAfile = /etc/ssl/certs/ca-bundle.crt
這應該預設使用,所以你不應該需要這條線,除非你只想信任你自己的 CA。
CA 文件由軟體包提供
ca-certificates
。如果由於某種原因 CA 包不存在,您可以使用yum install ca-certificates
.
我從如何解決在 Debian 上的 postfix 中不受信任的伺服器證書? 如果涉及 Lets Encrypt,答案會略有不同。
首先,確保您清楚 smtp_* 和 smtpd_* 參數。因為你擔心郵件出去,你應該擔心 smtp_* 參數。 postfix/smtp 和 postfix/smtpd 有什麼區別
此設置使用 Let’s Encrypt 證書對我有用。許多論壇告訴我將全鏈引用為 smtp_tls_CAfile,但他們沒有提到您還需要 smtp_tls_CApath 參數集。在讓它與所有這四行一起工作後,我註釋掉了 smtp_tls_CAfile 並且它只與 smtp_tls_CApath 一起工作
smtp_tls_cert_file=/etc/letsencrypt/live/example.com/cert.pem smtp_tls_key_file=/etc/letsencrypt/live/example.com/privkey.pem #smtp_tls_CAfile=/etc/letsencrypt/live/example.com/fullchain.pem #optional smtp_tls_CApath = /etc/ssl/certs