Apacheでmod_evasiveを有効にする

Mod_evasiveは、HTTP DoS攻撃またはブルートフォース攻撃が検出されたときに自動的にアクションを実行するApache用のモジュールです。Mod_evasiveは、不正行為をログに記録して報告し、メールで問題を通知することができます。このガイドを実行する前に、正しく機能しているLAMPサーバーを用意しておく必要があります。

このガイドは、CentOSとそのバリエーション(RHELなど)およびDebianとそのバリエーション(Ubuntuなど)向けに書かれています。

モジュールは、IPアドレスとURLのテーブルを作成します。このドキュメントで後述するように、構成で設定された条件が満たされている場合、ユーザーを悪用すると403(禁止)エラーが発生します。また、IPアドレスがログに記録され、オプションが設定されている場合、指定された電子メールアドレスに電子メールが送信されます。

ステップ1:インストール httpd-devel

httpd-develパッケージには、Apache用の動的共有オブジェクトを構築するために必要なファイルが含まれています。次の手順でモジュールをコンパイルするため、モジュールをインストールするにはこのパッケージが必要です。

CentOS / RHELで次を実行:

yum install httpd-devel

Debian / Ubuntuで、次を実行します。

apt-get install apache2-utils

このパッケージが正常にインストールされたら、次の手順に進みます。インストールが正しく完了していない場合、次の手順は(ほとんどの場合)失敗します。

ステップ2:ダウンロードとインストール mod_evasive

方法1:コンパイル

モジュールをダウンロードします。

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

モジュールを抽出します。

tar xzf mod_evasive*.tar.gz

次のディレクトリに移動します。

cd mod_evasive

次に、apxs2Apacheの機能を拡張するモジュールを構築およびインストールするために作成されたツールであるを使用します。Apxs2動的共有オブジェクトを構築します。これがhttpd-devel、手順1でインストールした理由です。

実行:

apxs2 -cia mod_evasive20.c

方法2:インストールyum(推奨)

epel-releaseリポジトリがインストールされている場合、からmod_evasive利用できますyum

リポジトリを追加します。

yum install epel-release

を使用してモジュールをインストールしますyum

 yum install mod_evasive

ステップ3:モジュールをApacheに追加する

通常、Apacheはすべてのモジュールをからロードするmods-enabledため、モジュールがそのフォルダーに追加されるたびに、手動でApache構成に追加する必要はありません。設定ファイルを開いて、これに該当するかどうかを確認してください。

CentOSでは、関連ファイルは次のとおりです。 /etc/httpd/conf/httpd.conf

Ubuntuでは、関連ファイルは次のとおりです。 /etc/apache2/apache2.conf

を検索しIncludeます。などの行は、Include mods-enabled/*.confすべてのモジュールをロードするようにApacheに指示します。ない場合は、その行をファイルの先頭に追加して、Apacheを再起動します。

Ubuntuの場合、次の内容をファイルの最後に追加します。

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

ステップ4:設定の構成と変更

次のブロックを構成ファイルに追加します。パスはステップ#3と同じです。

<IfModule mod_evasive20.c>
    DOSHashTableSize 3097
    DOSPageCount 2
    DOSSiteCount 50
    DOSPageInterval 1
    DOSSiteInterval 1
    DOSBlockingPeriod 60
    DOSEmailNotify <[email protected]>
</IfModule>

これらのパラメータの簡単な概要は、にありますREADME。READMEファイルは次のようにして読み取ることができます。

cat /usr/src/cd mod_evasive/README

ほとんどの場合、これらの設定を時々微調整して、サーバーとWebサイトに適切であることを確認する必要があります。結局のところ、一部のサーバーは他のサーバーよりも多くのアクティビティとトラフィックを持っています。

ステップ5:Webサーバーの再起動

Apache Webサーバーを再起動して、変更を有効にし、モジュールをロードします。

service httpd restart

モジュールがApacheに読み込まれていることを確認します。

httpd -M | grep evasive

これは戻るはずevasive20_module (shared)です。そうでない場合、モジュールは正しく読み込まれていません。構成ファイルを再確認し、正しく保存されているかどうかを確認することをお勧めします。

このモジュールは、サーバー容量が使い果たされると機能しないため、DDoS保護の代わりにはなりません。実際、VultrはDDoS保護を提供します。これは、サーバーのより良い保護(およびこのモジュールの使用)に非常に役立ちます。より単純な脅威、特にスクリプトベースの攻撃の場合、モジュールはその役割を果たし、間違いなく役立ちます。

これでmod_evasiveモジュールがApacheにインストールされ、Webアプリがより安全になりました。



Leave a Comment

CentOS 7にApacheをインストールする方法

CentOS 7にApacheをインストールする方法

CentOS 7サーバーにApache 2.4をインストールする方法を説明します。安定したウェブサーバーを構築するための前提条件と手順を解説します。

FreeBSD 11.1にBlacklistdをインストールする方法

FreeBSD 11.1にBlacklistdをインストールする方法

FreeBSD 11.1におけるBlacklistdのインストール方法について詳しく解説します。この方法を通じて、強力なセキュリティ対策を実装できます。

Windows Serverのサーバーマネージャーを使用した複数サーバーの管理

Windows Serverのサーバーマネージャーを使用した複数サーバーの管理

サーバーマネージャーを使用して、Windows Serverの管理が向上します。セキュリティリスクを軽減し、効率的な管理を実現します。

CentOS 7にSeafileサーバーをインストールする方法

CentOS 7にSeafileサーバーをインストールする方法

CentOS 7にSeafileサーバーをインストールする方法。Seafile(コミュニティバージョン)は、ownCloudに似た無料のオープンソースファイル同期および共有ソリューションです。

DebianでSnortを設定する方法

DebianでSnortを設定する方法

Snortは無料のネットワーク侵入検知システムです。最新の方法で、SnortをDebianにインストールし、設定する手順を紹介します。ネットワークのセキュリティを強化しましょう。

CentOS 7にGraylogサーバーをインストールする方法

CentOS 7にGraylogサーバーをインストールする方法

CentOS 7にGraylogサーバーをインストールし、ログ管理を行う方法を学びます。

WindowsでhMailServerを使用してメールサーバーを構築する

WindowsでhMailServerを使用してメールサーバーを構築する

WindowsサーバーでWebサイトを実行している場合、電子メールも受信できるようにするためにhMailServerを使用する方法を解説します。

Ubuntu 19.04にFiveMサーバーをインストールする方法

Ubuntu 19.04にFiveMサーバーをインストールする方法

FiveMサーバーをUbuntu 19.04にインストールするための詳細なガイド。必要条件からインストール、起動、トラブルシューティングまで、すべてのステップを含みます。

WsgiDAVを使用してDebian 10にWebDAVをデプロイする

WsgiDAVを使用してDebian 10にWebDAVをデプロイする

Debian 10にWebDAVをデプロイする方法を学び、WsgiDAVとSSL証明書で安全な接続を実現しましょう。

ヘルスケア2021における人工知能の影響

ヘルスケア2021における人工知能の影響

ヘルスケアにおけるAIは、過去数十年から大きな飛躍を遂げました。したがって、ヘルスケアにおけるAIの未来は、日々成長を続けています。