Postgrey(CentOS5)
スパム対策の一貫としてグレイリスティングを試してみる。実際にはCentOS5でPostgrey+amavisd-new(spamassassin+clamav)+Postfixの構成ですが、とりあえずPostgreyだけ。
一応仕組みとしては、相手のメールサーバ(または、BOT端末)接続してきても、rejectしてリトライしてきたらつないであげるというものです。まともなメールサーバならリトライしてくるだろうし、BOT系はリトライしないのが多いことを利用したものです。
んで、会社メールの場合、数分たりとも遅延すると、メールが届かねー、遅い!!!とかって事がよくわるわけで、ホワイトリストの設定をどうしようかってとこですが、今回は、逆引きできない(逆引きはPostfixで止めてもいいのですが本当に止めてしまうといろいろ困る)方や、foreign countryっぽい方々に遅延していただいて、あとは、spamassassinに任せましょうという設定にしてみます。
まず、前提として、Postfixでメールが運用されている状態で、
最初に、CentOSの場合dagのリポジトリをいれておきます。
[dag]
name=Dag RPM Repository for Red Hat Enterprise Linux
baseurl=http://apt.sw.be/redhat/el$releasever/en/$basearch/dag
gpgcheck=1
で、パッケージのインストール
yum install postgrey
起動スクリプトの編集
/etc/init.d/postgrey
#OPTIONS="--unix=$SOCKET"
OPTIONS="--whitelist-clients=/etc/postfix/postgrey_whitelist_clients --whitelist-recipients=/etc/postfix/postgrey_whitelist_recipients --inet=10023 -d --unix=$SOCKET"
マシン起動時にpostgreyが起動するように
chkconfig postgrey on
postfixのフィルタとして登録
/etc/postfix/main.cf
smtpd_recipient_restrictions = permit_mynetworks, reject_unauth_destination, check_policy_service inet:127.0.0.1:10023
main.cfに追加する内容は
postconf | grep smtpd_recipient_restrictions
とかってした時の表示されるやつの一番後ろあたりに追加すればいいと思います。
ホワイトリスト(例)
/etc/postfix/postgrey_whitelist_clients
docomo.ne.jp
ezweb.ne.jp
vodafone.ne.jp
softbank.ne.jp
.co.jp
.or.jp
.gr.jp
.ed.jp
.go.jp
.ad.jp
.ac.jp
とかってしとくと、日本のちゃんとしてそうなところからは遅延しないかも。でも、汎用JP,NE.JP,あとは.COM,.NETとかがダメなので、必要に応じてホワイトリストへ入れておきましょう
遅延してるレポート確認
cat /var/log/maillog | postgreyreport
最近のコメント