SMTP の設定がうまくいかず困っています。私の状況について、どなたかお手伝いいただければ幸いです。
例えば、Discourse フォーラムが discourseaddress.com にあり、メールサーバーが mailserver.com にあるとします。Discourse は Google Cloud の VM 上にあり、メールサーバーは別のホスト(cPanel を備えたシンプルな Web ホスティング)にあります。
私の設定は以下の通りです。
Hostname: discourseaddress.com
Email: user@discourseaddress.com
SMTP address: mailserver.com
SMTP port: 26
SMTP username: discourse@discourseaddress.com
SMTP password: mailpassword
この設定では、ホスト名が証明書と一致しないというエラーが発生し、メールが配信されません。
DISCOURSE_SMTP_OPENSSL_VERIFY_MODE: none を使用するとメールは配信されますが、これは安全ではないと思いますか?(ただし、この設定でも mailtester.com では 10/10 の評価を得ています)
もしこの件についてご意見やアドバイスがあれば、大変ありがたいです。
pfaffman
(Jay Pfaffman)
2019 年 10 月 21 日午後 8:31
2
問題の原因は、mailserver.com の証明書が不良であるようです。もしかすると、mailserver.com には、使用するべき別の名前があるかもしれません。
もう少し明確に説明していただけますか?私のメールサーバーの SSL 証明書は Let’s Encrypt から発行されていますが、これは 465 ポートの背後にあり(私は 26 を使用しており、465 はまったく機能しません)、Discourse は CloudFlare によって認証されています。証明書に関する全体像を把握できているか確信が持てません。
pfaffman
(Jay Pfaffman)
2019 年 10 月 21 日午後 8:50
4
これが問題の原因です:
SMTP アドレス:mailserver.com
このメールサーバーを管理している誰かが設定を誤っているか、あるいは mailserver.com に応答しているが、証明書は(例えば)mail.mailserver.com のみに対して発行されている可能性があります。このサーバーを管理している人に確認してください。これは Discourse の問題ではありません。もしあなたがメールサーバーを管理しているなら、証明書の修正方法を確認するか、あるいは DISCOURSE_SMTP_OPENSSL_VERIFY_MODE を使用するという手もあります。これは機能します。
わかりました、ありがとうございます。自分で調べてみますし、メールサーバーのプロバイダーにも連絡しますね。
再度ありがとうございます!
よろしくお願いいたします