広告・Googleアドセンス728px

Article(記事)

スパム対策(greylist)

投稿日:2007年12月31日 更新日:

ご注意ください
この記事は2年以上前に書かれたものですので、内容が古い可能性があります。

SpamAssassin
を導入したにも係わらず最近、SPAMメールの数がひどい。
どうもSPAMメールの量がspamdのSPAMメールの学習に追いつかないらしい…。

とうことで新たな対処法を考えてみました。

今回はqmail+greylistというもの。簡単にいうと、接続してきたSMTPコネクションを一度切断し、再接続してきたSMTPコネクションについては接続を許可する、というもの。
SPAMメールの大半はメール送信効率を上げるために一度切れたら再接続してこないそうです。

ただしメールの遅延が発生します。遅延時間は接続元の再接続時間によります。通常5分縲鰀1時間程度遅延します

設定方法

greylistのダウンロード
qgreylist - simple greylisting for qmailよりダウンロードします。

パッチの適用とインストール
S25Rという接続元のFQDNパターンから接続を拒否する方式と、greylistingという再送要求を出す方式を組み合わせた、Rgreyという方式のqmail版にするためのパッチをダウンロードします。

ここ

# tar zxvf qgreylist-0.3.tar.gz
# tar zxvf qgrey-0.1-0.3.tar.gz
# cp qgrey-0.1-0.3/qgrey.patch qgreylist
# cd qgreylist
# patch < qgrey.patch
# cp greylist /var/qmail/bin/
# cd ../qgrey-0.1-0.3
# cp s25r /var/qmail/
# chown qmaild:qmail /var/qmail/bin/greylist
# chmod 775 /var/qmail/bin/greylist
# chown qmaild:qmail /var/qmail/s25r
# chmod 664 /var/qmail/s25r
# mkdir /var/qmail/greylist
# mkdir /var/qmail/whitelist

こんな感じで。

/etc/init.d/qmailの編集
qmailのスタートアップスクリプトに登録します。
以下太字の部分を追加します。

case "$1" in
start)
# Start daemons.
echo "Starting qmail."
csh -cf '/var/qmail/rc &'
tcpserver -v -R -H -l0 -c100 -u 502 -g 501 -x /etc/tcpserver/tcp.smtp.cdb \
0 smtp /var/qmail/bin/greylist /var/qmail/bin/qmail-smtpd 2>&1 | /var/qmail/bin/splogger smtpd 3 &
tcpserver -v -H -R -l0 -c10 0 pop3 \
/var/qmail/bin/qmail-popup www.kamata-net.com \
/bin/checkpassword /usr/sbin/relay-ctrl-allow \
/var/qmail/bin/qmail-pop3d Maildir 2>&1 \
| /var/qmail/bin/splogger pop3d 3 &

echo
touch /var/run/qmail
;;

動作確認

/var/log/maillogに以下のようなログが出るようになればOKです。

Jan 1 22:29:04 kamatamail1_in greylist[7525]: SMTP: RCPT: 450 Rcpt to - Temporary local problem - I said try later
Jan 1 22:29:05 kamatamail1_in greylist[7525]: SMTP: connection closed
Jan 1 22:29:05 kamatamail1_in greylist[7529]: SMTP: RCPT: 450 Rcpt to - Temporary local problem - try later
Jan 1 22:29:12 kamatamail1_in greylist[7531]: SMTP: RCPT: 450 Rcpt to - Temporary local problem - I said try later
Jan 1 22:29:13 kamatamail1_in greylist[7531]: SMTP: connection closed
Jan 1 22:29:14 kamatamail1_in greylist[7532]: IP 82.208.84.253 back too soon - temp error again
Jan 1 22:29:16 kamatamail1_in greylist[7532]: SMTP: EHLO: 250 hello

メンテナンス
/var/qmail/whitelist配下にすぐに受け入れたいIPアドレスを並べることでSMTPコネクションの切断が発生しないのでメール配送の遅延が発生しません。

# pwd
/var/qmail/whitelist
# ls -l
合計 4
-rw-r--r-- 1 qmaild qmail 0 12月 31 20:20 124.147.39.
-rw-r--r-- 1 qmaild qmail 0 12月 31 20:20 124.211.47.3

この記事は役に立ちましたか?評価をお願いいたします。
[合計: 0 平均: 0]

広告336px

広告336px

-Article(記事)
-Linux, Mail

Copyright© 蒲田ネット , 2017 AllRights Reserved.