[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[postfix-jp:01459] Re: [Q] .forwardで転送失敗のメールを送信者に知らせたくない



記事<200203041350.g24DokR07378@xxxxxxxxxxxxxxxxxxxxx>において
kayokok@xxxxxxxxxxxxxxxx(Kayoko)さんは次のように述べられています。

 | 元々のメール送信者は、私が適切に設定したMTA がメールを無
 | 事受信したのであれば、その先に私が勝手に転送しようとした
 | 行為の上での失敗メールを、わざわざ自身のローカルスペース
 | を圧迫するためだけに受け取る必要はないと考えているのです。
 | が、これって間違っているのでしょうか?

全く正しいことです。消費するのはディスクスペースだけではあり
ません。エラーメイルを受け取るのは意外に大きな苦痛です。

 | この自分が受け取ったメールのコピーを別のメールアドレスに
 | 送るのは、私の責任で行うわけなので、それが何らかのトラブ
 | ルにより、送信できなかった場合、その旨の失敗メールを私が
 | 受け取るのは全然構わないのです。
 | 
 | ですが、その失敗メールを元々の送信者に返すことは避けたい
 | のです。

正しく実装された MTA であれば、エラーメイルは、エンベロープ
送信者に返そうとします。

.forward にメイルアドレスを記述する転送方法では、このエンベ
ロープ送信者を書き換えません。したがって、転送元→転送先 で
のエラーであっても、元の送信者に返そうとします。

ですから、エンベロープ送信者を転送元のアドレスに書き換えるこ
とにより、これを抑制するのが正しい方法です。もっとも、転送元
のアドレスに戻ってきたエラーメイルは、さらに転送を繰り返さな
いように工夫しないと、エラーメイルをピンポンさせることになり
ますので注意が必要です。

 | 最初に考えたのはcronで、~/Maildir/newに着信した新着メール
 | を監視し、そのメール本文だけを抜き出して、From をメールサー
 | バーの自分自身のメールアカウントに、To を自分の携帯(H")に
 | して、新たに送りつけることだったのですが、.forward を使え
 | ば、とりあえず転送できるので、postfix 単体だけで何とかな
 | らないのかな?と思ったのが、質問を思いたった動機です。

携帯電話やその類に転送する場合は、自分で簡潔なフィルター (転
送エージェント) を作成するのが良い方法です。本文だけを抜き出
す、へッダーの必要な部分を本文に入れ込むなど、好きなフォーマッ
トで転送できます。もちろん、そのフィルターはエンベロープ送信
者を転送元のアドレスにして発信するように設定すべきです。

# そのようなフィルターをさらに発展させ、複数の人に転送するよ
# うにして機能を加えたものが「メイリングリストドライバ」です

 | >>
 | エンベロープ送信者を書き換えて転送する、
 | つまりエラーメイルを送信元で受け取って、元の送信者に返さない」
 | というのが正しい対処法では?
 | >>
 | ということは、postfix の設定だけできないことなのでしょうか?

Postfix のような MTA では、忠実に中継を行うことを基本にして
いて、エンベロープ送信者を書き換えるなどの「加工」は原則的に
行わないような設計になっています (一部のへッダーの書き換えは
行いますが)。やはりそういうのは MUA 側の役割です。

転送の条件など振り分けもあるでしょうから、procmail を使うこ
とを検討してみてはいかがでしょうか。

-- 
妻井康幸 (TSUMAI Yasuyuki)
ral@xxxxxxxxx

Follow-Ups
[postfix-jp:01464] Re: [!] .forwardで転送失敗のメールを送信者に知らせたくない, Kayoko
References
[postfix-jp:01458] Re: [Q] .forwardで転送失敗のメールを送信者に知らせたくない, Kayoko

[検索ページ] [Postfix-JP ML Home]