雑文発散

«前の日記(2014-10-13) 最新 次の日記(2014-10-15)» 編集
過去の日記

2014-10-14 [長年日記]

[tDiary] DoS 対策に mod_evasive を導入

第三tDiary.Netに対して、このところ何度か DoS 的なアクセスが行なわれていたので、mod_evasive を導入した。

これまでも見つけた時には、ログから IP を抜き出して iptables のルールへ追加して来たんだけど、いい加減後手後手な対応になってしまっているので、動的な対応を追加した。

参考にしたのは「Apache DoS攻撃にそなえる」という記事。

Debian には libapache2-mod-evasive というパッケージがあったのでインストールは楽々。設定も参考記事通りでほぼ大丈夫だったのだけど、ひとつだけハマったところが。

DOSEmailNotify にメールアドレスを指定すれば、DoS を検知した時にメールが送信されるということなのに、テスト用のスクリプトを叩いても何も送信されなかった。メールのログを見ても送信された形跡が無い。

設定項目が変わったののかな?と調べてみても特に情報はなく、メールアドレスの記載も間違いが無いし、何が原因なんだろう?と追ってみたら、、、どうやら /bin/mail が存在しないことが原因だった模様。

/usr/bin/mail から /bin/mail へシンボリックリンクを張ることで、DoS 検知のメールが送信されるようになった。

# ln -s /usr/bin/mail /bin/mail

昨日の夕方に仕込んで、今朝までに 8 つの IP を検知している。WHOIS による国別の内訳を見るとこんな感じ。

  • US 7
  • HK 1

ずっと CN な IP が目立っていたんだけど、このところの数回は US からひどいアクセスが続いている。

それから、DOSSystemCommand の設定を使えば、動的に iptables へ追加ができるのかも。今回導入した Apache レベルでの拒否では対処できない状態になったら、それも実施した方が良いのかもなぁ。