mod_evasive

はじめに

以前から時折WEBサーバへの大量アクセスでサーバのレスポンスが低下するという現象が見られたので、対策ツールとして導入しました。

パスやバージョンは適宜読み替えて下さい。OSは、"CentOS release 6.5 (Final)" です。

インストール

ダウンロード

http://www.zdziarski.com/blog/?page_id=442 からダウンロードできます。ダウンロード先リンクを wget してファイルを取得します。

$ wget http://www.zdziarski.com/blog/wp-content/uploads/2010/02/mod_evasive_1.10.1.tar.gz

apxs の有無を確認する

apxs が導入済みか確認します。

# updatedb
# locate apxs

なければ、インストールします。

# yum install httpd-devel

apxs を用いてインストールする

mod_evasive 内の README ファイルに書いてある手順に従い、インストールします。 以下の手順のみで良いはずです。

# cd mod_evasive_1.10.1
# /usr/sbin/apxs -i -a -c mod_evasive20.c

設定

ログ出力用のディレクトリを作る

適当に作り、所有者は Apache を動作させるユーザと同じにしておきます。

# mkdir /var/log/mod_evasive

# chown apache:apache /var/log/mod_evasive

httpd.conf に設定する

/etc/httpd/conf/httpd.conf を開くと、以下のような行が追加されているはずです。

LoadModule evasive20_module   /usr/lib64/httpd/modules/mod_evasive20.so

上記を確認したら、下記の設定を記述します。

<IfModule mod_evasive20.c>
     DOSHashTableSize 3097
     DOSPageCount 3
     DOSSiteCount 20
     DOSPageInterval 2
     DOSSiteInterval 1
     DOSBlockingPeriod 3600
     DOSLogDir "/var/log/mod_evasive"
     DOSEmailNotify webmaster@hoge.jp
</IfModule>

参考にさせていただいたページ


トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS