基本的に、OpenPNEのインストールはオフィシャルのドキュメント通りに行けばさくさくと進む。
(当然、ある程度のスキルは必要だけど…)
が、メール周りだけ突き放したような(笑)説明なので。
http://tejimaya.org/openpne/docs/2_0/OpenPNE_Setup.html#section3-2
結論から言うと、VirtualDomainな設定でローカルのアカウントにメールを転送して、aliasesでmail.phpをキックすればOKです。
ヒントは、これ。
http://www.kobitosan.net/postfix/ML/arc-2.2/msg00943.html
ただし、OpenPNEが受信するメールはスタティックなアドレスではなく、一定のルールを持ったダイナミックなアドレスが割り当てられます。
そのへんは正規表現を使ってやればおk。
http://www.kobitosan.net/postfix/trans-2.2/jhtml/pcre_table.5.html
具体的には・・・
/etc/postfix/main.cfに、以下のように書いてやります。
virtual_maps = pcre:/etc/postfix/virtual
hash:でないのがポイント。
次に、/etc/postfix/virtualを書いてやります。
この時の書式は、
バーチャルドメイン コメント
メールアドレス 転送先
例)
xxxholic.moe for xxxHolic
watanuki@xxxholic.moe yuuko@xxxholic.moe
・・・以上はhash:の時の書式。
pcre:なので、キーを正規表現で書いてやります。
今回自分が書いたのは、こんな感じ。
/^get@xxxholic\.moe/ opepne
/^p[0-9]{1,3}-[0-9a-f]{12}@xxxholic\.moe/ opepne
/^t[0-9]{1,3}-[0-9a-f]{12}@xxxholic\.moe/ opepne
/^b[0-9]{1,3}-[0-9a-f]{12}@xxxholic\.moe/ opepne
こうすると、ローカルユーザopenpneにメールが転送されるので、
/etc/aliasesでmail.phpにパイプして食べさせます。
openpne: "|/usr/local/bin/php /var/openpne/bin/mail.php"
これでおk。
で、問題は自分のパターン。
smtpdが別サーバで走ってるので、何とかしてwwwサーバのmail.phpにメールを食べさせなきゃいけません(苦笑
1.sshでがんがる
2.mysqlクライアントとphpをインストールして、mail.phpだけMXサーバで実行
3.wwwサーバでsmtpdを立ち上げ、該当ドメインのメールだけwwwサーバで処理
とりあえず、一番スマートな1で実験中。
上手くいかないねぇ〜w

1