Postfix Greylisting Policy Server(Postgrey) の変更点
Top / Postfix Greylisting Policy Server(Postgrey)
- 追加された行はこの色です。
- 削除された行はこの色です。
- Postfix Greylisting Policy Server(Postgrey) へ行く。
- Postfix Greylisting Policy Server(Postgrey) の差分を削除
*Postfix Greylisting Policy Server(Postgrey) [#v6ff2cbd] 最近、社内の一部メールアカウントに対し、SPAMメールの受信が増大してしまい、メールサーバが過負荷状態になっていました。~ SPAM対策として、SpamAssassin等のベイジアンフィルタを導入していましたが、効果はあるものの多くがすり抜けてしまっている状態でした。 原因として、ベイジアンフィルタの学習機能を有効にするためには、 -IMAPでのメール運用をし -すり抜けたSPAMメールを、SPAM用のフォルダに分類し -定期的に、分類されたSPAMメールを学習させる 必要があるため、潤沢なHDD容量があるサーバなら良いのですが、現実的に運用が出来ない状態でした。~ このため、他の方法がないか試行錯誤していたところ、Postgreyに出会いました。 **Postgreyとは [#tb121257] Postgrey は ISG.EE の Devid Schweikert 氏によって開発された greylisting(SPAMを防御するための一種の方法)を実装するPostfix ポリシーサーバです。~ (Postgrey日本語ポータルより引用)~ 技術的な説明等は、上記ページに詳しく記載されています。 **インストール [#e51339c0] Postgreyのインストールには、以下のPerlモジュールが必要になります。 -Perl (version ≥ 5.6.0) -Net::Server -IO::Multiplex -BerkeleyDB まず、CPANを用いて、Perlモジュールをインストールします。 perl -MCPAN -e shell >cpan install Net::Server >cpan install IO::Multiplex >cpan install BerkeieyDB rpmモジュールをDLしインストール wget http://apt.sw.be/packages/postgrey/postgrey-1.27-1... rpm -ivh postgrey-1.27-1.fc3.rf.noarch.rpm **postgreyの実行 [#ca27ddfa] /usr/local/bin/postgrey --inet=10023 -d **postfixの設定 [#ufe46657] /etc/postfix/main.cfに、以下の設定を追記 smtpd_recipient_restrictions = permit_mynetworks, reject_unauth_destination, check_policy_service, inet:127.0.0.1:10023 最後に、postfixをreload service postfix reload ***追記: [#d040c3ed] 上記では、全ての初回アクセスサーバからの接続も遅延させてしまうため、FQDNを逆引きして動的IPっぽくないサーバからの接続はスルーするように変更 /etc/postfix/main.cfに、以下の設定を追記 smtpd_restriction_classes = check_greylist check_greylist = check_policy_service inet:127.0.0.1:10023 smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination, check_client_access, regexp:/etc/postfix/check_client_fqdn /etc/postfix/check_client_fqdnを新規作成 /^unknown$/ check_greylist /^[^\.]*[0-9][^0-9\.]+[0-9]/ check_greylist /^[^\.]*[0-9]{5}/ check_greylist /^([^\.]+\.)?[0-9][^\.]*\.[^\.]+\..+\.[a-z]/ check_greylist /^[^\.]*[0-9]\.[^\.]*[0-9]-[0-9]/ check_greylist /^[^\.]*[0-9]\.[^\.]*[0-9]\.[^\.]+\..+\./ check_greylist /^(dhcp|dialup|ppp|adsl)[^\.]*[0-9]/ check_greylist