5.5. Apache HTTP サーバー保護

Apache HTTP サーバー はRed Hat Enterprise Linuxと転送する最も安定して安全なサービスです。 Apache HTTP サーバーを保護するオプションやテクニックは数多くにあります。 — あまりにも多いため、ここでは詳細を省略させていただきます。

必ずアプリケーションに関する資料を読んでから Apache HTTP サーバー を設定して下さい。資料の一部として、Red Hat Enterprise Linux リファレンスガイドにあるApache HTTP サーバーの章、Red Hat Enterprise Linux システム管理ガイドにあるApache HTTP サーバー の設定の章、http://www.redhat.com/docs/manuals/stronghold/にあるStronghold マニュアルを参照して下さい。

管理者が気をつけなければならない設定オプションは次の通りです。

5.5.1. FollowSymLinks

このディレクティブはデフォルトで有効になっていますので、ウェブサーバーのドキュメントルートにシンボリックリンクを作成する場合は慎重に行なって下さい。例えば、/にはシンボリックリンクを与えないようにします。

5.5.2. Indexesディレクティブ

このディレクティブはデフォルトで有効になっていますが、 望ましい設定ではありません。 サーバー上のファイルをビジターが閲覧できなくするにはこのディレクティブを解除して下さい。

5.5.3. UserDir ディレクティブ

システムに存在するユーザーアカウントを確認してしまうため、 UserDir ディレクティブはデフォルトで無効となっています。 サーバーのユーザーディレクトリ閲覧を有効にするには 次のディレクティブを使用して下さい:

UserDir enabled 
UserDir disabled root

このようなディレクティブは/root/以外のユーザーディレクトリの ユーザーディレクトリ閲覧を有効にします。 無効アカウントのリストにユーザーを追加する場合は、 ユーザーの space delimited リストをUserDir disabled ラインに追加して下さい。

5.5.4. IncludesNoExecディレクティブは削除しない

デフォルトで、コマンド実行不可能なモジュールがサーバーサイドに含まれます。 アタッカーがシステム上でコマンド実行する恐れがあるので、 必要でない限りはこの設定を変更しないで下さい。

5.5.5. 実行可能ディレクトリの許可を制限する

スクリプトやCGIを含むディレクトリのルートユーザーには 必ず書き込みのみを許可して下さい。下記コマンドにて、実行できます:

chown root <directory_name>
chmod 755 <directory_name>

又、作業を始めるに 必ずシステムで実行されているスクリプトが全て 目的どおり稼動しているか確認して下さい。