Apacheの安全を確保するための10の対策

文:Jack Wallen 翻訳校正:石橋啓一郎
2009-01-23 08:00:00
  • このエントリーをはてなブックマークに追加

#6: リクエストメッセージの大きさを制限する

 Apacheがサイズの大きいリクエストメッセージを受け取るようにしておくと、サービス妨害攻撃につながる可能性がある。Apacheにはこれを防ぐためのLimitRequestBodyというディレクティブがあり、Directoryタグの中で使われる。許可すべきメッセージのサイズは、そのウェブサイトのニーズによって異なる。デフォルトでは、LimitRequestBodyは無制限に設定されている。

#7: mod_securityを組み込む

 Apacheでもっとも重要なモジュールの1つにmod_securityがある。このモジュールは、単純なフィルタリング、正規表現によるフィルタリング、URLエンコーディングの検証、サーバ名のマスキングなど、多くの仕事をこなす。mod_securityのインストールと設定について、1段落で説明するのは難しい。しかし、手始めとしては、モジュール読み込み部分に「unique_id」と「security2」を読み込むディレクティブを追加するのがいいだろう。これらのエントリを追加したら、service apache2 configtestというコマンドを実行する。もし「Syntax OK」と返ってくれば大丈夫だ。

#8: ドキュメントルートの外部へのアクセスを禁止する

 ドキュメントルートの外部へのアクセスを許すと、トラブルが生じがちだ。特別な理由がなければ、この機能は無効にしておいた方がよい。そのためには、まずドキュメントルートに関するエントリを編集する必要がある。

<Directory />

Order Deny, Allow

Deny from all

Options None

AllowOverride None

</Directory>

 このように設定した場合、ドキュメントルート以下のディレクトリにオプションを追加したければ、それぞれのディレクトリについて個別にDirectoryエントリを作成する必要がある。

#9: Apacheのバージョン番号を隠す

 攻撃は最大の防御なりだ。そして、最善の防御手段の1つは、サービスに関する情報をできるだけ隠蔽することだ。隠すべき重大な情報の1つに、Apacheのバージョン番号がある。これを隠すことで、好ましからざるユーザーが、あなたのウェブサーバを簡単にハックする方法を知ってしまうのを避けることができる。Apacheのバージョン番号を隠すには、ドキュメントルートのDirectoryタグの中に、次のように記述すればよい。

ServerSignature Off

ServerTokens Prod

#10: httpd.confを変更できないようにする

 httpd.confを詮索好きな目から隠すことは、セキュリティのための最善の方法の1つだ。見るべきではない人がhttpd.confを見ることができないようにしておけば、それを変更されることもない。httpd.confを変更不可にするには、次のコマンドで変更不可ビットをオンにすればよい。

chattr +i /path/to/httpd.conf

 上記のコマンドの/path/to/httpd.confの部分は、あなたのシステムのApacheの設定ファイルへのパスに置き換えること。これで、誰かがhttpd.confを修正するのは困難になる。

設定オプション

 ここまで、Apacheを安全なものにするための10の簡単な対策を説明してきた。だが実際には、Apacheの設定オプションは非常に多い。その一部はかなり一般的なものだが、一部は特定の目的のために設計されたものだ。ウェブサーバのニーズに沿う形で、Apacheのオプション・設定がもっとも安全になるように気を配って欲しい。

この記事は海外CNET Networks発のニュースをシーネットネットワークスジャパン編集部が日本向けに編集したものです。海外CNET Networksの記事へ

このサイトでは、利用状況の把握や広告配信などのために、Cookieなどを使用してアクセスデータを取得・利用しています。 これ以降ページを遷移した場合、Cookieなどの設定や使用に同意したことになります。
Cookieなどの設定や使用の詳細、オプトアウトについては詳細をご覧ください。
[ 閉じる ]