Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

4.3.8. HTTP サーバーのセキュア化

4.3.8.1. Apache HTTP Server のセキュリティー保護

Apache HTTP Server は、Red Hat Enterprise Linux 7 の最も安定しセキュアなサービスの 1 つです。Apache HTTP Server をセキュアにするために、多くのオプションおよび手法が利用できるようになりました。ここでは多大なオプションになります。次のセクションでは、Apache HTTP Server を実行する際の適切なプラクティスを簡単に説明します。
システムで実行しているスクリプトが意図された通りに動作することを確認してから、実稼働環境に配置してください。また、root ユーザーのみがスクリプトまたは CGIs を含むディレクトリーへの書き込み権限があることを確認します。これを実行するには、root で次のコマンドを実行します。
chown root <directory_name>
chmod 755 <directory_name>
システム管理者は、以下の設定オプションを使用するようにしてください (/etc/httpd/conf/httpd.conf で設定します)。
FollowSymLinks
このディレクティブはデフォルトで有効であるため、Web サーバーのドキュメントルートへのシンボリックリンクを作成する際に注意して使用してください。たとえば、/ へのシンボリックリンクを提供することは適切ではありません。
インデックス
このディレクティブはデフォルトで有効になっていますが、望ましい場合があります。アクセッサーがサーバー上のファイルを参照しないようにするには、このディレクティブを削除します。
UserDir
UserDir ディレクティブは、システムにユーザーアカウントが存在するかどうかを確認できるため、デフォルトでは無効になっています。サーバーで参照するユーザーディレクトリーを有効にするには、以下のディレクティブを使用します。
UserDir enabled
	        UserDir disabled root
これらのディレクティブは、/root/ 以外のすべてのユーザーディレクトリーを参照するユーザーディレクトリーを参照します無効にしたアカウントの一覧にユーザーを追加するには、UserDir disabled 行に、スペースで区切った一覧を追加します。
ServerTokens
ServerTokens ディレクティブは、クライアントに返信されるサーバー応答ヘッダーフィールドを制御します。これには、以下のパラメーターを使用してカスタマイズできるさまざまな情報が含まれます。
  • ServerTokens Full (デフォルトオプション): 以下のように利用可能なすべての情報(OS タイプおよび使用されるモジュール)を提供します。
    Apache/2.0.41 (Unix) PHP/4.2.2 MyMod/1.2
    
  • ServerTokens Prod または ServerTokens ProductOnly: 以下の情報を提供します。
    Apache
    
  • ServerTokens Major - 以下の情報を提供します。
    Apache/2
    
  • ServerTokens マイナー - 以下の情報を提供します。
    Apache/2.0
    
  • ServerTokens Min または ServerTokens Minimal: 以下の情報を指定します。
    Apache/2.0.41
    
  • ServerTokens OS - 以下の情報を提供します。
    Apache/2.0.41 (Unix)
    
ServerTokens Prod オプションを使用して、潜在的な攻撃者がシステムに関する貴重な情報を取得しないようにすることが推奨されます。
重要
IncludesNoExec ディレクティブを削除しないでください。デフォルトでは、Server-Side Includes (SSI)モジュールはコマンドを実行できません。絶対的に必要でない限り、この設定は変更しないことが推奨されます。また、攻撃者はシステム上でコマンドを実行することがあるためです。
httpd モジュールの削除
特定のシナリオでは、HTTP サーバーの機能を制限するために特定の httpd モジュールを削除することが有益です。これを行うには、/etc/httpd/conf.modules.d ディレクトリーで設定ファイルを編集します。たとえば、プロキシーモジュールを削除するには、以下を指定します。
echo '# All proxy modules disabled' > /etc/httpd/conf.modules.d/00-proxy.conf
/etc/httpd/conf.d/ ディレクトリーには、モジュールの読み込みに使用される設定ファイルが含まれていることに注意してください。
httpd および SELinux
詳細は『Red Hat Enterprise Linux 7 SELinux ユーザーおよび管理者のガイド』の「Apache HTTP Server および SELinux」の章を参照してください。

このページには機械翻訳が使用されている場合があります (詳細はこちら)。