postfix一般系スパムの対応法

 

定番のRBLサイト利用

まずはスパムリストに載っているものは拒否する様に設定(一番簡単ぽい)

vi /etc/postfix/main.cf

smtpd_client_restrictions = permit_mynetworks,

                            reject_rbl_client spamcop.net,

                            reject_rbl_client dynablock.wirehub.net,

                            reject_rbl_client opm.blitzed.org,

                            reject_rbl_client relays.visi.com,

                            reject_rbl_client sbl.spamhaus.org,

                            check_client_access hash:/etc/postfix/reject_client,

                            permit

 

check_client_access hash:/etc/postfix/reject_client

には自分が発見したIP等を入れておく

 

スパムのアタック目的のHelloコマンドの疎通確認

smtpd_helo_restrictions = reject_invalid_hostname,   <<--①
                          reject_non_fqdn_hostname,   <<--②
                          reject_unknown_hostname     <<—③

解析

HELOコマンドで提供されるホスト名が有効なホスト名でない時拒否 拒否応答コード501
HELOコマンドで提供されるホスト名がRFCで必須とされる完全修飾名の形式でない時、要求を拒否。拒否応答コード504
HELOコマンドで提供されるホスト名がAレコードもMXレコードも無い時要求を拒否。拒否応答コード450(unknown_hostname_reject_codeで指定も)

 

 

アクセス数で制限

スパムではないメルマガもひっかかりそうだからおれは使えないね

smtpd_client_connection_rate_limit = 3  <<--①
anvil_rate_time_unit = 60s         <<--②
 
smtpd_soft_error_limit = 3         <<--③
smtpd_hard_error_limit = 5         <<--④
smtpd_error_sleep_time = 20s        <<--⑤
 
smtpd_client_message_rate_limit = 6    <<--⑥
smtpd_client_recipient_rate_limit = 6   <<--⑦

解析

①② 同一クライアントが60秒間に、3回接続してきたら接続MAXってことでブロックされる
設定回数だけエラーを時間内(anvil_rate_time_unit = 60s)にだしたら、スリープ分アカウント停止
設定回数だけエラーを出したら、接続を解除
 
⑥⑦

60秒間に6通のメールと6箇所宛先におくれるという設定

smtpd_client_connection_count_limitなどで、接続数も絞る事ができる

 

参考ページ:

http://online106.hatenablog.jp/entry/2013/10/06/143055

http://online106.hatenablog.jp/entry/2013/10/07/033906

http://online106.hatenablog.jp/entry/2013/10/13/124330

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です