Apacheは世界で最も広く使用されているウェブサーバーですが、同時に最も広く攻撃を受けているサーバーの1つでもあります。そのため、
Apacheサーバーを可能な限り安全に保護することが常に賢明です。これは
単にネットワークを安全に保護するだけにとどまりません。
外部からの攻撃に対して、Apacheサーバーに最大限の注意を払う必要があります。
Apacheサーバーを分散型サービス拒否(DDoS)、Slowloris、DNSインジェクション攻撃から防御する手順を解説します。これらの侵入は、
サーバーをロックダウンする時間
さえあれば、非常に簡単に防ぐことができます。
Apacheサーバーが起動していること、そして(説明を簡潔にするために)Ubuntuプラットフォーム上で動作していることを前提としています。他のプラットフォームの場合は、
若干の調整が必要になります。この作業はすべてコンソールウィンドウ内で行う
ので、「コンソールの雰囲気」をすぐに体感できるはず
です。
見逃せない: スノーデン時代のITセキュリティ、TechRepublicとZDNetの特集記事
DDoS
DDoS攻撃を防ぐために作成されたApacheモジュールがありますが、デフォルトではインストールされていない可能性があります。モジュールをインストールするには、以下の手順に従ってください。
1. ターミナル ウィンドウを開きます。
2. sudo apt-get -y install
libapache2-mod-evasiveコマンドを実行します。
3. sudo mkdir -p
/var/log/apache2/evasiveコマンドを実行します。
4. sudo chown -R www-data:root
/var/log/apache2/evasiveコマンドを実行します。
5.
/etc/apache2/mods-available/mod-evasive.load ファイルを開き (sudo とお気に入りの
テキスト エディターを使用)、そのファイルの末尾に次の内容を追加します (1 行につき 1 つの構成です)。
DOSHashTableSize 2048
DOSPageCount 20 # 同じページへのリクエストの最大数
DOSSiteCount 300 # 同じリスナー上の同じクライアントIPによる任意のオブジェクトへのリクエストの合計数
DOSPageInterval 1.0 # ページカウントしきい値の間隔
DOSSiteInterval 1.0 # サイトカウントしきい値の間隔
DOSBlockingPeriod 10.0 # クライアントIPがブロックされる時間
DOSLogDir “/var/log/apache2/evasive”
DOSEmailNotify [email protected]
6. ファイルを保存し、Apache を再起動します。
これで、DDoS 攻撃からの保護が強化されるはずです。
スローロリス
Slowlorisは、Robert Hansen氏が開発したソフトウェアで、最小限の帯域幅で1台のマシンから別のマシンのウェブサーバーをダウンさせることができます。Apacheには、このような攻撃を防ぐためのモジュールがあります。Slowloris
の使い方は
以下のとおりです。
1. ターミナルウィンドウを開きます。
2. sudo apt-get -y install
libapache2-mod-qosコマンドを実行します。
インストールが完了したら、
/etc/apache2/mods-available/qos.conf の設定を確認し、ニーズに完全に合致していることを確認してください
。モジュールを(必要に応じて)調整したら、
Apache を再起動して、Slowloris フリーのウェブサーバーをお楽しみください。
DNSインジェクション
ウェブフォームからのスパムは蔓延しているだけでなく、 Spamhausなどのブラックリストにドメインを登録される手っ取り早い手段でもあります。DNS
インジェクション攻撃(サーバーのキャッシュに偽のDNS名を挿入する攻撃)を防ぐには
、Apacheに別のモジュールを追加する必要があります。
以下の手順に従ってください。
1. ターミナルウィンドウを開きます。
2. sudo apt-get -y install
libapache2-mod-spamhausコマンドを実行します。
3. インストールが完了したら、コマンドsudo touch /etc/spamhaus.wl を実行します。
4. モジュールがインストールされたら、
/etc/apache2/apache2.conf ファイルを開き (sudo とお気に入りのテキスト エディターを使用)、
構成ファイルの末尾に次のコードを追加します。
<IfModule mod_spamhaus.c>
MS_METHODS POST、PUT、OPTIONS、CONNECT
MS_WhiteList /etc/spamhaus.wl
MS_CacheSize 256
</IfModule>
5. apache2.conf ファイルを保存し、Apache を再起動して新しい
モジュールを有効にします。
まとめ
Apacheウェブサーバーは、
サーバーやネットワークを停止させる可能性のある3つの一般的な攻撃からより強固に保護されるようになりました。これらのモジュールが機能していても、
Apacheのログファイル(/var/log/apache2/に保存されているはずです)を常に注意深く監視することをお勧めします。
攻撃を阻止するための注意深い監視と、ログの監視に対する積極的な姿勢により、Apache は長期にわたって役立つはずです。