procmailでメール転送するとReturn-Pathが変わる件の対処

ALL
スポンサーリンク

procmailでメール転送すると、そのメールの Return-Path が転送元メールアドレスに変わってしまいます。
(.forwardでの転送では変わらないのですが)

Return-Path が変わらないようにする procmailレシピが下記ページで説明されていましたので、紹介します。

prevent procmail from adding Return-path – Server Fault

.procmail で下記の書き方にすると、Return-Path が変わらずに転送できます。
hoge@example.com の箇所は、転送先のメールアドレスにしてください。
なお、下記の2つの[]内にあるスペース2つは、タブとスペース を入力してください。
([XY]*\/[^XY].+ の形式で Xの箇所でタブキーを押して、Yの箇所でスペース、です)

:0
* ^Return-Path:[  ]*\/[^  ].+
{ env=$MATCH }
:0
! ${env+-f "$env"} hoge@example.com

上の設定では転送元のサーバーにはメールが残りませんが、転送元サーバにも残す場合は、2つ目の:0 を :0 c としてください。

また、{ env=$MATCH } の箇所はスペースもそのまま設定してください。スペースを省略してしまうと、Maildir形式では、メールディレクトリ下にファイル「\{env=\<hoge@example.com\>\}」が出来てしまい、転送メールの Return-Path も変わりません。

コメント