Postfixのaliasでワイルドカードを使いたい

7 月 2nd, 2009

明示的に作成したalias以外をワイルドカードでスクリプトに渡し、処理を実行したいと思った。
けど、Postfixではaliasでワイルドカード指定することができない?

メールの設定には苦手意識が強く、いつも最低限の動作が確認できたところで勉強をストップしてしまうので…いつまでたっても素人っぽい…
なので本当はあるのかもしれないが、わからなかったので正規表現で逃げることに。

以下の設定でとりあえず動いている。

# /etc/postfix/main.cf
# (snip.)
alias_maps = hash:/etc/aliases, regexp:/etc/postfix/alias.reg
# (snip.)
# /etc/postfix/alias.reg
/test.*/ | "cat >> ~hoge/www/test2.txt"
/.*/ | "cat >> ~hoge/www/test.txt"

後は /etc/init.d/postfix reload すれば反映される。

alias_mapについても、alias.regについても先に定義されているものから評価されるようなので、今回の要件では必要十分。
しかし、複数のメール受信を必要とするサービスを同一サーバに載せたくなったら…ちゃんとやらないと。

RedHat系でパッケージングされているPostfixがmysql対応していないのが辛いなぁ。
srpmからビルドすればいいだけなのだけど、ねぇ :)

Related posts