質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.46%
Postfix

Postfixは、電子メールサーバソフトウェアで、 メールを配送するシステムMTAの一種です。

AWS(Amazon Web Services)

Amazon Web Services (AWS)は、仮想空間を機軸とした、クラスター状のコンピュータ・ネットワーク・データベース・ストーレッジ・サポートツールをAWSというインフラから提供する商用サービスです。

Q&A

解決済

1回答

1309閲覧

Postfixのバウンスを検知できるか知りたい

shirai

総合スコア1290

Postfix

Postfixは、電子メールサーバソフトウェアで、 メールを配送するシステムMTAの一種です。

AWS(Amazon Web Services)

Amazon Web Services (AWS)は、仮想空間を機軸とした、クラスター状のコンピュータ・ネットワーク・データベース・ストーレッジ・サポートツールをAWSというインフラから提供する商用サービスです。

0グッド

0クリップ

投稿2021/10/15 09:23

前提・実現したいこと

同じアベイラビリティゾーンのあるサブネットにEC2があり、別のサブネットにRDSがあります。
EC2はrailsでWebシステムを組んでいるのですが、お問い合わせ機能があり、
「運営(お客様)のメールアドレス」と「お問い合わせするユーザが入力したメールアドレス」それぞれに
お問い合わせをした件のメールが送信されます。
この部分はpostfixで作っており、システムと同じEC2をSMTPサーバにして動いています。

ここで、何らかの理由でメールが届かなかったときにバウンスをpostfixが検知すると、
通常は設定したメールアドレス宛にバウンス検知のメールが飛ぶと思いますが、
これを以下のようにしたいという要望がお客様から出ております。

  1. バウンスを検知した旨はメールで通知させない
  2. RDSに新しくテーブルを作り、そこにバウンス検知した情報をリアルタイムでinsertする
  3. Webシステムの方で新しくページを作成し、検知した情報を見れるようにする(RDSから情報を拾ってくる)

質問内容

1と3はなんとかなると思うのですが、2のいいやり方が思いつきません。

真っ先に思いついたのはbatchなどを用意しておいて、バウンス検知したら引数つけてshellを叩いてbatchを起動するような形式ですが、
ググっても検知したものをshellコマンドに落とし込む手法がわかりませんでした。
無理やりどこかにメールを送信、あるいはWebhookなどを作成し、受け取ったサーバがどうこうというのもチラッとよぎりましたが、
出来る限り面倒なことはしたくないです。

上記の真っ先に思いついた方法のやり方、あるいはよりスマートな方法があればご教授いただきたいです。

制限事項

  • postfixを別のツール(Sendgridなど)に変更するのは別の要求を満たすために不可
  • 有料リソースの追加不可

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

TaichiYanagiya

2021/10/15 13:32

/etc/aliases の "|command" でシェルスクリプト等に渡す方法はダメでしょうか? バウンスメールの本文を解析する必要がありますが、それは面倒ですか?
shirai

2021/10/17 10:16

ありがとうございます! 早速調べてみます!
shirai

2021/10/17 10:38

これでいけそうな気がします! ・再送は一度もしない ・バウンスはhogehoge@hoge.comに送るようにする ・main.cfにhogehoge: "batchファイル"を追記 ・そのbatchはSQLにinsertするようなものにする あとはbatchの引数としてバウンスされたメールの内容をあらいざらい持って来れるかですね。。 > バウンスメールの本文を解析する必要がありますが、それは面倒ですか? これは要するに文字列操作的な話でしょうか。これくらいで済むなら問題ないと思います。 3で表示させる内容はまだお客様とは認識合わせはできていないですが、おそらく、 いつどこ宛てに送ったメールがバウンスしたかだけわかれば十分だと思います。
guest

回答1

0

自己解決

https://teratail.com/questions/364951

質問内容が深化したので別に建てさせていただきました。
TaichiYanagiyaさん、ありがとうございます。

投稿2021/10/18 03:38

shirai

総合スコア1290

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.46%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問