Hatena::Groupfreebsd

FreeBSD 行き当たりばったり記

2009-07-12OCNで非固定IPの自宅サーバを運用する方法のまとめ

前回の内容を踏まえて 19:14

クライアントの設定まで含めてまとめてみました。

まず、man 5 postconf を error で検索してみましたが

良い結果がでず、次に envelope で検索したら以下がヒットしました。

recipient_canonical_classes (default: envelope_recipient, header_recipient)
       What addresses are subject to recipient_canonical_maps address mapping.
       By default, recipient_canonical_maps  address  mapping  is  applied  to
       envelope recipient addresses, and to header recipient addresses.

       Specify one or more of: envelope_recipient, header_recipient

       This feature is available in Postfix 2.2 and later

postfixの設定を最初に覚える時にunixユーザと自由な形式のアドレスを対応付けるために

aliases_mapsとcanonical_mapsを設定しましたが、当時はただおまじないの様に本を真似て

いるだけでした。実はaliasesは別名での受信メールを指定したユーザのmailboxへ配信する設定で

canonicalは送受信時の名前の書き変えの対応表な訳です。

で上記のrecipient_canonical_classesですが、送信先の書き換えの対象になるアドレス

デフォルトでenvelope recipient,hedder recipientが指定されています。

要するにOCNサーバから蹴られてしまう状況が発生している際にエラーメールをまたOCN宛に送信するのを

回避すればいいので、(recipient_)canonicalOCNメールアドレスローカルのものに書き換えてやれば良い訳です。

但し、送信するメールはenvelopeとheader共にOCNアドレスにならないと蹴られてしまうので、

上記のrecipient_canonical_classesにて受信時のアドレスだけ変換すると言うことです。

以下整理した手順

sender_canonical_classes = envelope_sender
sender_canonical_maps = regexp:/usr/local/etc/postfix/sender_rx
recipient_canonical_maps = hash:/usr/local/etc/postfix/recipient
relayhost = [smtp.vchoney.ocn.ne.jp]:587
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/usr/local/etc/postfix/isp_passwd
smtp_sasl_security_options = noanonymous
smtp_sasl_mechanism_filter = plain, login

isp_passwd
[smtp.vchoney.ocn.ne.jp]:587 プロバイダID:パスワード

sender_rx
/^.*$/ プロバイダID@honey.ocn.ne.jp

  • recipientに以下を記入

プロバイダID@honey.ocn.ne.jp エラー受信ユーザcanonical

  • 以下を実行

postmap hash:/usr/local/etc/postfix/recipient
postmap hash:/usr/local/etc/postfix/isp_passwd

 例えばMSのoutlookexpressなら返信用アドレスだか何だかそんなところ)を設定してあげる。

もうこれで大丈夫(のハズ)

YukiYuki2013/02/13 18:26That's a clever answer to a trckiy question

jqwzzmreujqwzzmreu2013/02/17 00:56QOkJa7 <a href="http://iafnlaxaqiix.com/">iafnlaxaqiix</a>