SMTPメールが10日前に動作しなくなりました(curlは動作しますが、サーバーにはSMTPSがありません)

皆さん、こんにちは。

数年間問題なくサイトを運用してきましたが、突然SMTPが機能しなくなりました。(ホストまたはコンテナの設定は一切変更していません。)

SMTP(SMTPSではありません)を使用しています。Discourseコンテナに入り、curlを使用してメールを送信できるかテストしました。

curl smtp://mail.example.com --mail-from myself@example.com --mail-rcpt receiver@example.com --upload-file email.txt

しかし、Discourseはメールを送信せず、ログには次のように表示されるだけです。

Net::ReadTimeout with #<Socket:(closed)>

ホスト上のPostfixログには次のように表示されます。

connect from unknown[172.17.0.5]
lost connection after CONNECT from unknown[172.17.0.5]
disconnect from unknown[172.17.0.5] commands=0/0

何が変更された可能性があるか、どなたかアイデアはありますか?

よろしくお願いします。

GI

追伸:申し訳ありませんが、この投稿の最初のバージョンは誤って切り取られ、メッセージの半分しか投稿されませんでした。編集しました。

皆さん、こんにちは。

問題の原因を突き止めました。ホストが、すべての受信メール(コンテナからのものを含む)に対して7秒の遅延を課していることが判明しました。Discourseはデフォルトで5秒でタイムアウトします。

containers/app.ymlで10秒に増やしました。

DISCOURSE_SMTP_OPEN_TIMEOUT: 10
DISCOURSE_SMTP_READ_TIMEOUT: 10

これで動作するようになりました… しかし、ホストのPostfix遅延を解消する方法を知っている方はいませんか?設定ファイルを探しましたが、何も見つかりませんでした…

GI

postscreen を使用している場合は、postscreen_greet_wait および postscreen_greet_action を参照してください。

そうでない場合は、接続中の IP の逆引き DNS のタイムアウトが原因である可能性があります。

「いいね!」 2

ハハ!本当にありがとうございます!まさにその問題でした。

Dockerが通常割り当てるすべてのIPアドレス(172.17.0.2から10まで)に静的IPアドレス(ダミーホスト名付き)を追加しました。これにより、コンテナが異なるIPで起動した場合でも、nslookupで停止することはないはずです。

DockerですべてのコンテナのIPアドレスを解決する方法があるかどうか、気になります。

再度感謝します。

「いいね!」 1

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.