[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[postfix-jp: 171] Re: Postfix + AMaViSについて



amavis-0.3.13preのREADME.postfixを訳してみました。
この訳に従った結果については無保証です :)


How To Use AMaViS with postfix
******************************

 Lars Hecking <lhecking@xxxxxxxxxxxxxxxxxxxxx> 著
 Taoka Fumiyoshi <fmysh@xxxxxxxxxxxxxx> 訳

Amavis/amavisdはpostfix snapshot 20000529で導入された
コンテント フィルタリング インターフェイスのみを通して
postfixをサポートします。

詳細は、postfixソース配布物のFILTER_READMEを参照してください。
メールメッセージはpipeトランスポートを通してamavisへ渡され、
amavisはメールをlocalhost SMTP (postfixの優先順位の高いメッセージ投函法)
を通してpostfixへ返します。

他のperlモジュールに加えて、CPANのlibnetモジュールがインストールされて
いなければなりません。 configureはlibnetを別に調べて、見つからなければ
smtpを*無効*にします!

ここの設定では、amavisは非特権ユーザid (既定値: amavis)の下で実行します。
先に進む前に、そのユーザーidが存在することを確認してください。
別のユーザidを選ぶならば、amavis設定時に"--with-amavis-user=USER"オプション
を使用してください。

既定値では、postfixへの出力はSMTPポート10025へ向かいます。
これは、"--with-smtp-port=PORT"を設定することで変更できます。

  ですから、既定値を用いるならば

./configure  --enable-postfix

これでよいはずです。

  Postfix自体の設定はとても単純です:

  * /etc/postfix/main.cfへ追加:

     content_filter = vscan:
     soft_bounce = yes
     # テスト用にこれを用いるのは意味があるかもしれません

  * /etc/postfix/master.cfへ追加:

     vscan            unix  -  n  n  -  10  pipe user=amavis argv=/usr/sbin/amavis ${sender} ${recipient}
     localhost:10025  inet  n  -  n  -  -   smtpd
       -o content_filter=
       -o local_recipient_maps=
       -o smtpd_helo_restrictions=
       -o smtpd_client_restrictions=
       -o smtpd_sender_restrictions=
       -o smtpd_recipient_restrictions=permit_mynetworks,reject
       -o mynetworks=127.0.0.0/8

    やりたければ、chroot環境でlocalhost smtpdを実行することもできます。
    chroot jailが構成済であることを確認してください。

  vscanエントリへの注:

  * vscanへの明示的なプロセスリミットがありますが、localhost:10025へはありません
    (-> default_process_limitが用いられる)。これは、vscanへのプロセスリミットは
    マシンのリソースへ適合するように選ばれるべきである一方、 postfixへのメール
    メッセージ返却はできるだけ早く行われるべきであるとの考えです。vscanへの
    プロセスリミットはamavisdのSOMAXCONN以下でもあるべきべす。このことに私の
    注意を向けてくれたGeoff Gibbsに感謝します。

  * vscanトランスポート中の"user="引数は、amavis(既定値)か、
    あるいは"--with-amavis-user"で指定したユーザーidです。

  localhost:10225エントリへの注:

  * ポート番号は10025(既定値)か、"--with-smtp-port"で設定した番号か、
    /etc/amavisd.conf:$smtp_portで指定した値です。

  * main.cfでalways_bccを使用しているならば、それをコメントアウトし、
     -o awlays_bcc=user@xxxxxxx
    オプションをmaster.cfのエントリに追加します。
    ここで、user@xxxxxxxは元のmain.cf中のalways_bccアドレスです。

    このようにしなければ、always_bccアドレスがsender notificationに
    現れてしまうでしょう。

  * local_recipient_mapsを使用しているならば、
    (例えばsendmailから)ローカルから投入された
    存在しないローカルユーザー名へのメールは、
    localhost:10025 smtpインスタンスによってリジェクトされるかもしれません。
    local_recipient_mapsはsendmailには用いられないからです。
    これを修正し、メールシステムに正しいバウンスメッセージを生成させるには
     -o local_recipiont_maps= 
    オプションをmaster.cfエントリに、このまま追加します。

  * amavis/amavisdはpostfixがローカルホストIPインターフェイス(127.0.0.1)を
    listenしていると仮定しています。これによって、複数のpostfixインスタンスが
    実行されることは禁止されます。postconf [-c config_dir] inet_interfacesで
    このインターフェイスでメールを受信するかどうか確認してください。

    postfixがローカルホストIPインターフェイスをlistenしていなければ、
    生成されたamavisスクリプト(あるいはamavisd.conf)を編集して、
    $localhost_nameと$localhost_ipを、それぞれ、$inet_interfaceによって
    カバーされるホスト名/IPの組に置き換えなければなりません。

    この
     -o mynetworks=127.0.0.0/8
    オプションは、メールが"relaying denied"エラーによってリジェクト
    されないために、指定する必要があります。127.0.0.0/8が既にmynetworks中に
    あれば、この必要はありません。postconf mynetworksで確認してください。


Credits
-------
Geoff Gibbs
Ralf Hildebrandt
Carsten Hoeger
Stephan Mueller

_______________________________________________
Postfix-jp-list mailing list
Postfix-jp-list@xxxxxxxxxxxxxxxxxxxx
http://lists.sourceforge.jp/mailman/listinfo/postfix-jp-list

References
[postfix-jp: 168] Re: Postfix + AMaViSについて, TO MO
[postfix-jp: 170] Re: Postfix + AMaViSについて, Taoka Fumiyoshi

[検索ページ] [Postfix-JP ML Home]