これが見つけるのに役立つかもしれません:
dig +short smtp.mydomain.info|xargs -n 1 nslookup|grep name=
これが見つけるのに役立つかもしれません:
dig +short smtp.mydomain.info|xargs -n 1 nslookup|grep name=
残念ながら、同じエラーが発生して動作しません。
SSL_connect returned=1 errno=0 state=error: certificate verify failed (Hostname mismatch)
バージョン 2.9.0.beta4 (0acbd63320) では動作していましたが、ダウングレードできますか?
StartTLS サポート付きの新しい一時メール アカウントを作成しました。2.9.0.beta5 リリース前に修正されることを願っています。
上記のアドバイスに従い、ホスト名を証明書の名前(name on the certificate)に設定しました。
この場合、問題は単なるアップグレードではなく、ランチャーによって開始された再構築(rebuild)後にのみ発生したように思われることに注意する価値があります。ランチャースクリプトに問題があるのでしょうか?
どのように行ったか教えていただけますか?
SSLやTLSなしでポート25または587のSMTPサーバーを使用できず、気が狂いそうです。
よろしくお願いします。
その場合、私の設定ではTLSを必要としないため、お手伝いできないかもしれません。対応策としては、有効な証明書を提供するサードパーティのメールプロバイダーを使用するか、この問題を回避できる修正を待つかのどちらかだと思います。
SMTPサーバーのホスト名を見つけるために、リチャードのdigコマンドを試しましたか?それには証明書がありますか?
私の設定もTLSもSSLもありません ![]()
こちらも同様の問題です Can't Send Emails - #14 by sukria 。
ベースイメージや外部ライブラリ、gemに変更はありましたか?
はい、その通りです。同じ問題です。約2週間前に始まりました。
両方試していただけますか
DISCOURSE_SMTP_ENABLE_START_TLS: false
DISCOURSE_SMTP_OPENSSL_VERIFY_MODE: none
?
試した最初のことはこれですが、まだ同じエラーが発生しています
SSL_connect returned=1 errno=0 state=error: certificate verify failed (Hostname mismatch)
両方のオプションを試しましたが、まだ機能しません。
DISCOURSE_SMTP_ADDRESS: REDACTED
DISCOURSE_SMTP_PORT: 25
DISCOURSE_SMTP_USER_NAME: REDACTED
DISCOURSE_SMTP_PASSWORD: REDACTED
DISCOURSE_SMTP_ENABLE_START_TLS: false # (optional, default true)
DISCOURSE_SMTP_OPENSSL_VERIFY_MODE: none
DISCOURSE_SMTP_AUTHENTICATION: "login"
まだ certificate verify failed (self signed certificate) が表示されます。
私にとっては、これは長い間ブロックバグでした… \n一時的なメールアドレスを新しく作成し、SMTP TLSサポートを追加することをお勧めします。
このgemに関連している可能性はありますか?
全く同じ問題を抱えています。昨日、2.9.0.beta4 (a5779a7d0b) に再構築(rebuild)でアップグレードしたところ、発生しました。app.yml やその他の設定は一切変更していません。ただ再構築しただけです。
現在、1,300 件以上のジョブが失敗しています。
ログに SSL エラーが表示されています(以下にスクリーンショットを示します)。再構築によって DISCOURSE_SMTP_ENABLE_START_TLS フラグが無視されるようになったのではないかと考えています。
app.yml ファイルには「常に」このように記述していました(繰り返しますが、変更はありません)。
DISCOURSE_SMTP_ADDRESS: 172.17.0.1
DISCOURSE_SMTP_PORT: 25
DISCOURSE_SMTP_AUTHENTICATION: none
DISCOURSE_SMTP_ENABLE_START_TLS: false # (optional, default true)
編集:これはホスト(メールサーバー)のメールログで確認できる内容です。エラーメッセージは再構築後に新しく表示されるようになったものです。
再構築前のメールログにおける Discourse に関する最後のメッセージ:
May 23 17:16:02 localhost postfix/smtpd[5247]: connect from discourse-docker[172.17.0.2]
May 23 17:16:02 localhost postfix/smtpd[5247]: 0D803B67FB: client=discourse-docker[172.17.0.2]
May 23 17:16:02 localhost postfix/cleanup[5279]: 0D803B67FB: message-id=<topic/421230/2413438.f609f9d756c226a154de43f4@forums.jag-lovers.com>
May 23 17:16:02 localhost postfix/smtpd[5247]: disconnect from discourse-docker[172.17.0.2] ehlo=1 mail=1 rcpt=1 data=1 quit=1 commands=5
再構築後のサーバーのメールログにおける最初のエントリ:
May 23 17:22:48 localhost postfix/smtpd[10929]: connect from discourse-docker[172.17.0.2]
May 23 17:22:48 localhost postfix/smtpd[10929]: SSL_accept error from discourse-docker[172.17.0.2]: -1
May 23 17:22:48 localhost postfix/smtpd[10929]: warning: TLS library problem:error:14094412:SSL routines:ssl3_read_bytes:sslv3 alert bad certificate:../ssl/record/rec_layer_s3.c:1528:SSL alert number 42:
May 23 17:22:48 localhost postfix/smtpd[10929]: lost connection after STARTTLS from discourse-docker[172.17.0.2]
May 23 17:22:48 localhost postfix/smtpd[10929]: disconnect from discourse-docker[172.17.0.2] ehlo=1 starttls=0/1 commands=1/2
この時間以降、メールログにおける Discourse のエントリはすべてこのようになっています。
スクリーンショット:
Discourse Docker コンテナ内から curl を使用してメッセージを送信しようとしました。プレーンテキスト SMTP とポート 25 を指定すると、ホスト経由でメールを正常に送信できます。
$ cd /var/discourse/
$ sudo ./launcher enter app
x86_64 arch detected.
root@discourse-app:/var/www/discourse# curl smtp://172.17.0.1 --mail-from discourse@mydomain.com --mail-rcpt myname@gmail.com --upload-file README.md
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 7077 0 0 100 7077 0 575k --:--:-- --:--:-- --:--:-- 575k
root@discourse-app:/var/www/discourse#
そして、ホストのメールログでこのテストがどのように表示されたかを示します。
May 24 16:53:49 localhost postfix/smtpd[25494]: connect from discourse-docker[172.17.0.2]
May 24 16:53:49 localhost postfix/smtpd[25494]: EB62CB5FCD: client=discourse-docker[172.17.0.2]
May 24 16:53:49 localhost postfix/cleanup[26008]: EB62CB5FCD: message-id=<>
May 24 16:53:49 localhost opendkim[1365]: EB62CB5FCD: can't determine message sender; accepting
May 24 16:53:49 localhost postfix/smtpd[25494]: disconnect from discourse-docker[172.17.0.2] ehlo=1 mail=1 rcpt=1 data=1 quit=1 commands=5
app.yml で TLS とポート 25 を指定していないこと、そしてこれが昨日の再構築まで機能していたことを考えると、最新の Discourse が app.yml の SMTP 設定を無視している可能性が高いと思われます。
Bump、@pfaffman および/または @codinghorror。
バグか、それとも何か別の問題かと思われますか?
@gunnar メールに関する問題について説明されているため、投稿をこちらに移動しました。
「投稿はすでに取得されています」というエラーもこれによって発生しているかどうかはわかりませんが、メールに関する詳細はこの問題に関連しています。
30日経ってもこの問題が解決しないなんて、私にはばかげているように思えます…
フォーラムを再び機能させるために、メールプロバイダーを変更しなければなりませんでした。
それはイライラしますが、私の見解では、あるgemがもはや無効な証明書や暗号化されていないトランスポートを無視することをサポートしなくなったようです。メールをそのように送信できる時代は終わったのかもしれません。しかし、私自身はその問題を経験していないため、正しいかどうかを判断するのに十分なほど詳しく見ていません。