Apache2.4へのDoS攻撃(F5アタック)対策

Webサーバが貧弱すぎて、単純なDoS攻撃(F5アタック)でもダメージを受けることがわかりましたので、mod_dosdetecterを使った、連続アクセス防止対策を入れてみました。

1. apxをインストール

サブのhttpdはiusリポジトリから入れているので、apxが含まれるhttpd-develもiusからインストールします。

# yum --disablerepo=base,extras,updates --enablerepo=ius -y install httpd-devel

2. mod_dosdetector.so のインストール

apxのパスがデフォルトと違うので、Makefileを修正してからインストールします。

# cd /usr/local/src/
# git clone https://github.com/stanaka/mod_dosdetector.git
# cd mod_dosdetector/
# vi Makefile
-------------------------------------
.
.
#   the used tools
#APXS=/usr/sbin/apxs
APXS=/bin/apxs
.
.
-------------------------------------
:wq
# make install

3. mod_dosdetector.so のロード

httpd.confを修正して、mod_dosdetector.soをロードします。

# vi /usr/local/httpd2/conf/httpd.conf
-------------------------------------
.
.
LoadModule dosdetector_module /usr/lib64/httpd/modules/mod_dosdetector.so
.
.
------------------------------------
:wq

4. DoS対策するバーチャルホスト設定

DoS対策するバーチャルホスト内に、dosdetectorの設定を追記します。

# vi /usr/local/httpd2/conf/extra/httpd-vhost-https.conf
-------------------------------------
<IfModule mod_ssl.c>
<VirtualHost *:443>
.
.
.
    # for dosdetector
    DoSDetection on
    DoSPeriod 10
    DoSThreshold 30
    DoSBanPeriod 60
    DoSTableSize 100
    RewriteEngine On
    RewriteCond %{ENV:SuspectDoS} =1
    RewriteRule .*  - [R=503,L]
    ErrorDocument 503 "<h1>Sorry, ji0vwl.net is busy.. Please access later.</h1>"
</VirtualHost>
</IfModule>
------------------------------------
:wq
# systemctl reload httpd2

コメントを残す

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

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)