Apacheの安全を確保するための10の対策
#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の記事へ
- ホワイトペーパー



