blogですかい

仕事、プライベートで学んだことなどを発信し、その内容がたとえ少数でも誰かの役に立ったらなら、それはとっても嬉しいなって

PostfixでメイルのSubjectを書き換える方法

Postfixheader_checksという機能を使います。 header_checksを使うと、ヘッダに任意のパターンを含むメイルをREJECTしたり、REDIRECTしたり、ヘッダを書き換えたりすることができます。

例えば、本番サーバと開発用サーバがあり、開発用サーバからのメイルを判別しやすくするために [test]というprefixを件名につけたいと行った場合、下記のように設定します。

/etc/postfix/header_checks を下記のような内容で作成
/^Subject: =\?UTF-8\?B\?(.*)/ REPLACE Subject: =?UTF-8?B?W3Rlc3Rd$1

上記はBASE64UTF-8で書かれたSubjectの先頭に"[test]"を付加する場合。 文字セットやTransfer-Encodingが異なる場合はそれに合わせて変更します。

/etc/postfix/main.cf に、下記のような行を追加
header_checks = regexp:/etc/postfix/header_checks
postfixを再起動
[prompt]$ sudo /etc/init.d/postfix restart