ページの先頭行へ戻る
Interstage Application Server/Interstage Web Server Express Interstage HTTP Server 2.2運用ガイド
FUJITSU Software

4.6 セキュリティ対策

Interstage HTTP Server 2.2のセキュリティ対策について以下に説明します。


アクセス時の注意

WebブラウザからWebサーバにアクセスする際、ネットワーク上の悪意のある人(またはマシン)が、正当なアクセス権限をもつ人(またはマシン)になりすまし、Webサーバにアクセスする脅威があります。
アクセスしたユーザが本人であるかを確認するために、SSLプロトコルバージョン「SSL3.0」または「SSL3.1」(TLS 1.0)のクライアント認証によるSSL通信を使用することをお勧めします。
SSLの設定については、「3.10 SSLの設定」を参照ください。


通信データについての注意

ネットワーク上の悪意のある人(またはマシン)が、正当にアクセスする権限を持つ人(またはマシン)とサーバとの間の通信データをのぞき見する脅威があります。または、サーバとの間の通信データを改ざんし、それが正当なデータとしてやりとりされる脅威があります。
暗号化によるセキュリティ保護を行うため、SSL通信を使用することをお勧めします。
SSLの設定については、「3.10 SSLの設定」を参照ください。


資源ファイルへの不正アクセス

Interstage HTTP Server 2.2では、以下のような資源ファイルを保持しています。

これらのファイルは悪意のある人(またはマシン)による不正アクセスという脅威にさらされる可能性があります。
これらのファイルを脅威にさらさないためには、そのファイルを一般ユーザからはアクセスできないようにするという対策があります。このために、それらのファイルに対して管理者権限をもつユーザ(Solaris/Linuxシステムではスーパユーザ、Windows(R)システムではAdministrator)だけがアクセス可能となる設定をすることをお勧めします。


パスワード情報の漏洩

Interstage HTTP Server 2.2には、パスワードファイルがあり、悪意のある人(またはマシン)がそのファイルをのぞき見る脅威があります。
パスワードファイル内のパスワードデータは暗号化されていますが、一般ユーザからアクセスできないようにするため、管理者がhtpasswdコマンドを使用してパスワードファイルを作成することをお勧めします。パスワードファイルの作成方法については、「3.7 ユーザ認証の設定」を参照してください。


Denial of Service attack (DoS)の脅威

ネットワーク上の悪意のある人(またはマシン)が、標的とするサーバに対してサービスを不能にする脅威があります。
Denial of Service attack (DoS)の脅威に備え、以下のような機能を使用することをお勧めします。


HTTP TRACEメソッド悪用による脅威

ネットワーク上の悪意のある人(またはマシン)が、HTTPリクエストデータ内に存在する個人情報を盗み見たり、任意のコードを実行する脅威があります。
このような脅威に備え、環境定義ファイルhttpd.confのTraceEnableディレクティブに「off」を指定して、HTTP TRACEメソッドを無効にすることをお勧めします。
なお、TRACEメソッドは、ネットワーク上の診断を行うためなどに使用され、クライアント側から送出したデータをそのままレスポンスデータとして受信するHTTP/1.1のメソッドです。通常、使用されないため、無効にしてもWebサーバ運用上の影響はありません。

TraceEnable  off

ユーザアカウント名発見の脅威

ネットワーク上の悪意のある人(またはマシン)により、Webサーバマシン上のユーザアカウント名が発見される脅威があります。
このような脅威に備え、環境定義ファイルhttpd.confに以下を設定し、ユーザアカウントのホームディレクトリ配下のドキュメントに対する要求を無効にすることをお勧めします。

LoadModule userdir_module "/opt/FJSVahs/modules/mod_userdir.so"
UserDir    disabled

ポイント

LoadModuleおよびUserDirディレクティブの先頭にハッシュマーク(#)を追加して、コメント行としてもよいです。


ユーザアカウントのホームディレクトリ配下のドキュメントを公開する場合は、以下のように設定してください。

ユーザディレクトリの設定を無効とする設定例を以下に示します。


ユーザ名「user1」および「user2」のホームディレクトリ/public_html配下のドキュメントを公開する場合

LoadModule userdir_module "/opt/FJSVahs/modules/mod_userdir.so"
UserDir    public_html
UserDir    disabled
UserDir    enabled user1 user2

ユーザ名「user3」および「user4」以外のすべてのユーザのホームディレクトリ/public_html配下のドキュメントを公開する場合

LoadModule userdir_module "/opt/FJSVahs/modules/mod_userdir.so"
UserDir    public_html
UserDir    disabled user3 user4

注意

「UserDir public_html」だけを設定し、「http://ホスト名[:ポート番号]/~user」のリクエストを受けた場合、指定されたユーザ名「user」がWebサーバマシン上に存在するかどうかで、以下のように異なるステータスコードを返すことがあるため、Webサーバマシン上のユーザアカウント名が発見される可能性があります。

  • 指定されたユーザ「user」が存在しない場合:

    ステータスコード「404」(Not Found)を返します。

  • 指定されたユーザ「user」が存在する場合:

    ステータスコード「403」(Forbidden)を返します。
    これは、指定されたユーザ「user」が存在するが、ユーザのホームディレクトリに、Webサーバからアクセス可能な権限が設定されていない場合に発生します。Webサーバの実行ユーザは、Userディレクティブで指定します。


    useraddコマンドでユーザのホームディレクトリを作成すると、ディレクトリの権限は所有者だけに設定され、そのユーザだけがアクセス可能となるため、本現象が発生します。