移転前のサーバでは、qmailを使っていて、.qmailに設定しておくと、basename-ext@example.com などとすると、extがなんであっても、basename@example.comにメールが届き、さらに、このメールをパイプでプログラムに渡す設定をすると、プログラム内でextの部分を取りだして処理ができる便利なものだったのだが、そのままPostfixな新サーバに持ってきてしまったため動かなかった。
まず、/etc/postfix/main.cf で
#recipient_delimiter = +
のコメントを外して有効にし、postfixサービスのリロードが必要だった。
なお、今までqmailではこのデリミタが"-"であったので、"-"を使いたかったのだが、qmailと違いPostfixではbasename部分にデリミタそのものを含むと動作しないということで、やむなく"+"にした。
次に、プログラムに渡す設定をVirtualmin上でどう書くかに手間取った。結局、エイリアス設定でFee to programにプログラムのパスを指定しておけばいいことがわかった。
さらに、プログラムに渡した後で、Permission deniedの症状が。Postfixはnobodyで動いているので、/home/user のパーミッションが750ではダメだった。汚いやり方だが755にしてしのいだ。VirtualminはsuExecをサポートしているのに、Postfixのエイリアスのプログラム渡しの設定もできるのに。Virtualminのコミュニティに行けば既出かもしれないが。