[AIX Solaris HP-UX Linux Windows][z/OS]

SSL ディレクティブ

Secure Sockets Layer (SSL) ディレクティブは、IBM® HTTP Server の SSL 機能を制御する構成パラメーターです。

IBM HTTP Server では、多くの Secure Sockets Layer (SSL) ディレクティブを <virtual Host> セクション内で、あるいは <virtualHost> セクションの外でグローバルに指定できます。

どちらのコンテキストでも使用可能なほとんどのディレクティブは、グローバル構成から仮想ホスト構成にコピーおよびマージされません。 ただし、SSLEnable、SSLDisable、KeyFile、SSLServerCert、SSLTrace、SSLv2Timeout、および SSLv3Timeout は例外です。 SSL 対応の仮想ホスト・スコープ内で使用可能なほとんどの他のディレクティブの場合、 SSL 対応の仮想ホスト内でそれらを明示的に指定して有効にする必要があります。 マージおよびコピーが行われない、他の SSL ディレクティブの例として、SSLCipherSpec や Uncompromisable があります。

ディレクトリー・スコープ (<Location>、<Directory>、または htaccess) で指定された SSL ディレクティブの場合、より汎用的なスコープの構成セクションが、より特定的なスコープの構成セクションにマージされます。 このカテゴリーのディレクティブの例として、SSLCipherBan、SSLCipherRequire、SSLClientAuthRequire、SSLVersion などがあります。 これらのディレクティブが使用される頻度は、前述のものと比べて低くなります。

グローバルに指定された keyfile ディレクティブを除き、可能な限り、構成はマージしないでください。 複数の構成スコープのマージに依存する構成については、必ずその結果を検証してください。

以下のリストには、IBM HTTP Server の SSL ディレクティブが含まれています。
注: 証明書失効リスト (CRL) は非推奨のフィーチャーです。TLS 証明書では Online Certificate Status Protocol (OCSP) を使用してください。

SSLOCSPResponderURL

SSLOCSPResponderURL ディレクティブにより、静的に構成されたオンライン証明書状態プロトコル (OCSP)・レスポンダーを介してクライアント証明書を検査できます。
名前 説明
構文

[AIX Solaris HP-UX Linux Windows]SSLOCSPResponderURL<URL>

有効範囲 仮想ホスト
デフォルト 使用不可
モジュール mod_ibm_ssl
構成ファイル内の複数インスタンス 仮想ホストごとに 1 つ
OCSP レスポンダーを指す完全修飾 URL。例えば、http://hostname:2560/ のようになります。

CRL 検査を構成している場合でも、OCSP 検査は CRL 検査の前に実行されます。CRL 検査は、CRL の結果が不明または不確定な場合にのみ行われます。

SSLOCSPResponderURL を設定している場合、IBM HTTP Server は指定の URL を使用して、SSL クライアント証明書の提供時に証明書の失効状況を検査します。

SSLOCSPEnable および SSLOCSPResponderURL の両方を構成している場合は、SSLOCSPResponderURL で定義されたレスポンダーが先に検査されます。 失効状況が不明または不確定な場合、IBM HTTP Server は SSLOCSPEnable に関して OCSP レスポンダーを検査します。
トラブルの回避 (Avoid trouble) トラブルの回避 (Avoid trouble): 場合によっては、失効データのソースであるバックエンド・サーバーが使用不可であるために、IBM HTTP Server はクライアント認証の失効状況を確認できない可能性があります。 以下のことに留意してください。
  • 静的 CRL リポジトリー (SSLCRLHost) は、CRLDistributionPoint フィールドで他の URI 形式の検査を可能にするように構成する必要があります。
  • 証明書が CertificateDistributionPoint または AIA の拡張機能の LDAP または HTTP の URI 形式を使用する場合は必ず、IBM HTTP Server システムがこのタイプの出力接続を確立できるようにしてください。ファイアウォールの設定を調整する必要があります。
  • [AIX Solaris HP-UX Linux Windows]SSLUnknownRevocationStatus ディレクティブは、バックエンド・サーバーとの通信中に IBM HTTP Server にリカバリー可能エラーが発生し、IBM HTTP Server が証明書の失効状況を確認できない場合に備えて提供されています。デフォルト動作では、バックエンド・サーバーが証明書の失効を正常に示すことができるまで、ハンドシェーク処理を続行します。
  • [z/OS]明示的に構成された LDAP サーバー のみで CRL の照会を行うことができます。また、バックエンド・サーバーと接続できない場合、 SSL ハンドシェークを行うことはできません。
gotcha

SSLOCSPEnable

SSLOCSPEnable ディレクティブは、クライアント証明書の AIA (Authority Information Access) 拡張機能に定義された OCSP レスポンダーを介してクライアント証明書を検査できるようにします。
名前 説明
構文

[AIX Solaris HP-UX Linux Windows]SSLOCSPEnable

有効範囲 仮想ホスト
デフォルト 使用不可
モジュール mod_ibm_ssl
構成ファイル内の複数インスタンス 仮想ホストごとに 1 つのインスタンスが許可されています
なし

SSLOCSPEnable を設定している状態で、SSL クライアント証明書チェーンに AIA 拡張機能が含まれる場合は、IBM HTTP Server は AIA 拡張機能で示された OCSP レスポンダーに接続して、クライアント証明書の失効状況を検査します。

OCSP および CRL 検査の両方を構成している場合、OCSP 検査は CRL 検査の前に実行されます。CRL 検査は、OCSP 検査の結果が不明または不確定な場合にのみ行われます。

SSLOCSPEnable および SSLOCSPResponderURL の両方を構成している場合は、SSLOCSPResponderURL で定義されたレスポンダーが先に検査されます。 失効状況が不明または不確定な場合、IBM HTTP Server は SSLOCSPEnable に関して OCSP レスポンダーを検査します。

Keyfile ディレクティブ

keyfile ディレクティブは、使用する鍵ファイルを設定します。
重要: このディレクティブは、基本サーバー構成によりオーバーライドされる可能性があります。
名前 説明
構文
[AIX][Solaris][HP-UX][Linux][Windows]Keyfile [/prompt] /鍵ファイルの完全修飾パス名/keyfile.kdb
[z/OS]重要: /prompt 関数がサポートされるのは、JCL 開始ジョブからではなく、USS シェルから実行している場合のみです。 JCL 開始ジョブから /prompt 関数を使用しようとすると、構成エラーが発生します。
[z/OS]階層ファイル・システム (HFS) または System Authorization Facility (SAF) に保管された鍵リングを使用できます。 HFS に保管された鍵リングを使用する場合:
  • Keyfile /鍵ファイルに対する完全修飾パス/keyfile.kdb
SAF に保管された鍵リングを使用する場合:
  • Keyfile /saf WASKeyring
    重要: SAF 鍵リングを使用する場合:
    • SAF を使用する場合、stash ファイルはなく、アクセスは SAF ルールによって制御されます。 したがって、keyfile/prompt/saf 引数を使用する場合は、引数はサポートされません。この引数を使用しようとすると、構成エラーが発生します。
    • IBM HTTP Server を始動するために使用する ID には、このディレクティブで指定された鍵リングへのアクセス権が必要です。 ID にアクセス権がない場合、SSL 初期化は 失敗します。
有効範囲 グローバル・ベースおよび仮想ホスト
デフォルト なし
モジュール mod_ibm_ssl
構成ファイル内の複数インスタンス 仮想ホストおよびグローバル・サーバーごとに 1 つのインスタンス。
鍵ファイルのファイル名。

[AIX Solaris HP-UX Linux Windows]プロンプト・オプションを使用して、鍵ファイルのパスワードを求めるプロンプトが HTTP サーバーによって始動時に出されるようにします。

[z/OS]ファイル・システム保護は、アクセスを制限するために使用できます。SSL 証明書へのアクセスを制限するために、 SAF (System Authorization Facility) 鍵リングを使用します。

[z/OS]重要: z/OS® システムは、他のプラットフォームで作成された鍵データベース・ファイルをサポートしません。 z/OS システムで使用される鍵データベース・ファイルは、z/OS プラットフォームで作成する必要があります。
鍵ファイルのタイプとして、以下のいずれかの構成のみを使用できます。
  • [AIX Solaris HP-UX Linux Windows]証明書管理サービス (CMS)
  • [z/OS]CMS またはリソース・アクセス管理機能 (RACF®)

SSLAcceleratorDisable ディレクティブ

SSLAcceleratorDisable ディレクティブは、 アクセラレーター・デバイスを使用不可にします。
名前 説明
構文 SSLAcceleratorDisable
有効範囲 仮想およびグローバル
デフォルト アクセラレーター・デバイスは使用可能です。
モジュール mod_ibm_ssl
構成ファイル内の複数インスタンス 仮想ホストごとに 1 つのインスタンス。
なし。このディレクティブは、 仮想ホストの内部も含めて、構成ファイルの内の任意の場所に配置します。 初期設定中に、アクセラレーター・デバイスがマシン上にインストールされていることをシステムが判別した場合、 システムはそのアクセラレーターを使用して、セキュア・トランザクションの数を増やします。 このディレクティブは引数を取りません。
[AIX Solaris HP-UX Linux Windows]

SSLAllowNonCriticalBasicConstraints ディレクティブ

SSLAllowNonCriticalBasicConstraints ディレクティブを使用すると、RFC3280 に準拠しない、日本政府による GPKI 仕様の一部との互換性が実現します。
名前 説明
構文 SSLAllowNonCriticalBasicConstraints on|off
有効範囲 グローバル・サーバーまたは仮想ホスト
デフォルト Off
モジュール mod_ibm_ssl
構成ファイル内の複数インスタンス 仮想ホストおよびグローバル・サーバーごとに 1 つのインスタンス。
なし。このディレクティブは、発行者の認証局 (CA) 証明書で、非クリティカルの基本制約拡張によって認証は失敗しないという、証明書検証アルゴリズムの振る舞いを変更します。これを使用すると、RFC3280 に準拠しない、日本政府による GPKI 指定との互換性が実現します。
重要: RFC3280 では、「証明書のデジタル署名の検証に使用される公開鍵を含むすべての CA 証明書に、この拡張をクリティカルな拡張として使用しなければなりません」となっています。
[AIX][HP-UX][Linux][Solaris][z/OS]

SSLCacheDisable ディレクティブ

SSLCacheDisable ディレクティブは、外部 SSL セッション ID キャッシュを使用不可にします。
名前 説明
構文 SSLCacheDisable
有効範囲 物理 Apache サーバー・インスタンスごとに 1 つ (仮想ホスト・スタンザの外部でのみ使用可能)
デフォルト なし
モジュール mod_ibm_ssl
構成ファイル内の複数インスタンス 許可されません。
なし。
[AIX][HP-UX][Linux][Solaris][z/OS]

SSLCacheEnable ディレクティブ

SSLCacheEnable ディレクティブは、外部 SSL セッション ID キャッシュを使用可能にします。
名前 説明
構文 SSLCacheEnable
有効範囲 物理 Apache サーバー・インスタンスごとに 1 つ (仮想ホスト・スタンザの外部でのみ使用可能)
デフォルト なし
モジュール mod_ibm_ssl
構成ファイル内の複数インスタンス 許可されません。
なし。
[AIX][HP-UX][Linux][Solaris][z/OS]

SSLCacheErrorLog ディレクティブ

SSLCacheErrorLog ディレクティブは、セッション ID キャッシュのファイル名を設定します。
名前 説明
構文 SSLCacheErrorLog /usr/HTTPServer/logs/sidd_logg
有効範囲 仮想ホスト外部でのサーバー構成
デフォルト なし
モジュール mod_ibm_ssl
構成ファイル内の複数インスタンス 許可されません。
有効なファイル名。
[AIX][HP-UX][Linux][Solaris][z/OS]

SSLCachePath ディレクティブ

SSLCachePath ディレクティブは、セッション ID キャッシング・デーモンへのパスを指定します。 複数の IHS インスタンスが複数の ServerRoot パラメーターまたは -d パラメーターを使用して 1 つのインストール済み環境を共有していない限り、 このディレクティブを指定する必要はありません。

前述のように代替のサーバー・ルートで複数の IHS インスタンスを使用している場合は、 このディレクティブを使用して、この IHS インスタンスが、デフォルトで使用される別々のサーバー・ルートではなく、 単一のインストール・ルートの bin/sidd バイナリーのパスを指すようにしてください。

複数のインスタンスが使用されている場合に、bin/sidd バイナリーをあちらこちらにコピーしたり、 このディレクティブで、サーバー・ルートにインストールされている bin/sidd 以外のものを指定したりする実用的な理由はありません。 同じバイナリーを共有する IHS インスタンス間で、このディレクティブの値を変える必要はありません。

名前 説明
構文 SSLCachePath /usr/HTTPServer/bin/sidd
有効範囲 仮想ホスト外部でのサーバー構成
デフォルト <server-root>/bin/sidd
モジュール mod_ibm_ssl
構成ファイル内の複数インスタンス 許可されません。
有効なパス名。
[AIX][HP-UX][Linux][Solaris][z/OS]

SSLCachePortFilename ディレクティブ

SSLCachePortFilename ディレクティブは、 サーバー・インスタンスとセッション ID キャッシュ・デーモンとの通信に使用される UNIX ドメイン・ソケットのファイル名を設定します。同一インストール・ディレクトリーから IBM HTTP Server の 2 つのインスタンスを実行し、それらのインスタンスがともに SSL 用に構成されている場合、このディレクティブを設定する必要があります。 それ以外の場合、このディレクティブを設定する必要はありません。
名前 説明
構文 SSLCachePortFilename /usr/HTTPServer/logs/siddport
有効範囲 仮想ホスト外部でのサーバー構成
デフォルト このディレクティブが指定されないで、キャッシュが使用可能である場合、 サーバーは <server-root>/logs/siddport ファイルの使用を試行します。
  • AIX® の場合、デフォルトは /usr/HTTPServer/logs/siddport です。
  • Solaris の場合、デフォルトは /opt/IBMHTTPD/logs/siddport です。
  • Windows NT では無効です。
モジュール mod_ibm_ssl
構成ファイル内の複数インスタンス 許可されません。
有効なパス名。 Web サーバーは、始動時にこのファイルを削除します。既存のファイル名を使用しないでください。
[AIX][HP-UX][Linux][Solaris][z/OS]

SSLCacheTraceLog ディレクティブ

SSLCacheTraceLog ディレクティブは、セッション ID トレース・メッセージが書き込まれるファイルを指定します。 このディレクティブがないと、トレースは使用不可になります。
名前 説明
構文 SSLCacheTraceLog /usr/HTTPServer/logs/sidd-trace.log
有効範囲 仮想ホスト外部でのサーバー構成
デフォルト なし。
モジュール mod_ibm_ssl
構成ファイル内の複数インスタンス 許可されません。
有効なパス名。

SSLCipherBan ディレクティブ

SSLCipherBan ディレクティブは、指定された暗号の 1 つを使用して クライアントが接続した場合、オブジェクトへのアクセスを拒否します。 この要求は、状況コード 403 で失敗します。
重要: このディレクティブは、子ディレクトリーを指定する際に、親ディレクトリー用に指定されたディレクティブをオーバーライドしません。 代わりに、両方のディレクトリーが子ディレクトリーに適用されます。
名前 説明
構文 SSLCipherBan <cipher_specification>
有効範囲 ディレクトリー・スタンザごとに複数インスタンス。
デフォルト なし。
モジュール mod_ibm_ssl
構成ファイル内の複数インスタンス ディレクトリー・スタンザごとに許可されます。 優先順序は、上部から下部への順序です。
値については、SSL 暗号仕様のトピックを参照してください。

SSLCipherRequire ディレクティブ

SSLCipherRequire ディレクティブは、指定された暗号の 1 つを使用して接続したクライアントに対してオブジェクトへのアクセスを制限します。 アクセスが拒否されると、この要求は「403」の状況コードで失敗します。
重要: このディレクティブは、子ディレクトリーを指定する際に、親ディレクトリー用に指定されたディレクティブをオーバーライドしません。 代わりに、両方のディレクトリーが子ディレクトリーに適用されます。
名前 説明
構文 SSLCipherRequire <cipher_specification>
有効範囲 ディレクトリー・スタンザごとに複数インスタンス。
デフォルト なし。
モジュール mod_ibm_ssl
構成ファイル内の複数インスタンス ディレクトリー・スタンザごとに許可されます。
値については、SSL 暗号仕様のトピックを参照してください。

SSLCipherSpec ディレクティブ

SSLCipherSpec ディレクティブを使用して、ハンドシェーク時にサポートされる SSL 暗号をカスタマイズできます。SSL 暗号のセットおよび優先順位をカスタマイズできます。

[AIX Solaris HP-UX Linux Windows]分散プラットフォームでは、各プロトコルは順序付けられた暗号のリストを独自に持っています。サポートされるプロトコルは SSL バージョン 2、SSL バージョン 3、TLS バージョン 1.0、TLS バージョン 1.1、および TLS バージョン 1.2 です。

[z/OS]z/OS では、使用可能な暗号のリストは SSL バージョン 2 用と他のプロトコル用の 2 つのみです。サポートされるプロトコルは SSL バージョン 2、SSL バージョン 3、および TLS バージョン 1.0 です。

SSL Version 2 の暗号はデフォルトで暗号なしに設定されます。これはプロトコルが使用不可に設定されていることを意味します。 他のプロトコルはデフォルトで一連の SSL 暗号 (Null 暗号、エクスポート暗号、および強度の低い暗号を除く) に設定されます。

単一引数形式の SSLCipherSpec を使用すると、指定された暗号はその暗号が有効なすべてのプロトコルで使用可能になります。そのような変更が各プロトコルに対して初めて行われた際、プロトコルのデフォルト暗号は破棄されます。

複数引数形式の SSLCipherSpec を使用し、最初の引数として SSL プロトコル名 (または「ALL」) を指定すると、以下のメリットを備えた拡張構文を使用できます。

  • SSLCipherSpec のオカレンスごとに複数の暗号をリストすることができます。
  • 暗号の名前の前に「-」を付けることにより、現在使用可能に設定されている暗号のセットから個々の暗号を削除できます。
  • 指定したプロトコルの暗号リストを初めて変更する際、暗号名の前に「+」を付けることにより、デフォルトの暗号を置き換えずに指定した暗号をデフォルトの暗号の最後尾に追加することができます。

プロトコル名に「ALL」を指定し、各暗号名に関して追加または削除を指定すると、その暗号が有効な各プロトコルに適用されます。

特殊なケースとして、SSLCipherSpec ALL NONE を使用して、すべての暗号リストの内容を単一のコマンドで削除できます。デフォルトの暗号を使用したくない場合は常に、構成を開始する際にこのコマンドを使用することをお勧めします。

名前 説明
[z/OS]構文 [z/OS]SSLCipherSpec short name or SSLCipherSpec long name
[AIX Solaris HP-UX Linux Windows]構文 [AIX Solaris HP-UX Linux Windows]SSLCipherSpec [protocol_name] [+|-]short name|long name [[+|-]short name|long name ...]
有効範囲 サーバー構成、仮想ホスト
デフォルト 何も指定されない場合、サーバーは使用可能なすべての暗号仕様 (Null 暗号、エクスポート暗号、および強度の低い暗号を除く) を使用します。
モジュール mod_ibm_ssl
構成ファイル内の複数インスタンス 許可されます。 優先順序は、上部から下部へ、最初から最後への順序です。
[AIX Solaris HP-UX Linux Windows]分散プラットフォーム上のプロトコル名の値 [AIX Solaris HP-UX Linux Windows]SSLv2、SSLv3、TLSv10、TLSv11、TLSv12、ALL
[z/OS]z/OS 上のプロトコル名の値 [z/OS]SSLv2、SSLv3、TLSv10、ALL
暗号名の値 値については、SSL 暗号仕様のトピックを参照してください。
例 1
ごく一部の暗号のみを選択したい場合、以下のように、最初にすべての暗号リストをリセットしてから使用したい暗号を追加することをお勧めします。
# Delete all
ciphers from the cipher lists SSLCipherSpec ALL NONE 
# Add a few specific ciphers SSLCipherSpec ALL 
   +SSL_RSA_WITH_3DES_EDE_CBC_SHA SSLCipherSpec
ALL +TLS_RSA_WITH_AES_256_CBC_SHA 
例 2 デフォルトの大部分を使用したいが、使用したくない暗号が 1 つか 2 つある場合、以下のように、それらが含まれる任意のリストから使用したくない暗号を削除できます。
# Delete some specific ciphers from the protocols 
where they are valid 
SSLCipherSpec ALL -SSL_RSA_WITH_RC4_128_MD5
SSLCipherSpec ALL -SSL_RSA_WITH_RC4_128_SHA 

SSLClientAuth ディレクティブ

SSLClientAuth ディレクティブは、 使用するクライアント認証のモード (なし (0)、オプション (1)、または必須 (2)) を設定します。
名前 説明
構文 SSLClientAuth <level required> [crl]
有効範囲 仮想ホスト。
デフォルト SSLClientAuth none
モジュール mod_ibm_ssl
構成ファイル内の複数インスタンス 仮想ホストごとに 1 つのインスタンス。
  • 0/None: クライアント証明書は要求されていません。
  • 1/Optional: クライアント証明書は要求されていますが、必要ではありません。
  • 2/Required: 有効なクライアント証明書が必要です。
  • Required_reset: サーバーはすべてのクライアントから有効な証明書を要求します。使用可能な証明書がない場合、サーバーはクライアントに SSL アラートを送信します。このアラートにより、クライアントは SSL の障害がクライアント証明書に関するものであることを理解します。またブラウザーは以降のアクセスに関するクライアント証明書情報を求めて再度プロンプトを出します。このオプションには GSKit バージョン 7.0.4.19 以降、または z/OS V1R8 以降が必要です。
    重要: 既存のオプション形式とは異なり、数値のオプションは提供されません。
  • CRL: SSL 仮想ホスト内で証明書失効リスト (CRL) をオン/オフにします。CRL を使用する場合、SSLClientAuth の 2 番目の引数として crl を指定する必要があります。例えば、SSLClientAuth 2 crl のようにします。 crl を指定しなければ、SSL 仮想ホスト内で CRL を実行することができません。
  • noverify: クライアントが提供する証明書が検証に失敗した場合 (証明書の有効期限が切れている、または取り消されているなど) にでも、SSL ハンドシェークを成功させて接続を確立できるようにします。このディレクティブとともに SSLClientAuthVerify を使用して、デフォルトのブラウザー・エラー・メッセージの代わりに分かりやすい Web ページを提供してください。このオプションは Optional とともにのみ有効です。無効なクライアント証明書による接続で受信した要求を失敗させるには、SSLClientAuthVerify を使用します。

0/None を指定すると、CRL オプションを使用できません。

Required_reset サーバーはすべてのクライアントに対して有効な証明書を要求し、使用可能な証明書がない場合は SSL の警告をクライアントに送信します。これにより、クライアントは SSL の障害がクライアント証明書に関するものであることを理解します。またブラウザーは以降のアクセスに関するクライアント証明書情報を求めて再度プロンプトを出します。このオプションには GSKit バージョン 7.0.4.19 以降、または z/OS V1R8 以降が必要です。
トラブルの回避 (Avoid trouble) トラブルの回避 (Avoid trouble): 場合によっては、失効データのソースであるバックエンド・サーバーが使用不可であるために、IBM HTTP Server はクライアント認証の失効状況を確認できない可能性があります。 以下のことに留意してください。
  • 静的 CRL リポジトリー (SSLCRLHost) は、CRLDistributionPoint フィールドで他の URI 形式の検査を可能にするように構成する必要があります。
  • 証明書が CertificateDistributionPoint または AIA の拡張機能の LDAP または HTTP の URI 形式を使用する場合は必ず、IBM HTTP Server システムがこのタイプの出力接続を確立できるようにしてください。ファイアウォールの設定を調整する必要があります。
  • [AIX Solaris HP-UX Linux Windows]SSLUnknownRevocationStatus ディレクティブは、バックエンド・サーバーとの通信中に IBM HTTP Server にリカバリー可能エラーが発生し、IBM HTTP Server が証明書の失効状況を確認できない場合に備えて提供されています。デフォルト動作では、バックエンド・サーバーが証明書の失効を正常に示すことができるまで、ハンドシェーク処理を続行します。
  • [z/OS]明示的に構成された LDAP サーバー のみで CRL の照会を行うことができます。また、バックエンド・サーバーと接続できない場合、 SSL ハンドシェークを行うことはできません。
gotcha

SSLClientAuthGroup ディレクティブ

SSLClientAuthGroup ディレクティブでは、 特定のクライアント証明書の属性および値のペアのセットを含む名前付き式グループを定義します。 この名前付きグループは、SSLClientAuthRequire ディレクティブが使用できます。 証明書は、サーバーが保護されたリソースへのアクセスを許可する前に、 クライアント (この式を渡す) によって提供される必要があります。

名前 説明
構文 SSLClientAuthGroup グループ名 属性表現
有効範囲 サーバー構成、仮想ホスト
デフォルト なし。
モジュール mod_ibm_ssl
構成ファイル内の複数インスタンス 許可されます。
オーバーライド なし。
AND、OR、NOT、および括弧を用いてリンクされた属性検査で構成された論理式。以下に例を示します。
SSLClientAuthGroup IBMUSpeople (Org = IBM) AND (Country = US)

次のセクションでは、 有効な論理式を用いた例の説明を提供します。 例えば、SSLClientAuthGroup ((CommonName = "Fred Smith") OR (CommonName = "John Deere")) AND (Org = IBM) は、クライアント証明書に Fred Smith または John Deere のいずれかの共通名を含み、組織が IBM でない限り、そのオブジェクトはサービスを提供されないということを意味します。属性検査のための唯一の有効な比較は、「等しい」および「等しくない」(= および !=) です。 各属性検査を AND、OR、 または NOT (さらに &&、||、および !) を用いてリンクすることができます . AND、OR、または NOT で関連付けた比較はいずれも括弧で囲む必要があります。属性の値に非英数字が含まれる場合、 値を引用符で区切る必要があります。

以下のリストは、このディレクティブに指定できる属性値を示しています。
表 1. SSLClientAuthGroup ディレクティブに関する属性値. 以下の表に、各属性値をロング・ネームとショート・ネームでリストします。
ロング・ネーム ショート・ネーム
CommonName CN
C
Email E
IssuerCommonName ICN
IssuerEmail IE
IssuerLocality IL
IssuerOrg IO
IssuerOrgUnit IOU
IssuerPostalCode IPC
IssuerStateOrProvince IST
場所 L
Org O
OrgUnit OU
PostalCode PC
StateOrProvince ST

ロング・ネームまたはショート・ネームは、このディレクティブで使用できます。

ユーザーは、特定クライアント証明書の属性の論理式を指定します。 クライアント証明書の属性値のグループを指定する必要がある場合は、複数の式に対して AND、OR、または NOT を論理的に使用します。AND、OR、または NOT で関連付けた比較はいずれも括弧で囲む必要があります。有効な演算子には、「=」と「!=」があります。以下に例を示します。
SSLClientAuthGroup IBMpeople Org = IBM)
または
SSLClientAuthGroup
NotMNIBM (ST != MN) && (Org = IBM) 

グループ名には、スペースを入れることはできません。詳細については、SSLClientAuthRequire ディレクティブを参照してください。

SSLClientAuthRequire ディレクティブ

SSLClientAuthRequire ディレクティブでは、 サーバーが保護リソースへのアクセスを許可する前に、属性値、または属性値のグループを指定します。これらは、クライアント証明書に対して検証される必要があります。

名前 説明
構文 SSLClientAuthRequire 属性表現
有効範囲 サーバー構成、仮想ホスト
デフォルト なし。
モジュール mod_ibm_ssl
構成ファイル内の複数インスタンス 許可されます。 この関数は、これらのディレクティブを「AND」で結合します。
オーバーライド AuthConfig
AND、OR、NOT、および括弧を用いてリンクされた属性検査で構成された論理式。以下に例を示します。
SSLClientAuthRequire (group != IBMpeople)
 && (ST = M)

受け取った証明書に特定の属性がない場合は、 属性の一致に対する検証がありません。指定された一致する値が " "でも、属性がまったくない場合と同じであるとはかぎりません。SSLClientAuthRequire ディレクティブで指定された属性はすべて、 証明書で利用できません。要求が拒否される原因となります。

以下のリストは、このディレクティブに指定できる属性値を示しています。
表 2. SSLClientAuthRequire ディレクティブに関する属性値. 以下の表に、各属性値をロング・ネームとショート・ネームでリストします。
ロング・ネーム ショート・ネーム
CommonName CN
C
Email E
IssuerCommonName ICN
IssuerEmail IE
IssuerLocality IL
IssuerOrg IO
IssuerOrgUnit IOU
IssuerPostalCode IPC
IssuerStateOrProvince IST
場所 L
Org O
OrgUnit OU
PostalCode PC
StateOrProvince ST

ロング・ネームまたはショート・ネームは、このディレクティブで使用できます。

ユーザーは、特定クライアント証明書の属性の論理式を指定します。 クライアント証明書の属性値のグループを指定する必要がある場合は、複数の式に対して AND、OR、または NOT を論理的に使用します。AND、OR、または NOT で関連付けた比較はいずれも括弧で囲む必要があります。有効な演算子には、「=」と「!=」があります。また、 ユーザーは、属性のグループを構成するために、グループ名を指定することもできます。 このグループ名は、 SSLClientAuthGroup ディレクティブを使用して構成します。

同じスコープ内で、複数の SSLClientAuthRequire ディレクティブを指定できます。 各ディレクティブの論理式は、証明書別にアクセス権の評価に使用され、個々の評価の結果は論理的に AND で結ばれます。 以下に例を示します。
SSLClientAuthRequire((CommonName="John Doe") || (StateOrProvince=MN)) && (Org !=IBM)  
または
SSLClientAuthRequire(group!=IBMpeople) && (ST=MN)
ショート・ネームとロング・ネームは、引用符で囲むことができます。以下に例を示します。
SSLClientAuthRequire (group != IBMpeople) && ("ST= MN")
詳しくは、SSLClientAuthGroup ディレクティブを参照してください。

SSLClientAuthVerify ディレクティブ

SSLClientAuthVerify ディレクティブは、クライアント証明書を受信したがその検証に失敗した場合 (有効期限が切れている、または取り消されているなど) に、IBM HTTP Server が要求を失敗させるかどうかを制御します。

名前 説明
構文 SSLClientAuthVerify statuscode|OFF
有効範囲 グローバル・サーバーまたは仮想ホスト。
デフォルト 500
モジュール mod_ibm_ssl
構成ファイル内の複数インスタンス ディレクトリー・スタンザごとに 1 つのインスタンス。
HTTP 応答状況コード、または OFF

このディレクティブは、SSLClientAuth Optional Noverify とともに使用して、デフォルトのブラウザー・エラー・メッセージの代わりに分かりやすい Web ページを提供します。

仮想ホストを SSLClientAuth Optional Noverify で構成する場合、クライアント証明書を受信したがその検証に失敗した場合 (有効期限が切れている、または取り消されているなど)、SSL 接続は確立されます。

その接続で受信した要求を特定のエラー・コードで失敗させるために、このディレクティブを Location または Directory などのコンテキストで使用します。OFF を設定すると通常に処理されます。

その状況に関するカスタムのエラー文書を提供することにより、管理者はユーザーに提示するページを制御することができます。例えばユーザーに対して証明書が無効であることを伝え、詳しい指示を与えることができます。

また、エラー文書が同じ仮想ホスト内の別の URL への内部リダイレクトである場合は、それが即座に失敗しないように、URL は必ずそのコンテキスト内に SSLClientAuthVerify OFF を持つ必要があります。以下に、このシナリオの例を示します。

指定される状況コードは、HTTP で有効であるとともに IBM HTTP Server に知られている応答状況である必要があります。値は 100 から 599 の間で、一般に RFC または標準提案で定義されています。不確かな場合は、状況コードをテスト構成で試行し、apachectl -t を使用してその状況コードが有効かどうかを確認してください。使われていないコードで有効かつ適切な選択肢としては他に、418、419、420、および 421 があります。

クライアント証明書が無効であったため、エラー文書はクライアント証明書についての情報を含む環境変数をいずれも利用できません。クライアント証明書の検証が失敗した原因は、SSL_LAST_VALIDATION_ERROR の環境変数で入手できます。変数は GSKVAL_ERROR_REVOKED_CERT または GSKVAL_ERROR_CERT_EXPIRED になります。証明書に複数の検証問題がある場合、報告される原因は多くの場合 GSKVAL_ERROR_CA_MISSING_CRITICAL_BASIC_CONSTRAINT です。

クライアント証明書の検証が失敗するたびに、2 つのメッセージが loglevel Error でエラー・ログに記録されます。 2 番目のメッセージに原因が含まれます。以下に例を示します。

[Tue Jun 08 08:54:25 2010] [error] [client 9.37.243.128] [9e44c28] [731] SSL0208E: SSL Handshake Failed, 
   Certificate validation error. [9.37.243.128:60347 -> 9.37.243.67:443] [08:54:25.000223331]
[Tue Jun 08 08:54:25 2010] [error] [client 9.37.243.128] [9e44c28] [731] Certificate validation error 
   during handshake, last PKIX/RFC3280 certificate validation error was 
   GSKVAL_ERROR_CA_MISSING_CRITICAL_BASIC_CONSTRAINT 
   [9.37.243.128:60347 -> 9.37.243.67:443] [08:54:25.000223331]
以下は構成例です。
<VirtualHost *:443
SSLClientAuth Optional Noverify
<Location />
SSLClientAuthVerify 419
</Location>
ErrorDocument 419 /error419.html
<Location /error419.html>
SSLClientAuthVerify OFF
</Location>
</VirtualHost>

SSLCRLHostname ディレクティブ (非推奨)

SSLCRLHostname ディレクティブは、 TCP/IP 名、または証明書失効リスト (CRL) のデータベースが存在している LDAP サーバーのアドレスを指定します。

名前 説明
構文 <SSLCRLHostName <TCP/IP name or address>
有効範囲 グローバル・サーバーまたは仮想ホスト。
デフォルト デフォルトで使用不可です。
モジュール mod_ibm_ssl
構成ファイル内の複数インスタンス 仮想ホストおよびグローバル・サーバーごとに 1 つのインスタンス。
TCP/IP 名、または LDAP サーバーのアドレス

LDAP-based CRL リポジトリーを静的に構成するには、SSLCRLHostname ディレクティブを SSLCRLPort ディレクティブ、SSLCRLUserID ディレクティブ、および SSLStashfile ディレクティブと共に使用します。 明示的 CRLDistributionPoint X.509v3 証明書の拡張子がないか、または拡張子で指定されたサーバーが応答しない (使用不可) 場合にのみ、LDAP-based CRL リポジトリーを照会するために、これらのディレクティブを使用することが必要です。

CRLDistributionPoint 拡張子が証明書にあり、拡張子で指定されたサーバーが反応する (使用可能な) 場合、CRLDistributionPoint で指定された LDAP サーバーはこれらのディレクティブを使用せずに匿名で照会されます。

SSLCRLPort ディレクティブ (非推奨)

SSLCRLPort ディレクティブは、証明書失効リスト (CRL) のデータベースがある場合、LDAP サーバーのポートを指定します。

名前 説明
構文 SSLCRL<port>
有効範囲 グローバル・サーバーまたは仮想ホスト。
デフォルト デフォルトで使用不可です。
モジュール mod_ibm_ssl
構成ファイル内の複数インスタンス 仮想ホストおよびグローバル・サーバーごとに 1 つのインスタンス。
LDAP サーバーのポート。デフォルトは 389 です。

LDAP-based CRL リポジトリーを静的に構成するには、SSLCRLPort ディレクティブを SSLCRLUserID ディレクティブ、SSLCRLHostname ディレクティブ、および SSLStashfile ディレクティブと共に使用します。 明示的 CRLDistributionPoint X.509v3 証明書の拡張子がないか、または拡張子で指定されたサーバーが応答しない (使用不可) 場合にのみ、LDAP-based CRL リポジトリーを照会するために、これらのディレクティブを使用することが必要です。

CRLDistributionPoint 拡張子が証明書にあり、拡張子で指定されたサーバーが反応する (使用可能な) 場合、CRLDistributionPoint で指定された LDAP サーバーはこれらのディレクティブを使用せずに匿名で照会されます。

SSLCRLUserID ディレクティブ (非推奨)

SSLCRLUserID ディレクティブは、 証明書失効リスト (CRL) のデータベースがある LDAP サーバーへ送信するユーザー ID を指定します。

名前 説明
構文 SSLCRLUserID <[prompt] <userid>
有効範囲 グローバル・サーバーまたは仮想ホスト。
デフォルト ユーザー ID を指定しないと、 デフォルトで anonymous に設定されます。
モジュール mod_ibm_ssl
構成ファイル内の複数インスタンス 仮想ホストおよびグローバル・サーバーごとに 1 つのインスタンス。
LDAP サーバーのユーザー ID。 プロンプト・オプションを使用して、LDAP サーバーにアクセスするためのパスワードを求めるプロンプトが HTTP サーバーによって始動時に出されるようにします。

LDAP-based CRL リポジトリーを静的に構成するには、SSLCRLUserID ディレクティブを SSLCRLPort ディレクティブ、SSLCRLHostname ディレクティブ、および SSLStashfile ディレクティブと共に使用します。 明示的 CRLDistributionPoint X.509v3 証明書の拡張子がないか、または拡張子で指定されたサーバーが応答しない (使用不可) 場合にのみ、LDAP-based CRL リポジトリーを照会するために、これらのディレクティブを使用することが必要です。

CRLDistributionPoint 拡張子が証明書にあり、拡張子で指定されたサーバーが反応する (使用可能な) 場合、CRLDistributionPoint で指定された LDAP サーバーはこれらのディレクティブを使用せずに匿名で照会されます。

SSLDisable ディレクティブ

SSLDisable ディレクティブは、 仮想ホストの SSL を使用不可にします。
名前 説明
構文 SSLDisable
有効範囲 グローバル・サーバーまたは仮想ホスト。
デフォルト デフォルトで使用不可です。
モジュール mod_ibm_ssl
構成ファイル内の複数インスタンス 仮想ホストおよびグローバル・サーバーごとに 1 つのインスタンス。
なし。

SSLEnable ディレクティブ

SSLEnable ディレクティブは、 仮想ホストの SSL を使用可能にします。
重要: ディレクティブを指定された仮想ホスト構成に自動的にコピーさせない場合は、このディレクティブを基本サーバー構成で指定しないでください。
名前 説明
構文 SSLEnable
有効範囲 グローバル・サーバーまたは仮想ホスト。
デフォルト デフォルトで使用不可です。
モジュール mod_ibm_ssl
構成ファイル内の複数インスタンス 仮想ホストおよびグローバル・サーバーごとに 1 つのインスタンス。
なし。

SSLFakeBasicAuth ディレクティブ

SSLFakeBasicAuth ディレクティブは、 偽の基本認証のサポートを使用可能にします。

このサポートにより、クライアント証明書の識別名がユーザーおよびパスワード基本認証ペアのユーザ ー部分となることができます。 password をパスワードとして使用します。
重要: このディレクティブは、基本サーバー構成によりオーバーライドされる可能性があります。
名前 説明
構文 SSLFakeBasicAuth
有効範囲 AuthName、AuthType、および必要なディレクティブと共に使用されるディレクトリー・スタンザ内。
デフォルト なし。
モジュール mod_ibm_ssl
構成ファイル内の複数インスタンス ディレクトリー・スタンザごとに 1 つのインスタンス。
なし。
[AIX Solaris HP-UX Linux Windows]

SSLFIPSDisable ディレクティブ

SSLFIPSDisable ディレクティブは、 連邦情報処理標準 (FIPS) を使用不可にします。
名前 説明
構文 SSLFIPSDisable
有効範囲 仮想およびグローバル。
デフォルト デフォルトで使用不可です。
モジュール mod_ibm_ssl
構成ファイル内の複数インスタンス 仮想ホストおよびグローバル・サーバーごとに 1 つのインスタンス。
なし。

SSLFIPSEnable ディレクティブ

SSLFIPSEnable ディレクティブは、 連邦情報処理標準 (FIPS) を使用可能にします。

このディレクティブは、分散プラットフォームに適用可能です。

トラブルの回避 (Avoid trouble) トラブルの回避 (Avoid trouble): このディレクティブは z/OS プラットフォームでサポートされますが、以下の制限があります。
  • ディレクティブはグローバル有効範囲でのみ有効です。
  • ディレクティブの値を変更した場合は、新しい値を有効にするために、IBM HTTP Server を停止してから始動する必要があります。再始動した場合、新しい値は有効になりません。
gotcha
名前 説明
構文 SSLFIPSEnable
有効範囲 仮想およびグローバル。
デフォルト デフォルトで使用不可です。
モジュール mod_ibm_ssl
構成ファイル内の複数インスタンス 仮想ホストおよびグローバル・サーバーごとに 1 つのインスタンス。
なし。
重要: 値については、SSL 暗号仕様のトピックを参照してください。

SSLInsecureRenegotiation ディレクティブ

SSLInsecureRenegotiation ディレクティブは、安全でない (RFC5746 以前の) SSL 再ネゴシエーションを許可するかどうかを指定します。SSL 再ネゴシエーションはいずれの種類も一般的ではなく、このディレクティブはデフォルト値の off から変更すべきではありません。

[AIX Solaris HP-UX Linux Windows]
重要: V8.0.0.1 より前のバージョンでは、サーバーは RFC5746 をサポートし、セキュア再ネゴシエーション要求を受け入れます。 V8.0.0.1 以降では、セキュア再ネゴシエーション要求を受け入れるためには、まず SSLRenegotiation ディレクティブを使用可能にする必要があります。

on を指定した場合、安全でない SSL 再ネゴシエーションが許可されます。off を指定した場合 (デフォルト)、安全でない SSL 再ネゴシエーションは許可されません。

名前 説明
構文 SSLInsecureRenogotiation directive on|off
有効範囲 仮想ホスト
デフォルト off
モジュール mod_ibm_ssl
構成ファイル内の複数インスタンス 仮想ホストおよびグローバル・サーバーごとに 1 つのインスタンス。
on|off
[AIX Solaris HP-UX Linux Windows]

SSLPKCSDriver ディレクティブ

SSLPKCSDriver ディレクティブは、 モジュールに対する完全修飾名、 または PKCS11 デバイスへのアクセスに使用されるドライバーを識別します。

名前 説明
構文 SSLPKCSDriver <PKCS11 デバイスへのアクセスに使用するモジュールの完全修飾名>。モジュールがユーザーのパス内に存在する場合は、 そのモジュールの名前のみを指定します。
有効範囲 グローバル・サーバーまたは仮想ホスト。
デフォルト なし。
モジュール mod_ibm_ssl
構成ファイル内の複数インスタンス 仮想ホストおよびグローバル・サーバーごとに 1 つのインスタンス。
PKCS11 モジュールまたはドライバーのパスと名前。
各 PKCS11 デバイスのモジュールのデフォルト・ロケーションは、以下のとおりです。
  • nCipher
    • AIX: /opt/nfast/toolkits/pkcs11/libcknfast.so
    • HP: /opt/nfast/toolkits/pkcs11/libcknfast.sl
    • Solaris: /opt/nfast/toolkits/pkcs11/libcknfast.so
    • Windows: c:¥nfast¥toolkits¥pkcs11¥cknfast.dll
  • IBM 4758
    • AIX: /usr/lib/pkcs11/PKCS11_API.so
    • Windows: $PKCS11_HOME¥bin¥nt¥cryptoki.dll
  • IBM e-business Cryptographic Accelerator
    • AIX: /usr/lib/pkcs11/PKCS11_API.so

SSLProtocolDisable ディレクティブ

SSLProtocolDisable ディレクティブを使用して、特定の仮想ホストに関してクライアントが使用できない SSL プロトコルを 1 つ以上指定することができます。 このディレクティブは、<VirtualHost> コンテナーに存在している必要があります。

仮想ホスト用にサポートされたプロトコルは、別個にサポートされます。 サポートされたプロトコルがすべて使用不可の場合、クライアントは SSL ハンドシェークを完了することができません。
名前 説明
構文 SSLProtocolDisable <protocolname>
有効範囲 仮想ホスト
デフォルト 使用不可
重要: SSL バージョン 2 プロトコルは、他の手段によりデフォルトで使用不可に設定されています。
モジュール mod_ibm_ssl
構成ファイル内の複数インスタンス 仮想ホストごとに複数のインスタンスが許可されています。
以下の値は、このディレクティブに使用できます。
  • SSLv2
  • SSLv3
  • TLS
  • TLSv1
  • [AIX Solaris HP-UX Linux Windows]TLSv1.1
  • [AIX Solaris HP-UX Linux Windows]TLSv1.2

TLS は、すべての TLS バージョンを使用不可にします。

TLSv1 は、TLS バージョン 1.0 を使用不可にします。

[AIX Solaris HP-UX Linux Windows]TLSv1.1 は、TLS バージョン 1.1 を使用不可にします。

[AIX Solaris HP-UX Linux Windows]TLSv1.2 は、TLS バージョン 1.2 を使用不可にします。

以下の例では、仮想ホスト上で複数のプロトコルを使用不可にしています。
<VirtualHost	*:443> SSLEnable SSLProtocolDisable	SSLv2
SSLv3 (any other directives) </VirtualHost>
重要: クライアントおよびサーバーが、少なくとも 1 つのプロトコルと暗号の組み合わせを共有しない場合、SSL0230I は各 SSL 接続の試行としてログされます。

SSLProtocolEnable ディレクティブ

SSLProtocolEnable ディレクティブを使用して、個々の SSL プロトコルを使用可能にすることができます。

[AIX Solaris HP-UX Linux Windows]分散プラットフォームの場合、有用なプロトコルはデフォルトですべて自動的に使用可能になるため、このディレクティブに、それほど有用性はありません。

[z/OS]z/OS の場合、z/OS サービスが TLSv1.1 および TLSv1.2 のサポートを追加した後で、このディレクティブが使用できるようになります。z/OS 上で稼働する IBM HTTP Server 内で、TLSv1.1 および TLSv1.2 プロトコルはデフォルトでは使用可能になりません。

名前 説明
構文 SSLSuiteBMode
有効範囲 仮想ホスト
デフォルト 設定解除
モジュール mod_ibm_ssl
構成ファイル内の複数インスタンス 仮想ホストごとに複数のインスタンスが許可されています。

SSLProxyEngine ディレクティブ

SSLProxyEngine は、サーバーがプロキシー接続に SSL を使用するかどうかを設定します。 SSLProxyEngine on は、 ご使用のサーバーが SSL リソースにリバース・プロキシーとして機能している場合には必須です。
名前 説明
構文 SSLProxyEngine on|off
有効範囲 IP ベースの仮想ホスト。
デフォルト Off
モジュール mod_ibm_ssl
構成ファイル内の複数インスタンス 仮想ホストおよびグローバル・サーバーごとに 1 つ
on|off

SSLRenegotiation ディレクティブ

SSLRenegotiation ディレクティブは、Transport Layer Security (TLS) 再ネゴシエーションの、IBM HTTP Server のサポートを制御します。このディレクティブは、IBM HTTP Server が許可する TLS 再ネゴシエーションのタイプを制御します。TLS 再ネゴシエーションは、クライアントが既存のセキュア接続に新しい SSL ハンドシェークを開始する方法です。通常のブラウザー・ベースのクライアントがこれを使用することはほとんどありません。
名前 説明
構文 SSLRenegotiation on|off|LEGACY_AND_RFC5746
デフォルト Off
モジュール mod_ibm_ssl
Context 仮想ホスト
状況 拡張
on|off|LEGACY_AND_RFC5746
OFF (デフォルト)
再ネゴシエーションが許可されていません。
ON
RFC5746 で現在定義されているように、セキュア再ネゴシエーションが許可されています。
LEGACY_AND_RFC5746
セキュア再ネゴシエーションと既存の安全でない再ネゴシエーションの両方が許可されています。
互換性
  • このディレクティブは、IBM HTTP Server 8.0 以降では SSLInsecureRenegotiation ディレクティブに優先します。
  • IBM HTTP Server 8.0.0.0 はデフォルトで ON に設定されます (RFC5746 再ネゴシエーションを受け入れます)。
  • 7.0.0.21 より前では、バンドルされた GSKit セキュリティー・ライブラリーは RFC5746 を認識しておらず、既存の安全でない再ネゴシエーションを参照して ON に設定されていました。
  • LEGACY_AND_RFC5746 オプションのサポートの有無は、IBM HTTP Server 7.0.0.21 以降であるかどうかによります。

SSLServerCert ディレクティブ

SSLServerCert ディレクティブは、 この仮想ホストで使用するサーバー証明書を設定します。
名前 説明
構文 SSLServerCert [prompt] certificate_labelSSLServerCert [prompt|ecdsa_certificate_label]certificate_label
有効範囲 IP ベースの仮想ホスト。
デフォルト None。ただし、SSL 鍵ストアには、デフォルト証明書についての独自の概念があります。
モジュール mod_ibm_ssl
構成ファイル内の複数インスタンス 仮想ホストおよびグローバル・サーバーごとに 1 つのインスタンス。
証明書ラベル。 /prompt オプションを使用して、 Crypto トークン・パスワードを求めるプロンプトが HTTP サーバーによって始動時に出されるようにします。 証明書ラベルの周囲では、区切り文字を使用しないでください。 ラベルが 1 行に収められていることを確認してください。 先行および後続の空白は無視されます。
各 SSL 鍵ストア keyfile は、デフォルト証明書を指定する可能性があります。このディレクティブは、鍵ストアのデフォルト以外の証明書を使用するようにサーバーを構成します。
  • デフォルト以外の証明書ラベルを選択するには、希望する証明書のラベルが値である単一パラメーターを指定します。
  • 暗号トークンを使用するには、コロンで区切った暗号トークン名と証明書ラベル (mytoken:mylabel) を指定します。オプションで、SSLStashFile を使用する代わりに、最初のパラメーターとして /prompt を指定して、暗号トークンのパスワードの入力を求めるプロンプトを対話式に出します。
  • ECDSA と RSA ベースの両方の証明書を構成するには、スペースで区切って 2 つの証明書ラベルを指定します。デフォルトでは RSA 証明書が使用されますが、TLS1.2 以上をサポートするクライアントは、ハンドシェーク中に ECDSA 証明書を要求する可能性があります。
SSLServerCert ディレクティブの例を以下に示します。
SSLServerCert example.com
SSLServerCert myRSA, myECDSA
SSLServerCert swtoken:cert1
重要: PKCS11 アクセラレーターを使用する場合は、 PKCS11 トークンの名前と区切り文字のコロン 「:」をラベルの前に付けます。

SSLSNIMap

SSLSNIMap ディレクティブは、TLS Server Name Indication (SNI) ホスト名を証明書ラベルにマップします。

名前 説明
構文 SSLSNIMap hostname cert-label
有効範囲 仮想ホスト
デフォルト 使用不可
モジュール mod_ibm_ssl
構成ファイル内の複数インスタンス 仮想ホストごとに複数
クライアントによって使用されるホスト名と、構成されている KeyFile 内にある証明書ラベル

SSLSNIMap ディレクティブにより、サーバーは、クライアントが要求したホスト名に基づいて、異なる TLS 証明書で応答することができます。名前ベースの仮想ホストが使用された場合、SSLSNIMap は、ip:port の組み合わせの、最初にリストされた仮想ホスト (名前ベースの仮想ホスト・セットのデフォルト仮想ホスト) にのみ存在する必要があります。

SSLStashfile ディレクティブ

SSLStashfile ディレクティブは、PKCS11 デバイスを開くための暗号化されたパスワードを格納しているファイルへのパスをファイル名と共に示します。

名前 説明
構文 SSLStashFile /usr/HTTPServer/mystashfile.sth
有効範囲 仮想ホストおよびグローバル・サーバー。
デフォルト なし。
モジュール mod_ibm_ssl
構成ファイル内の複数インスタンス 仮想ホストおよびグローバル・サーバーごとに 1 つのインスタンス。
sslstash コマンドで作成される LDAP stash ファイルまたは PKCS11 stash ファイル (あるいはその両方) のファイル名。

SSLStashFile は、使用中の KeyFile の stash ファイルを指しません。この stash ファイルは、KeyFile の名前に基づいて自動的に計算され、異なるタイプの stash ファイルだからです。

IBM HTTP Server の bin ディレクトリーにある sslstash コマンドを使用して、CRL または暗号デバイスの stash ファイルを作成します。 sslstash コマンドを使用して指定するパスワードは、LDAP サーバーや暗号ハードウェアにログインする際に使用するパスワードと同じものにする必要があります。

sslstash コマンドが作成する stash ファイルは、よく CMS KeyFile (*.kdb) に付いている stash ファイルとはまったく無関係です。 したがって、以下のことに注意してください。
  • sslstash コマンドの実行時に既存の *.sth ファイルを上書きしない。
  • sslstash コマンドの出力のファイル名として、CMS KeyFile (*.kdb) のファイル名と一致するものを選択しない。

使用法: sslstash [-c] <directory_to_password_file_and_file_name> <function_name> <password>

各部の意味は、次のとおりです。
  • -c: 新規 stash ファイルを作成します。指定しない場合、既存のファイルが更新されます。
  • File: 作成または更新するファイルの完全修飾名を表します。
  • Function: パスワードを使用する関数を示します。 有効な値には、crl または crypto があります。
  • Password: stash へのパスワードを表します。

LDAP-based CRL リポジトリーを静的に構成するには、SSLStashFile ディレクティブを SSLCRLPort ディレクティブ、SSLCRLHostname ディレクティブ、および SSLCRLUserID ディレクティブと共に使用します。 明示的 CRLDistributionPoint X.509v3 証明書の拡張子がないか、または拡張子で指定されたサーバーが応答しない (使用不可) 場合にのみ、LDAP-based CRL リポジトリーを照会するために、これらのディレクティブを使用することが必要です。

CRLDistributionPoint 拡張子が証明書にあり、拡張子で指定されたサーバーが反応する (使用可能な) 場合、CRLDistributionPoint で指定された LDAP サーバーはこれらのディレクティブを使用せずに匿名で照会されます。

SSLSuiteBMode

SSSLSuiteBMode ディレクティブを使用して、それを囲んでいるタグの仮想ホストが TLS に Suite B プロファイルを使用するように構成することができます。

Suite B プロファイルにより、サーバーが使用可能な署名アルゴリズムと暗号の仕様が大幅に削減されます。受け入れ可能なアルゴリズムと暗号のセットは、ある程度の期間が経過すると、関連する標準が変更されるのに伴って変わります。引数の 128 および 192 は、RFC 6460 で説明している 2 つのセキュリティー・レベルをそれぞれ指しています。

このディレクティブを指定すると、直近で指定された SSL ディレクティブがオーバーライドされます。SSLAttributeSet 設定は、このディレクティブより優先度が高いため、このディレクティブによってオーバーライドされません。すべての Suite B プロファイルが、サーバーの証明書チェーンに強力な ECC 署名を使用することを要求しています。RFC 6460 に、Suite B プロファイルの制約事項が文書化されています。

名前 説明
構文 SSLSuiteBMode
有効範囲 仮想ホスト
デフォルト 設定解除
モジュール mod_ibm_ssl
構成ファイル内の複数インスタンス 仮想ホストごとに 1 つ

SSLTrace ディレクティブ

SSLTrace ディレクティブは、 mod_ibm_ssl のデバッグ・ログインを使用可能にします。 LogLevel ディレクティブと一緒に使用します。 mod_ibm_ssl のデバッグ・ログインを使用可能にするには、mod_ibm_ssl に対する LoadModule ディレクティブの後ろで LogLevel をデバッグするように設定し、 SSLTrace ディレクティブを、IBM HTTP Server 構成ファイルのグローバル・スコープに 追加します。このディレクティブが通常使用されるのは、mod_ibm_ssl の問題箇所を 調査している間に、IBM サポートの要求時です。通常の作動状態でこのディレクティブを使用可能にすることは推奨されていません。

名前 説明
構文 SSLTrace
有効範囲 グローバル
デフォルト mod_ibm_ssl のデバッグ・ログインは使用不可になっています
モジュール mod_ibm_ssl
構成ファイル内の複数インスタンス 無視
なし
重要: LogLevel ディレクティブも参照してください。
[AIX Solaris HP-UX Linux Windows]

SSLUnknownRevocationStatus

SSLUnknownRevocationStatus ディレクティブは、CRL または OCSP を介して送られてくる失効状況を IBM HTTP Server がただちに判別できない場合の対応方法を指定します。

名前 説明
構文 SSLUnknownRevocationStatus ignore | log | log_always | deny
有効範囲 仮想ホスト
デフォルト ignore
モジュール mod_ibm_ssl
構成ファイル内の複数インスタンス 仮想ホストごとに 1 つのインスタンスが許可されています
ignore
ハンドシェークが完了した際に失効状況が不明な場合、デバッグ・レベルのメッセージを発行するように指定します。このメッセージは SSL セッション再開時には再発行されません。
log
ハンドシェークが完了した際に失効状況が不明な場合、警告レベルのメッセージを発行するように指定します。このメッセージは SSL セッション再開時には再発行されません。
log_always
ハンドシェークが完了した際に失効状況が不明な場合、警告レベルのメッセージを発行するように指定します。IBM HTTP Server は、以降のハンドシェークに関しても同じメッセージを発行します。
deny
ハンドシェークが完了した際に失効状況が不明で、セッションを再開できずに HTTPS 接続がただちにクローズされる場合、警告レベルのメッセージを発行するように指定します。IBM HTTP Server は、以降のハンドシェークに関しても同じメッセージを報告します。
config: UnknownRevocationStatus に関するメッセージがログに記録される場合は、常に、SSL_UNKNOWNREVOCATION_SUBJECT 変数 (SSL 内部環境変数) が設定されます。以下の構文でこの変数をログに記録できます。
%{SSL_UNKNOWNREVOCATION_SUBJECT}e
SSLUnknownRevocationStatus ディレクティブの値が deny 以外の場合、mod_rewrite 式で変数を使用することもできます。 以下の変数名を使用します。
%{ENV:SSL_UNKNOWNREVOCATION_SUBJECT}

SSLV2Timeout ディレクティブ

SSLV2Timeout ディレクティブは、 SSL バージョン 2 セッション ID のタイムアウトを設定します。

名前 説明
構文 SSLV2Timeout 60
有効範囲 グローバル・ベースおよび仮想ホスト。
デフォルト 40
モジュール mod_ibm_ssl
構成ファイル内の複数インスタンス 仮想ホストおよびグローバル・サーバーごとに 1 つのインスタンス。
0 から 100 (秒)。

SSLV3Timeout ディレクティブ

SSLV3Timeout ディレクティブは、SSL バージョン 3 および TLS のセッション ID のタイムアウトを設定します。

名前 説明
構文 SSLV3Timeout 1000
有効範囲 グローバル・ベースおよび仮想ホスト。

[Windows]仮想ホストの有効範囲またはグローバル有効範囲が適用されます。

[AIX][HP-UX][Linux][Solaris]SSLCacheDisable ディレクティブも使用されている場合、仮想ホストの有効範囲が適用されます。 それ以外の場合は、グローバル有効範囲のみが使用されます。

デフォルト 120
モジュール mod_ibm_ssl
構成ファイル内の複数インスタンス 仮想ホストおよびグローバル・サーバーごとに 1 つのインスタンス。
0 から 86400 (秒)。

SSLVersion ディレクティブ

SSLVersion ディレクティブを使用すると、指定されたバージョン以外の SSL プロトコルでクライアントが接続した場合に、403 応答でオブジェクトのアクセスを拒否します。

特定の SSL プロトコル・バージョンを確実に使用するには、ほとんどの場合、SSLVersion ディレクティブよりも SSLProtocolDisable ディレクティブの選択が適しています。SSLProtocolDisable ディレクティブでは、クライアント・ブラウザーは、可能な場合、別のプロトコル・バージョンのネゴシエーションが可能です。これに対して SSLVersion ディレクティブでは IBM HTTP Server は 403 応答を送信するため、ユーザーに混乱を与える可能性があります。

名前 説明
構文 SSLVersion ALL
有効範囲 ディレクトリー・スタンザごとに 1 つ。
デフォルト なし。
モジュール mod_ibm_ssl
構成ファイル内の複数インスタンス <Directory> または <Location> スタンザごとに 1 つのインスタンス。
[AIX Solaris HP-UX Linux Windows]SSLV2|SSLV3|TLS|TLSV1|TLSV11|TLSV12|ALL [z/OS]SSLV2|SSLV3|TLS|TLSV1|ALL

トピックのタイプを示すアイコン 参照トピック



タイム・スタンプ・アイコン 最終更新: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=ihs-dist&topic=rihs_ssldirs
ファイル名:rihs_ssldirs.html