STARTTLSまたは証明書検証の無効化がもう機能しません

Support にはこの件に関する投稿が多数あり、原因が判明したことで、この問題を記述した実際のバグのみを扱った Contribute > Bug のトピックを作成するのが良いと考えました。そのトピックは以下に記されています。

要約すると:

2.9.0 beta 4 以降、以下の設定が正しく動作しなくなりました。
DISCOURSE_SMTP_OPENSSL_VERIFY_MODE および DISCOURSE_SMTP_ENABLE_START_TLS

これは Rails 7 への移行に関連しているようです。これにより net-smtp が 0.1.0 から 0.3.1 に更新され、これらの 2 つの接続パラメータのデフォルト値が変更されました。

smtp gem が net-smtp を呼び出す際、enable_starttls_autoopenssl_verify_mode を無効にするのではなく、有効になっている場合のみそれを有効にしています。

smtp gem に関連するレポート:SMTP: allow disabling starttls_auto since it's now true by default in Ruby 3 - Pull Request #1435#issuecomment-1044852765 - mikel/mail - GitHub

技術的には、このバグは Discourse のコード外で発生しているため、smtp gem の問題ですが、現在その gem は Discourse 向けにフォークされているため、Contribute > Bug トピックとして扱う価値があると思います。もし簡単に修正できない場合、これらのパラメータはドキュメントから削除し、少なくとも混乱を避けるために非推奨警告を表示することを検討してもよいでしょう。

「いいね!」 10

クロスリンクバグレポート:

「いいね!」 2

このPRは、適切な動作を元に戻すはずです(まだマージされていません):

「いいね!」 5

PRは本日マージされたので、tests-passed ブランチを使用することで、以前のようにTLSを無効にできるはずです :slight_smile:

「いいね!」 1

11件の投稿が新しいトピックに分割されました: メールが機能しない (ポート 465)

このトピックは7時間後に自動的に閉じられました。返信はもう許可されていません。