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

[postfix-jp:03320] Re: ウイル ス対策?



あらきです。

> 豊田です。
> 
>  ウイルスに感染したと思われるパソコン(たぶん Windowsマシン、ウイルス
> の種類等は不明)からメールサーバーへの DoS 攻撃で、メールが送信できない
> 状態が頻発するようになりました。メールサーバーのログを見てみると、
> 
> Sep  9 10:09:11 ##### postfix/smtpd[12377]: too many errors after NOOP from ###.###.jp[nnn.nnn.nnn.nnn]
> 
> のようなメッセージが1日に数十個出ていました。また、数十個の smtpd デーモン
> のプロセスが起動した状態になっていました。

master.cfでのmaxprocまでいってしまいましたか。

>  とりあえず、iptables で、そのホストからのアクセスを制限して解決しました
> が、postfix 側で対処するにはどうすればいいでしょうか?

iptablesとか、そのテの機器をつかうのがいい手だとは思います。
で、postfixだけでやるとしたら、smtpd_client_restrictionsにその相手を書いて、
smtpd_delay_reject = noにすれば、即座に拒否できます。

で、攻撃元が特定できないならば、以下のような話がでてきます。

>  たぶん、smtpd_junk_command_limit の値を小さくすればいいような気がします

これがメインの解決策になると思います。
しかしながら、postfix側からdisconnectしてもすぐに接続されるような攻撃ならば
切ってもすぐに接続されるわけで、

> が、smtpd_error_sleep_time も長くした方がいいのでしょうか?

並列して接続されないならば、長くして対処するのはいい手かもしれません。
が、並列して接続されてしまうときびしいですね。

>  また、smtpd_hard_error_limit とかは、増やした方がいいのでしょうか?
> 
> 現在の設定は以下のように(デフォルトのままに)なっています。
> 
> smtpd_junk_command_limit = 100
> smtpd_error_sleep_time = 5s
> smtpd_hard_error_limit = 100
> smtpd_soft_error_limit = 10
> 
>  他にデフォルトの値を変更すべきところはありませんでしょうか?

smtpd_timeoutするまで相手がつなぎっぱなしになるなら、この値を小さくするのも
有効かも。(あまり小さくすると通信できなくなる相手もいるでしょうけれど)

あと、こういうwormがどれほどsmtp clientとしてちゃんと動作していないものなら
HELO/EHLOに着目して、smtpd_helo_required、smtpd_helo_restrictionsを使うのも
いいでしょうし。

攻撃元がわかっているならば、debug_peer_listに加えて、相手がどのような
SMTP(壊れたSMTP?)コマンドを送ってくるのかがわかればもっといい方法が
わかると思います。

--
荒木靖宏

References
[postfix-jp:03318] ウイルス 対策?, TOYODA Jiro

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