Secure Sockets Layer (SSL) ディレクティブは、IBM® HTTP Server の SSL 機能を制御する構成パラメーターです。
IBM HTTP Server の大部分の SSL ディレクティブには、同じ振る舞いがあります。指定された仮想ホスト構成用に指定されたディレクティブは、基本サーバー構成で指定されたディレクティブをオーバーライドします。 また、子ディレクトリー用に指定されたディレクティブは、その親ディレクトリー用に指定されたディレクティブをオーバーライドします。 ただし、例外があります。
また、子ディレクトリー用に指定されたディレクティブは、その親ディレクトリー用に指定されたディレクティブに追加されることがあります。 この場合、親ディレクトリー用のディレクティブは、子ディレクトリー用のディレクティブをオーバーライドしませんが、代わりに親ディレクトリー用のディレクティブが子ディレクトリー用のディレクティブに追加され、両方のディレクティブが子ディレクトリーに適用されます。
名前 | 説明 |
---|---|
構文 |
|
有効範囲 | 仮想ホスト |
デフォルト | 使用不可 |
モジュール | mod_ibm_ssl |
構成ファイル内の複数インスタンス | 仮想ホストごとに 1 つ |
値 | OCSP レスポンダーを指す完全修飾 URL。例えば、http://hostname:2560/ のようになります。 |
CRL 検査を構成している場合でも、OCSP 検査は CRL 検査の前に実行されます。CRL 検査は、CRL の結果が不明または不確定な場合にのみ行われます。
SSLOCSPResponderURL を設定している場合、IBM HTTP Server は指定の URL を使用して、SSL クライアント証明書の提供時に証明書の失効状況を検査します。
名前 | 説明 |
---|---|
構文 |
|
有効範囲 | 仮想ホスト |
デフォルト | 使用不可 |
モジュール | 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 レスポンダーを検査します。
名前 | 説明 |
---|---|
構文 | ![]() ![]() ![]() ![]() ![]() ![]() ![]()
|
有効範囲 | グローバル・ベースおよび仮想ホスト |
デフォルト | なし |
モジュール | mod_ibm_ssl |
構成ファイル内の複数インスタンス | 仮想ホストおよびグローバル・サーバーごとに 1 つのインスタンス。 |
値 | 鍵ファイルのファイル名。
|
名前 | 説明 |
---|---|
構文 | SSLAcceleratorDisable |
有効範囲 | 仮想およびグローバル |
デフォルト | アクセラレーター・デバイスは使用可能です。 |
モジュール | mod_ibm_ssl |
構成ファイル内の複数インスタンス | 仮想ホストごとに 1 つのインスタンス。 |
値 | なし。このディレクティブは、 仮想ホストの内部も含めて、構成ファイルの内の任意の場所に配置します。 初期設定中に、アクセラレーター・デバイスがマシン上にインストールされていることをシステムが判別した場合、 システムはそのアクセラレーターを使用して、セキュア・トランザクションの数を増やします。 このディレクティブは引数を取りません。 |
名前 | 説明 |
---|---|
構文 | SSLAllowNonCriticalBasicConstraints on|off |
有効範囲 | グローバル・サーバーまたは仮想ホスト |
デフォルト | Off |
モジュール | mod_ibm_ssl |
構成ファイル内の複数インスタンス | 仮想ホストおよびグローバル・サーバーごとに 1 つのインスタンス。 |
値 | なし。このディレクティブは、発行者の認証局 (CA) 証明書で、非クリティカルの基本制約拡張によって認証は失敗しないという、証明書検証アルゴリズムの振る舞いを変更します。これを使用すると、RFC3280 に準拠しない、日本政府による GPKI 指定との互換性が実現します。 重要: RFC3280 では、「証明書のデジタル署名の検証に使用される公開鍵を含むすべての CA 証明書に、この拡張をクリティカルな拡張として使用しなければなりません」となっています。
|
名前 | 説明 |
---|---|
構文 | SSLCacheDisable |
有効範囲 | 物理 Apache サーバー・インスタンスごとに 1 つ (仮想ホスト・スタンザの外部でのみ使用可能) |
デフォルト | なし |
モジュール | mod_ibm_ssl |
構成ファイル内の複数インスタンス | 許可されません。 |
値 | なし。 |
名前 | 説明 |
---|---|
構文 | SSLCacheEnable |
有効範囲 | 物理 Apache サーバー・インスタンスごとに 1 つ (仮想ホスト・スタンザの外部でのみ使用可能) |
デフォルト | なし |
モジュール | mod_ibm_ssl |
構成ファイル内の複数インスタンス | 許可されません。 |
値 | なし。 |
名前 | 説明 |
---|---|
構文 | SSLCacheErrorLog /usr/HTTPServer/logs/sidd_logg |
有効範囲 | 仮想ホスト外部でのサーバー構成 |
デフォルト | なし |
モジュール | mod_ibm_ssl |
構成ファイル内の複数インスタンス | 許可されません。 |
値 | 有効なファイル名。 |
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 |
構成ファイル内の複数インスタンス | 許可されません。 |
値 | 有効なパス名。 |
名前 | 説明 |
---|---|
構文 | SSLCachePath /usr/HTTPServer/logs/sidd |
有効範囲 | 仮想ホスト外部でのサーバー構成 |
デフォルト | このディレクティブが指定されないで、キャッシュが使用可能である場合、 サーバーは <server-root>/logs/siddport ファイルの使用を試行します。 |
モジュール | mod_ibm_ssl |
構成ファイル内の複数インスタンス | 許可されません。 |
値 | 有効なパス名。 Web サーバーは、始動時にこのファイルを削除します。 指定しないでください。 |
名前 | 説明 |
---|---|
構文 | SSLCacheTraceLog /usr/HTTPServer/logs/sidd-trace.log |
有効範囲 | 仮想ホスト外部でのサーバー構成 |
デフォルト | なし。 |
モジュール | mod_ibm_ssl |
構成ファイル内の複数インスタンス | 許可されません。 |
値 | 有効なパス名。 |
名前 | 説明 |
---|---|
構文 | SSLCipherBan <cipher_specification> |
有効範囲 | ディレクトリー・スタンザごとに複数インスタンス。 |
デフォルト | なし。 |
モジュール | mod_ibm_ssl |
構成ファイル内の複数インスタンス | ディレクトリー・スタンザごとに許可されます。 優先順序は、上部から下部への順序です。 |
値 | 値については、SSL 暗号仕様のトピックを参照してください。 |
名前 | 説明 |
---|---|
構文 | SSLCipherRequire <cipher_specification> |
有効範囲 | ディレクトリー・スタンザごとに複数インスタンス。 |
デフォルト | なし。 |
モジュール | mod_ibm_ssl |
構成ファイル内の複数インスタンス | ディレクトリー・スタンザごとに許可されます。 |
値 | 値については、SSL 暗号仕様のトピックを参照してください。 |
SSLCipherSpec ディレクティブを使用して、ハンドシェーク時にサポートされる SSL 暗号をカスタマイズできます。SSL 暗号のセットおよび優先順位をカスタマイズできます。
分散プラットフォームでは、各プロトコルは順序付けられた暗号のリストを独自に持っています。サポートされるプロトコルは SSL バージョン 2、SSL バージョン 3、TLS バージョン 1.0、TLS バージョン 1.1、および TLS バージョン 1.2 です。
z/OS では、使用可能な暗号のリストは SSL バージョン 2 用と他のプロトコル用の 2 つのみです。サポートされるプロトコルは SSL バージョン 2、SSL バージョン 3、および TLS バージョン 1.0 です。
SSL Version 2 の暗号はデフォルトで暗号なしに設定されます。これはプロトコルが使用不可に設定されていることを意味します。 他のプロトコルはデフォルトで一連の SSL 暗号 (Null 暗号、エクスポート暗号、および強度の低い暗号を除く) に設定されます。
単一引数形式の SSLCipherSpec を使用すると、指定された暗号はその暗号が有効なすべてのプロトコルで使用可能になります。そのような変更が各プロトコルに対して初めて行われた際、プロトコルのデフォルト暗号は破棄されます。
複数引数形式の SSLCipherSpec を使用し、最初の引数として SSL プロトコル名 (または「ALL」) を指定すると、以下のメリットを備えた拡張構文を使用できます。
プロトコル名に「ALL」を指定し、各暗号名に関して追加または削除を指定すると、その暗号が有効な各プロトコルに適用されます。
特殊なケースとして、SSLCipherSpec ALL NONE を使用して、すべての暗号リストの内容を単一のコマンドで削除できます。デフォルトの暗号を使用したくない場合は常に、構成を開始する際にこのコマンドを使用することをお勧めします。
名前 | 説明 |
---|---|
![]() |
![]() |
![]() |
![]() |
有効範囲 | 仮想ホスト。 |
デフォルト | 何も指定されない場合、サーバーは使用可能なすべての暗号仕様 (Null 暗号、エクスポート暗号、および強度の低い暗号を除く) を使用します。 |
モジュール | mod_ibm_ssl |
構成ファイル内の複数インスタンス | 許可されます。 優先順序は、上部から下部へ、最初から最後への順序です。 |
![]() |
![]() |
![]() |
![]() |
暗号名の値 | 値については、SSL 暗号仕様のトピックを参照してください。 |
例 1 |
ごく一部の暗号のみを選択したい場合、以下のように、最初にすべての暗号リストをリセットしてから使用したい暗号を追加することをお勧めします。
|
例 2 | デフォルトの大部分を使用したいが、使用したくない暗号が 1 つか 2 つある場合、以下のように、それらが含まれる任意のリストから使用したくない暗号を削除できます。
|
名前 | 説明 |
---|---|
構文 | SSLClientAuth <level required> [crl] |
有効範囲 | 仮想ホスト。 |
デフォルト | SSLClientAuth none |
モジュール | mod_ibm_ssl |
構成ファイル内の複数インスタンス | 仮想ホストごとに 1 つのインスタンス。 |
値 |
値 0/None を指定すると、CRL オプションを使用できません。 |
Required_reset | サーバーはすべてのクライアントに対して有効な証明書を要求し、使用可能な証明書がない場合は SSL の警告をクライアントに送信します。これにより、クライアントは SSL の障害がクライアント証明書に関するものであることを理解します。またブラウザーは以降のアクセスに関するクライアント証明書情報を求めて再度プロンプトを出します。このオプションには GSKit バージョン 7.0.4.19 以降、または z/OS V1R8 以降が必要です。 |
SSLClientAuthGroup ディレクティブでは、 特定のクライアント証明書の属性および値のペアのセットを含む名前付き式グループを定義します。 この名前付きグループは、SSLClientAuthRequire ディレクティブが使用できます。 証明書は、サーバーが保護されたリソースへのアクセスを許可する前に、 クライアント (この式を渡す) によって提供される必要があります。
名前 | 説明 |
---|---|
構文 | SSLClientAuthGroup グループ名 属性表現 |
有効範囲 | サーバー構成、仮想ホスト |
デフォルト | なし。 |
モジュール | mod_ibm_ssl |
構成ファイル内の複数インスタンス | 許可されます。 |
オーバーライド | なし。 |
値 | AND、OR、NOT、および括弧を用いてリンクされた属性検査で構成された論理式。以下に例を示します。
|
次のセクションでは、 有効な論理式を用いた例の説明を提供します。 例えば、SSLClientAuthGroup ((CommonName = "Fred Smith") OR (CommonName = "John Deere")) AND (Org = IBM) は、クライアント証明書に Fred Smith または John Deere のいずれかの共通名を含み、組織が IBM でない限り、そのオブジェクトはサービスを提供されないということを意味します。属性検査のための唯一の有効な比較は、「等しい」および「等しくない」(= および !=) です。 各属性検査を AND、OR、 または NOT (さらに &&、||、および !) を用いてリンクすることができます . AND、OR、または NOT で関連付けた比較はいずれも括弧で囲む必要があります。属性の値に非英数字が含まれる場合、 値を引用符で区切る必要があります。
ロング・ネーム | ショート・ネーム |
---|---|
CommonName | CN |
国 | C |
E | |
IssuerCommonName | ICN |
IssuerEmail | IE |
IssuerLocality | IL |
IssuerOrg | IO |
IssuerOrgUnit | IOU |
IssuerPostalCode | IPC |
IssuerStateOrProvince | IST |
場所 | L |
Org | O |
OrgUnit | OU |
PostalCode | PC |
StateOrProvince | ST |
ロング・ネームまたはショート・ネームは、このディレクティブで使用できます。
SSLClientAuthGroup IBMpeople Org = IBM)
または SSLClientAuthGroup
NotMNIBM (ST != MN) && (Org = IBM)
グループ名には、スペースを入れることはできません。詳しくは、SSLClientAuthRequire ディレクティブを参照してください。
SSLClientAuthRequire ディレクティブでは、 サーバーが保護リソースへのアクセスを許可する前に、属性値、または属性値のグループを指定します。これらは、クライアント証明書に対して検証される必要があります。
名前 | 説明 |
---|---|
構文 | SSLClientAuthRequire 属性表現 |
有効範囲 | サーバー構成、仮想ホスト |
デフォルト | なし。 |
モジュール | mod_ibm_ssl |
構成ファイル内の複数インスタンス | 許可されます。 この関数は、これらのディレクティブを「AND」で結合します。 |
オーバーライド | AuthConfig |
値 | AND、OR、NOT、および括弧を用いてリンクされた属性検査で構成された論理式。以下に例を示します。
|
受け取った証明書に特定の属性がない場合は、 属性の一致に対する検証がありません。指定された一致する値が " "でも、属性がまったくない場合と同じであるとはかぎりません。SSLClientAuthRequire ディレクティブで指定された属性はすべて、 証明書で利用できません。要求が拒否される原因となります。
ロング・ネーム | ショート・ネーム |
---|---|
CommonName | CN |
国 | C |
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
((CommonName="John Doe") || (StateOrProvince=MN)) && (Org !=IBM)
または SSLClientAuthRequire
(group!=IBMpeople) && (ST=MN)
SSLClientAuthRequire (group != IBMpeople) && ("ST= MN")
詳しくは、SSLClientAuthGroup ディレクティブを参照してください。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 ディレクティブは、 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 ディレクティブは、証明書失効リスト (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 ディレクティブは、 証明書失効リスト (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 |
有効範囲 | グローバル・サーバーまたは仮想ホスト。 |
デフォルト | デフォルトで使用不可です。 |
モジュール | mod_ibm_ssl |
構成ファイル内の複数インスタンス | 仮想ホストおよびグローバル・サーバーごとに 1 つのインスタンス。 |
値 | なし。 |
名前 | 説明 |
---|---|
構文 | SSLEnable |
有効範囲 | グローバル・サーバーまたは仮想ホスト。 |
デフォルト | デフォルトで使用不可です。 |
モジュール | mod_ibm_ssl |
構成ファイル内の複数インスタンス | 仮想ホストおよびグローバル・サーバーごとに 1 つのインスタンス。 |
値 | なし。 |
SSLFakeBasicAuth ディレクティブは、 偽の基本認証のサポートを使用可能にします。
名前 | 説明 |
---|---|
構文 | SSLFakeBasicAuth |
有効範囲 | AuthName、AuthType、および必要なディレクティブと共に使用されるディレクトリー・スタンザ内。 |
デフォルト | なし。 |
モジュール | mod_ibm_ssl |
構成ファイル内の複数インスタンス | ディレクトリー・スタンザごとに 1 つのインスタンス。 |
値 | なし。 |
名前 | 説明 |
---|---|
構文 | SSLFIPSDisable |
有効範囲 | 仮想およびグローバル。 |
デフォルト | デフォルトで使用不可です。 |
モジュール | mod_ibm_ssl |
構成ファイル内の複数インスタンス | 仮想ホストおよびグローバル・サーバーごとに 1 つのインスタンス。 |
値 | なし。 |
SSLFIPSEnable ディレクティブは、 連邦情報処理標準 (FIPS) を使用可能にします。
このディレクティブは、分散プラットフォームに適用可能です。
名前 | 説明 |
---|---|
構文 | SSLFIPSEnable |
有効範囲 | 仮想およびグローバル。 |
デフォルト | デフォルトで使用不可です。 |
モジュール | mod_ibm_ssl |
構成ファイル内の複数インスタンス | 仮想ホストおよびグローバル・サーバーごとに 1 つのインスタンス。 |
値 | なし。 |
SSLInsecureRenegotiation ディレクティブは、安全でない (RFC5746 以前の) SSL 再ネゴシエーションを許可するかどうかを指定します。SSL 再ネゴシエーションはいずれの種類も一般的ではなく、このディレクティブはデフォルト値の off から変更すべきではありません。
on を指定した場合、安全でない SSL 再ネゴシエーションが許可されます。off を指定した場合 (デフォルト)、安全でない SSL 再ネゴシエーションは許可されません。
名前 | 説明 |
---|---|
構文 | SSLInsecureRenogotiation directive on|off |
有効範囲 | 仮想ホスト |
デフォルト | off |
モジュール | mod_ibm_ssl |
構成ファイル内の複数インスタンス | 仮想ホストおよびグローバル・サーバーごとに 1 つのインスタンス。 |
値 | on|off |
SSLPKCSDriver ディレクティブは、 モジュールに対する完全修飾名、 または PKCS11 デバイスへのアクセスに使用されるドライバーを識別します。
名前 | 説明 |
---|---|
構文 | PKCS11 デバイスへのアクセスに使用するモジュールの完全修飾名>。モジュールがユーザーのパス内に存在する場合は、 そのモジュールの名前のみを指定します。 |
有効範囲 | グローバル・サーバーまたは仮想ホスト。 |
デフォルト | なし。 |
モジュール | mod_ibm_ssl |
構成ファイル内の複数インスタンス | 仮想ホストおよびグローバル・サーバーごとに 1 つのインスタンス。 |
値 | PKCS11 モジュールまたはドライバーのパスと名前。 |
SSLProtocolDisable ディレクティブを使用して、特定の仮想ホストに関してクライアントが使用できない SSL プロトコルを 1 つ以上指定することができます。 このディレクティブは、<VirtualHost> コンテナーに存在している必要があります。
名前 | 説明 |
---|---|
構文 | SSLProtocolDisable <protocolname> |
有効範囲 | 仮想ホスト |
デフォルト | 使用不可 重要: SSL バージョン 2 プロトコルは、他の手段によりデフォルトで使用不可に設定されています。
|
モジュール | mod_ibm_ssl |
構成ファイル内の複数インスタンス | 仮想ホストごとに複数のインスタンスが許可されています。 |
値 | 以下の値は、このディレクティブに使用できます。
|
値 TLS は、すべての TLS バージョンを使用不可にします。
値 TLSv1 は、TLS バージョン 1.0 を使用不可にします。
値 TLSv1.1 は、TLS バージョン 1.1 を使用不可にします。
値 TLSv1.2 は、TLS バージョン 1.2 を使用不可にします。
<VirtualHost *:443> SSLEnable SSLProtocolDisable SSLv2
SSLv3 (any other directives) </VirtualHost>
SSLProtocolEnable ディレクティブを使用して、個々の SSL プロトコルを使用可能にすることができます。
分散プラットフォームの場合、有用なプロトコルはデフォルトですべて自動的に使用可能になるため、このディレクティブに、それほど有用性はありません。
z/OS の場合、z/OS サービスが TLSv1.1 および TLSv1.2 のサポートを追加した後で、このディレクティブが使用できるようになります。z/OS 上で稼働する IBM HTTP Server 内で、TLSv1.1 および TLSv1.2 プロトコルはデフォルトでは使用可能になりません。
構文 | SSLSuiteBMode |
有効範囲 | 仮想ホスト |
デフォルト | 設定解除 |
モジュール | mod_ibm_ssl |
構成ファイル内の複数インスタンス | 仮想ホストごとに複数のインスタンスが許可されています。 |
名前 | 説明 |
---|---|
構文 | SSLProxyEngine on|off |
有効範囲 | IP ベースの仮想ホスト。 |
デフォルト | Off |
モジュール | mod_ibm_ssl |
構成ファイル内の複数インスタンス | 仮想ホストおよびグローバル・サーバーごとに 1 つ |
値 | on|off |
名前 | 説明 |
---|---|
構文 | SSLRenegotiation on|off|LEGACY_AND_RFC5746 |
デフォルト | Off |
モジュール | mod_ibm_ssl |
Context | 仮想ホスト |
状況 | 拡張 |
値 | on|off|LEGACY_AND_RFC5746 |
名前 | 説明 |
---|---|
構文 | SSLServerCert [prompt] my_certificate_label; on PKCS11 device - SSLServerCert mytokenlabel:mykeylabel |
有効範囲 | IP ベースの仮想ホスト。 |
デフォルト | なし。 |
モジュール | mod_ibm_ssl |
構成ファイル内の複数インスタンス | 仮想ホストおよびグローバル・サーバーごとに 1 つのインスタンス。 |
値 | 証明書ラベル。 /prompt オプションを使用して、 Crypto トークン・パスワードを求めるプロンプトが HTTP サーバーによって始動時に出されるようにします。 証明書ラベルの周囲では、区切り文字を使用しないでください。 ラベルが 1 行に収められていることを確認してください。 先行および後続の空白は無視されます。 |
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 [-c] <directory_to_password_file_and_file_name> <function_name> <password>
LDAP-based CRL リポジトリーを静的に構成するには、SSLStashFile ディレクティブを SSLCRLPort ディレクティブ、SSLCRLHostname ディレクティブ、および SSLCRLUserID ディレクティブと共に使用します。 明示的 CRLDistributionPoint X.509v3 証明書の拡張子がないか、または拡張子で指定されたサーバーが応答しない (使用不可) 場合にのみ、LDAP-based CRL リポジトリーを照会するために、これらのディレクティブを使用することが必要です。
CRLDistributionPoint 拡張子が証明書にあり、拡張子で指定されたサーバーが反応する (使用可能な) 場合、CRLDistributionPoint で指定された LDAP サーバーはこれらのディレクティブを使用せずに匿名で照会されます。
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 ディレクティブは、 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 |
構成ファイル内の複数インスタンス | 無視 |
値 | なし |
SSLUnknownRevocationStatus ディレクティブは、CRL または OCSP を介して送られてくる失効状況を IBM HTTP Server がただちに判別できない場合の対応方法を指定します。
名前 | 説明 |
---|---|
構文 | SSLUnknownRevocationStatus ignore | log | log_always | deny |
有効範囲 | 仮想ホスト |
デフォルト | ignore |
モジュール | mod_ibm_ssl |
構成ファイル内の複数インスタンス | 仮想ホストごとに 1 つのインスタンスが許可されています |
値 |
|
%{SSL_UNKNOWNREVOCATION_SUBJECT}e
SSLUnknownRevocationStatus ディレクティブの値が deny 以外の場合、mod_rewrite 式で変数を使用することもできます。
以下の変数名を使用します。%{ENV:SSL_UNKNOWNREVOCATION_SUBJECT}
SSLV2Timeout ディレクティブは、 SSL バージョン 2 セッション ID のタイムアウトを設定します。
名前 | 説明 |
---|---|
構文 | SSLV2Timeout 60 |
有効範囲 | グローバル・ベースおよび仮想ホスト。 |
デフォルト | 40 |
モジュール | mod_ibm_ssl |
構成ファイル内の複数インスタンス | 仮想ホストおよびグローバル・サーバーごとに 1 つのインスタンス。 |
値 | 0 から 100 (秒)。 |
SSLV3Timeout ディレクティブは、SSL バージョン 3 および TLS のセッション ID のタイムアウトを設定します。
名前 | 説明 |
---|---|
構文 | SSLV3Timeout 1000 |
有効範囲 | グローバル・ベースおよび仮想ホスト。
|
デフォルト | 120 |
モジュール | mod_ibm_ssl |
構成ファイル内の複数インスタンス | 仮想ホストおよびグローバル・サーバーごとに 1 つのインスタンス。 |
値 | 0 から 86400 (秒)。 |
SSLVersion ディレクティブを使用すると、指定されたバージョン以外の SSL プロトコルでクライアントが接続した場合に、403 応答でオブジェクトのアクセスを拒否します。
特定の SSL プロトコル・バージョンを確実に使用するには、ほとんどの場合、SSLVersion ディレクティブよりも SSLProtocolDisable ディレクティブの選択が適しています。SSLProtocolDisable ディレクティブでは、クライアント・ブラウザーは、可能な場合、別のプロトコル・バージョンのネゴシエーションが可能です。これに対して SSLVersion ディレクティブでは IBM HTTP Server は 403 応答を送信するため、ユーザーに混乱を与える可能性があります。
名前 | 説明 | |
---|---|---|
構文 | SSLVersion ALL | |
有効範囲 | ディレクトリー・スタンザごとに 1 つ。 | |
デフォルト | なし。 | |
モジュール | mod_ibm_ssl | |
構成ファイル内の複数インスタンス | <Directory> または <Location> スタンザごとに 1 つのインスタンス。 | |
値 | ![]() |
![]() |