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

Secure Sockets Layer (SSL) 指引

Secure Sockets Layer (SSL) 指引是在 IBM® HTTP Server中控制 SSL 特性的配置參數。

You can specify many Secure Sockets Layer (SSL) directives in IBM HTTP Server either within a <VirtualHost> section, or globally, outside of any <VirtualHost> section.

當使用名稱型 SSL 虛擬主機時,只會從每一個唯一 IP:PORT 組合的預設 (第一個列出) 虛擬主機中取得影響 SSL 信號交換的配置指引。

在這兩個環境定義中有效的大部分指引會從廣域配置複製或合併至虛擬主機配置,這表示它們不需要在多個啟用 SSL 的虛擬主機內重複。 值得注意的異常狀況是 OCSP 相關指引及 SSLProtocolDisable。 While SSLCipherSpec is merged, it is recommended to specify this directive either globally or within the <VirtualHost> section and not both at the same time. When specified globally and within a <VirtualHost> section, each is evaluated relative to the defaults then the union of the result is enabled. 這可能有不直覺的結果。

For SSL directives specified in a directory scope (<Location>, <Directory>, or htaccess), configurations sections from a more general scope are merged into configuration sections with a more specific scope. 此種類中的部分指引範例為 SSLCipherBanSSLCipherRequireSSLClientAuthRequireSSLVersion。 這些指引比先前的指引更不常使用。

除了廣域指定的 keyfile 指引之外,請盡可能避免合併配置。 如果有任何配置依賴合併多個配置範圍,請務必測試結果。

SSLOCSPResponderURL

SSLOCSPResponderURL 指引可讓您透過靜態配置的線上憑證狀態通訊協定 (OCSP) 回應端來檢查用戶端憑證。
名稱 說明
語法

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

範圍 虛擬主機
預設值 已停用
模組 mod_ibm_ssl
配置檔中的多個實例 每部虛擬主機各一個
指向 OCSP 回應端的完整 URL,例如 http://hostname:2560/

即使已配置 CRL 檢查,還是會先執行 OCSP 檢查,再執行任何 CRL 檢查。 唯有當 CRL 不明或不確定時,才會進行 CRL 檢查。

如果設定 SSLOCSPResponderURL ,當提供 SSL 用戶端憑證時, IBM HTTP Server 會使用所提供的 URL 來檢查憑證撤銷狀態。

如果同時配置 SSLOCSPEnableSSLOCSPResponderURL ,則會先檢查 SSLOCSPResponderURL 所定義的回應者。 如果撤銷狀態不明或不確定, IBM HTTP Server 會檢查 SSLOCSPEnable的 OCSP 回應端。
避免麻煩: 在某些情況下, IBM HTTP Server 可能無法判斷用戶端憑證的撤銷狀態,因為後端伺服器 (撤銷資料的來源) 無法使用。 請注意:
  • 如果您的憑證使用 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 信號交換就會失敗。

SSLOCSPEnable

SSLOCSPEnable 指引可讓您透過其憑證的「授權資訊存取 (AIA)」延伸中定義的 OCSP 回應端,來檢查用戶端憑證。
名稱 說明
語法

[AIX Solaris HP-UX Linux Windows]SSLOCSPEnable

範圍 虛擬主機
預設值 已停用
模組 mod_ibm_ssl
配置檔中的多個實例 針對每部虛擬主機,各允許一個實例

如果已設定 SSLOCSPEnable ,且 SSL 用戶端憑證鏈包含 AIA 延伸規格,則 IBM HTTP Server 會聯絡 AIA 延伸規格所指示的 OCSP 回應端,以檢查用戶端憑證的撤銷狀態。

如果 OCSP 和 CRL 檢查都已配置,會先執行 OCSP 檢查,再執行任何 CRL 檢查。 唯有當 OCSP 檢查不明或不確定時,才會進行 CRL 檢查。

如果同時配置 SSLOCSPEnableSSLOCSPResponderURL ,則會先檢查 SSLOCSPResponderURL 所定義的回應者。 如果撤銷狀態不明或不確定, IBM HTTP Server 會檢查 SSLOCSPEnable的 OCSP 回應端。

[9.0.5.17 或更新版本]

SSLOCSPCacheSize

SSLOCSPCacheSize 指引指定內部 OCSP 回應快取的大小。
名稱 說明
語法 SSLOCSPCacheSize number-of-elements
範圍 虛擬主機
預設值

[AIX Solaris HP-UX Linux Windows]0

[z/OS]256

模組 mod_ibm_ssl
配置檔中的多個實例 針對每部虛擬主機,各允許一個實例
快取的元素數目上限

啟用非零 SSLOCSPCacheSize 容許對 OCSP 回應使用記憶體內快取。 快取項目的有效期限取決於下列三個因素:

  1. OCSP 回應端指定的 nextUpdate 欄位。
  2. OCSP 回應者指定的 HTTP 快取標頭。
  3. 從完整快取收回以容納新項目。

無法檢視快取的內容,只有在 Web 伺服器重新啟動時才能清除。

Keyfile 指引

keyfile 指引會設定要使用的金鑰檔。
名稱 說明
語法

[Linux][AIX][Windows][z/OS][HP-UX][Solaris]Keyfile [/prompt] /path/to/key.kdb

[z/OS]KeyFile /saf [owner/]saf-keyring-name

範圍 廣域和虛擬主機
預設值
模組 mod_ibm_ssl
配置檔中的多個實例 每部虛擬主機和廣域伺服器各一個實例
金鑰檔的路徑

使用提示選項,使 HTTP 伺服器能夠在啟動時,提示您輸入金鑰檔密碼。 只有在從指令行以互動方式啟動伺服器時,才支援提示選項。

[z/OS]重要事項: z/OS® 系統不支援在其他平台上建立金鑰資料庫檔。 用於 z/OS 系統的金鑰資料庫檔必須建立在 z/OS 平台上。

用來啟動 IBM HTTP Server 的 ID 必須具有此指引中所指名之金鑰環的存取權。 如果 ID 沒有存取權,則 SSL 起始設定會失敗。

SSLAcceleratorDisable 指引

SSLAcceleratorDisable 指引會停用加速器裝置。
名稱 說明
語法 SSLAcceleratorDisable
範圍 虛擬和廣域
預設值 啟用加速器裝置
模組 mod_ibm_ssl
配置檔中的多個實例 每部虛擬主機各一個實例。
無。 您可以將此指引放在配置檔中的任何位置,包括虛擬主機內。 在起始設定期間,如果系統判定機器上已安裝加速器裝置,系統就會使用該加速器來增加安全交易數目。 此指引不使用引數。
[AIX Solaris HP-UX Linux Windows]

SSLAllowNonCriticalBasicConstraints 指引

SSLAllowNonCriticalBasicConstraints 指引可讓您與日本政府的 GPKI 規格中與 RFC3280相衝突的一個層面相容。
名稱 說明
語法 SSLAllowNonCriticalBasicConstraints on|off
範圍 廣域伺服器或虛擬主機
預設值 關閉
模組 mod_ibm_ssl
配置檔中的多個實例 每部虛擬主機和廣域伺服器各一個實例
無。 此指引會變更憑證驗證演算法的行為,使得發證者憑證管理中心 (CA) 憑證上的非重要基本限制延伸不會造成驗證失敗。 如此可讓您相容於日本政府的 GPKI 規格中,與 RFC3280 衝突的某個層面。
注意: RFC3280 指出此延伸必須在包含用來驗證憑證上數位簽章之公開金鑰的所有 CA 憑證中顯示為重要延伸。
[Linux][AIX][z/OS][HP-UX][Solaris]

SSLCacheDisable 指引

SSLCacheDisable 指引會停用外部 SSL 階段作業 ID 快取。
名稱 說明
語法 SSLCacheDisable
範圍 每個實體 Apache Server 實例各一個,僅在虛擬主機段落外部啟用。
預設值
模組 mod_ibm_ssl
配置檔中的多個實例 不允許。
無。
[Linux][AIX][z/OS][HP-UX][Solaris]

SSLCacheEnable 指引

SSLCacheEnable 指引可啟用外部 SSL 階段作業 ID 快取。
名稱 說明
語法 SSLCacheEnable
範圍 每個實體 Apache Server 實例各一個,僅在虛擬主機段落外部啟用。
預設值
模組 mod_ibm_ssl
配置檔中的多個實例 不允許。
無。
[Linux][AIX][z/OS][HP-UX][Solaris]

SSLCacheErrorLog 指引

SSLCacheErrorLog 指引設定階段作業 ID 快取的檔名。
名稱 說明
語法 SSLCacheErrorLog /usr/HTTPServer/logs/sidd_logg
範圍 虛擬主機外部的伺服器配置。
預設值
模組 mod_ibm_ssl
配置檔中的多個實例 不允許。
有效的檔名。
[Linux][AIX][z/OS][HP-UX][Solaris]

SSLCachePath 指引

SSLCachePath 指引可指定階段作業 ID 快取常駐程式的路徑。 除非您有多個 IHS 實例有多個 ServerRoot 指引或 -d 選項共用一個安裝,否則您不需要指定這個指引。

當有多個 IHS 實例與替代伺服器根目錄搭配使用時(如上述),應使用此指引,將這個 IHS 實例指向單一安裝根目錄(而不是預設使用的個別伺服器根目錄)中的 bin/sidd 二進位檔路徑。

使用多個實例時,並沒有實際的理由需要複製 bin/sidd 二進位檔,或是使用這個指引來指定安裝在伺服器根目錄下的 bin/sidd 以外的任何項目。 在共用相同二進位檔的 IHS 實例之間,此指引的值不需要改變。

名稱 說明
語法 SSLCachePath /usr/HTTPServer/bin/sidd
範圍 虛擬主機外部的伺服器配置。
預設值 <server-root>/bin/sidd
模組 mod_ibm_ssl
配置檔中的多個實例 不允許。
有效的路徑名稱。
[Linux][AIX][z/OS][HP-UX][Solaris]

SSLCachePortFilename 指引

SSLCachePortFilename 指引可設定 UNIX 網域 Socket 的檔名,以用於伺服器實例與階段作業 ID 快取常駐程式之間的通訊。 如果您從相同的安裝目錄執行兩個 IBM HTTP Server 實例,且這兩個實例都配置了 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 伺服器會在啟動期間刪除此檔案;請勿使用現有的檔名。
[Linux][AIX][z/OS][HP-UX][Solaris]

SSLCacheTraceLog 指引

SSLCacheTraceLog 指引指定寫入階段作業 ID 追蹤訊息的檔案。 若不使用此指引,就會停用追蹤。
名稱 說明
語法 SSLCacheTraceLog /usr/HTTPServer/logs/sidd-trace.log
範圍 虛擬主機外部的伺服器配置。
預設值 無。
模組 mod_ibm_ssl
配置檔中的多個實例 不允許。
有效的路徑名稱。
[AIX Solaris HP-UX Linux Windows]

SSLCheckCertificate有效期限

SSLCheckCertificateExpiration 指引會在啟動時檢查憑證是否過期或到期。
名稱 說明
語法 SSLCheckCertificateExpiration <i>days</i>|-1 ["no_expired"]
範圍 廣域伺服器或虛擬主機。
預設值 無。
模組 mod_ibm_ssl
配置檔中的多個實例 每部虛擬主機和廣域伺服器各一個實例。

對於 days 參數,請指定到期憑證的臨界值 (以天為單位) ,或輸入 -1 以停用該參數。

對於選用 no_expired 參數,指定 no_expired 以停用已過期憑證的報告。

SSLCipherBan 指引

如果用戶端已使用其中一個指定密碼連接,則 SSLCipherBan 指引會拒絕存取物件。 要求會失敗,並出現 403 狀態碼。
注意: 當指定給子目錄時,這個指引不會置換指定給上層目錄的指引。 反之,這兩個指引都會套用至子目錄。
名稱 說明
語法 SSLCipherBan <cipher_specification>
範圍 每個目錄段落各有多個實例。
預設值 無。
模組 mod_ibm_ssl
配置檔中的多個實例 每個目錄段落都允許。 喜好設定順序是從開始到完成。
請參閱 SSL 密碼規格主題,以取得值。

SSLCipherRequire 指引

SSLCipherRequire 指引會將物件存取限制為使用其中一個指定密碼連接的用戶端。 如果被拒絕存取,要求會失敗,並出現 '403' 狀態碼。
注意: 當指定給子目錄時,這個指引不會置換指定給上層目錄的指引。 反之,這兩個指引都會套用至子目錄。
名稱 說明
語法 SSLCipherRequire <cipher_specification>
範圍 每個目錄段落各有多個實例。
預設值 無。
模組 mod_ibm_ssl
配置檔中的多個實例 每個目錄段落都允許。
請參閱 SSL 密碼規格主題,以取得值。

SSLCipherSpec 指引

SSLCipherSpec 指引可讓您自訂在信號交換期間支援的 SSL 密碼。 您可以自訂 SSL 密碼集,以及SSL 密碼的喜好順序。

在分散式平台上,每個通訊協定都有自己的密碼排序清單。 支援的通訊協定為 SSL 第 2 版、SSL 第 3 版、TLS 1.0 版、TLS 1.1 版和 TLS 1.2 版。

在 z/OS上,只有兩個已啟用密碼清單,一個用於 SSL 第 2 版,另一個用於其他通訊協定。 支援的通訊協定為 SSL 第 2 版、SSL 第 3 版及 TLS 1.0版,以及 TLS 1.1版。 具有 OA39422或更新版本的 z/OS V1R13 上支援 TLS 1.2 版。

SSL 第 2 版密碼預設為無密碼,表示停用通訊協定。 其他通訊協定則有一組預設 SSL 密碼,其中不包括空值密碼、匯出密碼和低強度密碼。

當您使用單一引數格式 SSLCipherSpec時,密碼會在所有有效的通訊協定中啟用。 在第一次為每個通訊協定進行這類變更時,都會捨棄通訊協定的預設密碼。

當您使用 SSLCipherSpec的多引數形式,並指定 SSL 通訊協定 (或 ALL) 的名稱作為第一個引數時,您可以使用具有下列好處的加強語法:

  • 每次出現 SSLCipherSpec時可以列出多個密碼。
  • 可以透過在密碼名稱前面加上 -,從已啟用密碼的現行集合中移除個別密碼。
  • 第一次修改給定的通訊協定密碼清單時,可以將給定的密碼新增至預設值結尾,而不是取代它們,方法是在密碼名稱前面加上 +

如果您提供通訊協定名稱 ALL,則針對每一個密碼名稱指定的新增或移除會套用至該密碼有效的每一個通訊協定。

在特殊情況下,如果要以單一指令來清空所有密碼清單,您可以使用 SSLCipherSpec ALL NONE。 當您不想要使用預設密碼時,使用這個指令來啟動配置會是個好方法。

避免麻煩:SSLCipherSpec在 z/OS 上, PI73819之前的指引是不同的。 具體而言,SSLCipherSpec在 z/OS 上, PI73819 之前的指引只會採用簡稱或完整名稱作為引數。
附註: 密碼可以由其完整名稱或簡稱來指定。 不過,不建議對密碼使用簡稱,因為它們無法讀取,且可能不符合 SSL 規格中為密碼指定的簡稱。 此外,密碼的簡稱將不再進一步記載。
名稱 說明
語法 SSLCipherSpec [protocol-name] [+|-]cipher-name [[+|-]cipher-name ...]
範圍 伺服器配置、虛擬主機。
預設值 如果未指定值,伺服器會使用所有可用的非空值、非匯出、非低強度密碼規格。
模組 mod_ibm_ssl
配置檔中的多個實例 允許。 喜好設定順序是從開始到完成,從第一個到最後一個。
分散式平台上通訊協定名稱的值

SSLv2, SSLv3, TLSv10, TLSv1.1,TLSv1.2, ALL

[9.0.5.2 或更新版本]TLSv1.3

9.0.5.2 版以及更新版本支援所有列出的通訊協定名稱值,包括 TLSv1.3。 9.0.5.1 版及更舊版本支援所有列出的通訊協定名稱值,但 TLSv1.3除外。

z/OS 上通訊協定名稱的值 全部
密碼名稱的值 請參閱 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

如果您想要使用大部分預設值,可以從它們所在的任何清單中移除不想要的密碼:

# 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
配置檔中的多個實例 每部虛擬主機各一個實例。
  • 0/None:不要求任何用戶端憑證。
  • 1/Optional:要求用戶端憑證,但非必要。
  • 2/Required:需要有效的用戶端憑證。
  • Required_reset: 伺服器需要來自所有用戶端的有效憑證,如果沒有可用的憑證,伺服器會將 SSL 警示傳送至用戶端。 這個警示可讓用戶端瞭解 SSL 失敗與用戶端憑證有關,並促使瀏覽器重新提示輸入有關後續存取的用戶端憑證資訊。 此選項需要 GSKit 7.0.4.19 版或更新版本,或 z/OS V1R8 或更新版本。
    重要事項: 未提供數值選項,因此它不會看起來像現有的選項。
  • CRL: 在 SSL 虛擬主機內開啟和關閉憑證撤銷清冊 (CRL)。 如果您使用 CRL ,則必須指定 crl 作為 SSLClientAuth的第二個引數。 例如:SSLClientAuth 2 crl。 如果未指定 crl,則無法在 SSL 虛擬主機中執行 CRL。
  • noverify: 即使用戶端所提供的憑證驗證失敗 (例如,憑證已過期或已撤銷) ,仍可讓 SSL 信號交換順利完成並建立連線。 將這個指引與 SSLClientAuthVerify 搭配使用,可提供對使用者友善的網頁,而不是預設的瀏覽器錯誤訊息。 此選項必須與 Optional 搭配使用才有效。 若使用 SSLClientAuthVerify,在與無效的用戶端憑證連線時,所收到的要求會失敗。

如果您指定 0/None 值,則無法使用 CRL 選項。

Required_reset 伺服器需要所有用戶端的有效憑證,如果沒有可用的憑證,伺服器會傳送 SSL 警示至用戶端。 這個警示可讓用戶端瞭解 SSL 失敗與用戶端憑證有關,並促使瀏覽器重新提示輸入有關後續存取的用戶端憑證資訊。 此選項需要 GSKit 7.0.4.19 版或更新版本,或 z/OS V1R8 或更新版本。
CRL 處理
  • CRL 處理需要另外指定 SSLCRLHostnameSSLCRLPortSSLCRLUserID。 這些指引用來識別要用於憑證撤銷檢查的 LDAP 型 CRL 伺服器。
  • [AIX Solaris HP-UX Linux Windows]靜態配置 CRL 伺服器時使用 SSLCRLHostnameSSLCRLPortSSLCRLUserID 也會啟用對用戶端憑證鏈中任何 LDAP 或 HTTP CRLDistributionPoint 的檢查。
  • [AIX Solaris HP-UX Linux Windows]如果 SSLCRLHostname 具有特殊值 URI,則會忽略 SSLCRLPortSSLCRLUserID 。 只會從用戶端憑證鏈查詢 CRLDistributionPoint URI
注意: 在某些情況下, IBM HTTP Server 可能無法判斷用戶端憑證的撤銷狀態,因為後端伺服器 (撤銷資料來源) 無法使用。 請注意:
  • 如果您的憑證使用 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 信號交換就會失敗。

SSLClientAuthGroup 指引

SSLClientAuthGroup 指引會定義一個具名表示式群組,其中包含一組特定的用戶端憑證屬性/值配對。 此具名群組可供 SSLClientAuthRequire 指引使用。 用戶端必須提供通過此表示式的憑證,伺服器才會允許存取受保護的資源。

名稱 說明
語法 SSLClientAuth群組 群組名稱 屬性表示式
範圍 伺服器配置、虛擬主機。
預設值 無。
模組 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 SmithJohn Deere ,且組織是 IBM。 The only valid comparisons for the attribute checks, are equal and not equal (= and !=). You can link each attribute check with AND, OR, or NOT (also &&, ||, and !). 以 AND、OR 或 NOT 來鏈結的任何比較,都必須包含在括弧內。 如果屬性的值包含非英數字元,則必須用引號來區隔該值。

此清單包含您可以為這個指引指定的屬性值:
表 1. SSLClientAuthGroup 指引的屬性值。 此表格會將每個屬性值以完整名稱和簡稱列出。
完整名稱 簡短名稱
CommonName CN
國家/地區 C
電子郵件 E
IssuerCommonName ICN
IssuerEmail TW
IssuerLocality IL
IssuerOrg I/O
IssuerOrgUnit IOU
IssuerPostalCode IPC
IssuerStateOrProvince IST
地區 L
組織 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
電子郵件 E
IssuerCommonName ICN
IssuerEmail TW
IssuerLocality IL
IssuerOrg I/O
IssuerOrgUnit IOU
IssuerPostalCode IPC
IssuerStateOrProvince IST
地區 L
組織 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 指引
[AIX Solaris HP-UX Linux Windows]
表 3. 與「主體替代名稱 (SAN)」TLS 用戶端憑證延伸相關的屬性。 每一個屬性都必須以介於 0 到 3 (含) 之間的數字作為字尾,例如 SANDNSNAME0 或 SANIPADDRESS3。
屬性字首 說明
SANDNSNAME DNS 名稱
SANIPADDRESS IP 位址
SANRFC822NAME RFC822 名稱 (電子郵件)
SANDIRECTORYNAME 目錄名稱
SANURI 通用資源 ID (URI)
[AIX Solaris HP-UX Linux Windows]附註: 每一種延伸類型的前四個值都只能作為屬性使用。 如需更複雜的需求,請參閱 用戶端憑證環境變數 表示式剖析器支援。

SSLClientAuthVerify 指引

SSLClientAuthVerify 指引可控制 IBM HTTP Server 在收到用戶端憑證但驗證失敗 (例如過期或撤銷) 時是否會使要求失敗。

名稱 說明
語法 SSLClientAuthVerify statuscode|OFF
範圍 廣域伺服器或虛擬主機。
預設值 500
模組 mod_ibm_ssl
配置檔中的多個實例 每個目錄段落各一個實例。
HTTP 回應狀態碼,或是 OFF

將這個指引與 SSLClientAuth Optional Noverify 搭配使用,可提供對使用者友善的網頁,而不是預設的瀏覽器錯誤訊息。

如果您使用 SSLClientAuth Optional Noverify 來配置虛擬主機,當收到用戶端憑證,但其驗證失敗時(例如過期或撤銷),可建立 SSL 連線。

LocationDirectory 之類的環境定義中使用這個指引,會使在該連線上接收的要求失敗,並產生特定錯誤碼,或是設定 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_CERTGSKVAL_ERROR_CERT_EXPIRED。 如果憑證有多個驗證問題,所報告的原因通常是 GSKVAL_ERROR_CA_MISSING_CRITICAL_BASIC_CONSTRAINT

每當用戶端憑證驗證失敗,就會在錯誤日誌中,於 loglevel Error 記載兩則訊息。 第二則訊息包含原因,例如:

[Tue Jun 08 08:54:25 2010] [error] [client 9.37.243.128] [9e44c28] [731] SSL0208E: SSL Handshake Failed, 
   憑證驗證錯誤。 [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 指引指定「憑證撤銷清冊 (CRL)」資料庫所在 LDAP 伺服器的 TCP/IP 名稱或位址。

名稱 說明
語法 <SSLCRLHostName <TCP/IP name or address>
範圍 廣域伺服器或虛擬主機。
預設值 依預設已停用。
模組 mod_ibm_ssl
配置檔中的多個實例 每部虛擬主機和廣域伺服器各一個實例。
LDAP 伺服器的 TCP/IP 名稱或位址

針對 LDAP 型 CRL 儲存庫的靜態配置,搭配使用 SSLCRLHostname 指引與 SSLCRLPortSSLCRLUserIDSSLStashfile 指引。 只有在明確的 CRLDistributionPoint X.509v3 憑證延伸不存在或延伸中指定的伺服器沒有回應 (即無法使用) 時,才需要使用這些指引來查詢 LDAP 型 CRL 儲存庫。

如果憑證中存在 CRLDistributionPoint 延伸,且延伸中指定的伺服器可回應 (即可用) ,則會匿名查詢 CRLDistributionPoint 中指定的 LDAP 伺服器,而不使用這些指引。

SSLCRLPort 指引(已淘汰)

SSLCRLPort 指引指定「憑證撤銷清冊 (CRL)」資料庫所在的 LDAP 伺服器埠。

名稱 說明
語法 SSLCRL<port>
範圍 廣域伺服器或虛擬主機。
預設值 依預設已停用。
模組 mod_ibm_ssl
配置檔中的多個實例 每部虛擬主機和廣域伺服器各一個實例。
LDAP 伺服器的埠;預設值 = 389。

針對 LDAP 型 CRL 儲存庫的靜態配置,搭配使用 SSLCRLPort 指引與 SSLCRLUserIDSSLCRLHostnameSSLStashfile 指引。 只有在明確的 CRLDistributionPoint X.509v3 憑證延伸不存在或延伸中指定的伺服器沒有回應 (無法使用) 時,才需要使用這些指引來查詢 LDAP 型 CRL 儲存庫。

如果憑證中有 CRLDistributionPoint 延伸存在,且延伸中指定的伺服器有回應(可用),則會以匿名方式查詢 CRLDistributionPoint 中指定的 LDAP 伺服器,而不會使用這些指引。

SSLCRLUserID 指引(已淘汰)

SSLCRLUserID 指引指定要傳送至 LDAP 伺服器的使用者 ID ,這是「憑證撤銷清冊 (CRL)」資料庫所在的位置。

名稱 說明
語法 SSLCRLUserID <[prompt] <userid>
範圍 廣域伺服器或虛擬主機。
預設值 如果您未指定使用者 ID,則預設為匿名。
模組 mod_ibm_ssl
配置檔中的多個實例 每部虛擬主機和廣域伺服器各一個實例。
LDAP 伺服器的使用者 ID。 使用提示選項,使 HTTP 伺服器能夠在啟動期間,提示您輸入用來存取 LDAP 伺服器的密碼。

針對 LDAP 型 CRL 儲存庫的靜態配置,使用 SSLCRLUserID 指引,以及 SSLCRLPortSSLCRLHostnameSSLStashfile 指引。 只有在明確的 CRLDistributionPoint X.509v3 憑證延伸不存在或延伸中指定的伺服器沒有回應 (即無法使用) 時,才需要使用這些指引來查詢 LDAP 型 CRL 儲存庫。

如果憑證中有 CRLDistributionPoint 延伸存在,且延伸中指定的伺服器有回應(可用),則會以匿名方式查詢 CRLDistributionPoint 中指定的 LDAP 伺服器,而不會使用這些指引。

SSLDisable 指引

SSLDisable 指引會停用虛擬主機的 SSL。
名稱 說明
語法 SSLDisable
範圍 廣域伺服器或虛擬主機。
預設值 依預設已停用。
模組 mod_ibm_ssl
配置檔中的多個實例 每部虛擬主機和廣域伺服器各一個實例。
無。

SSLEnable 指引

SSLEnable 指引會啟用虛擬主機的 SSL。
注意: 如果您不想要將指引自動複製到給定的虛擬主機配置,則不應在基本伺服器配置中指定此指引。
名稱 說明
語法 SSLEnable
範圍 廣域伺服器或虛擬主機。
預設值 依預設已停用。
模組 mod_ibm_ssl
配置檔中的多個實例 每部虛擬主機和廣域伺服器各一個實例。
無。

SSLFakeBasicAuth 指引

SSLFakeBasicAuth 指引會啟用偽造基本鑑別支援。

此支援可讓用戶端憑證識別名稱變成使用者與密碼基本鑑別 (BA) 配對的使用者部分。 使用 password 作為密碼。
注意: 基本伺服器配置可能會置換此指引。
名稱 說明
語法 SSLFakeBasicAuth
範圍 在目錄段落中,與 AuthName、AuthType 和 require 指引搭配使用。
預設值 無。
模組 mod_ibm_ssl
配置檔中的多個實例 每個目錄段落各一個實例。
無。
[AIX Solaris HP-UX Linux Windows]

SSLFIPSDisable 指引

SSLFIPSDisable 指引會停用「聯邦資訊存取安全標準 (FIPS)」。
名稱 說明
語法 SSLFIPSDisable
範圍 虛擬和廣域。
預設值 依預設已停用。
模組 mod_ibm_ssl
配置檔中的多個實例 每部虛擬主機和廣域伺服器各一個實例。
無。

SSLFIPSEnable 指引

SSLFIPSEnable 指引會啟用「聯邦資訊存取安全標準 (FIPS)」。

這個指令適用於分散式平台。

[z/OS]避免麻煩: z/OS 平台支援這個指引,但有下列限制。
  • 這個指引只在廣域範圍中有效。
  • 如果您變更指引的值,則必須停止然後啟動 IBM HTTP Server ,新值才會生效。 如果您執行重新啟動,則新值不會生效。
名稱 說明
語法 SSLFIPSEnable
範圍 虛擬和廣域。
預設值 依預設已停用。
模組 mod_ibm_ssl
配置檔中的多個實例 每部虛擬主機和廣域伺服器各一個實例。
無。
注意: 請參閱 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
配置檔中的多個實例 每部虛擬主機和廣域伺服器各一個實例
on|off
[9.0.5.16 或更新版本]

SSLMinimumRSAKeySize 指引

SSLMinimumRSAKeySize 指引主要用來對收到的用戶端憑證施行 RSA 金鑰大小下限。 指引的行為取決於平台安全程式庫提供的功能。

名稱 說明
語法 SSLMinimumRSAKeySize size
範圍 廣域和虛擬主機
預設值 0 (無下限)
模組 mod_ibm_ssl
配置檔中的多個實例 每部虛擬主機和廣域伺服器各一個實例
金鑰大小 (以位元為單位) ,例如 2048

[z/OS]在伺服器接收的用戶端憑證上施行金鑰大小。 不會檢查用戶端憑證的發證者。

[AIX Solaris HP-UX Linux Windows]mod_ibm_ssl所傳送或接收的所有憑證上施行金鑰大小,包括其完整憑證鏈。 在記載及條件式表示式中使用環境變數 SSL_CLIENT_KEY_ALG,例如 RSAEC_ecPublicKey,以及 SSL_CLIENT_KEY_SIZE

如果不符合 RSA 金鑰大小下限, SSL 信號交換會失敗。

[AIX Solaris HP-UX Linux Windows]

SSLPKCSDriver 指引

SSLPKCSDriver 指引可識別模組的完整名稱,或用來存取 PKCS11 裝置的驅動程式。

名稱 說明
語法 Fully qualified name to module used to access PKCS11 device>。 如果模組存在於使用者路徑中,請只指定模組的名稱。
範圍 廣域伺服器或虛擬主機。
預設值 無。
模組 mod_ibm_ssl
配置檔中的多個實例 每部虛擬主機和廣域伺服器各一個實例。
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 電子商務加密加速器
    • AIX: /usr/lib/pkcs11/PKCS11_API.so

SSLProtocolDisable 指引

SSLProtocolDisable 指引可讓您指定用戶端無法針對特定虛擬主機使用的一或多個 SSL 通訊協定。 此指引必須位於 <VirtualHost> 儲存器中。

適用於虛擬主機的受支援通訊協定是個別分開支援的。 如果所有支援的通訊協定都停用,用戶端無法完成 SSL 信號交換。
名稱 說明
語法 SSLProtocolDisable <protocolname>

支援的通訊協定名稱值: SSLv2|SSLv3|TLSv10|TLSv11|TLSv12

[9.0.5.2 或更新版本]TLSv13

9.0.5.2 版以及更新版本支援所有列出的通訊協定名稱值,包括 TLSv1.3。 9.0.5.1 版及更舊版本支援所有列出的通訊協定名稱值,但 TLSv1.3除外。

範圍 虛擬主機
預設值 已停用
注意: 依預設,會使用其他方法來停用 SSL 第 2 版通訊協定。
模組 mod_ibm_ssl
配置檔中的多個實例 每部虛擬主機可允許多個實例。
下列範例顯示如何停用虛擬主機上多個通訊協定的支援。
<VirtualHost *:443> 
   SSLEnable 
   SSLProtocolDisable TLSv10
   # Any other directives ...
</VirtualHost>
注意: 如果用戶端和伺服器未共用至少一個通訊協定和密碼組合,則會針對每一個 SSL 連線嘗試記載 SSL0230I 。

SSLProtocolEnable 指引

SSLProtocolEnable 指引可用來啟用個別 SSL 通訊協定。

名稱 說明
語法 SSLProtocolEnable <protocolname>

支援的通訊協定名稱值: SSLv2|SSLv3|TLSv10|TLSv11|TLSv12

[9.0.5.2 或更新版本]TLSv13

9.0.5.2 版以及更新版本支援所有列出的通訊協定名稱值,包括 TLSv1.3。 9.0.5.1 版及更舊版本支援所有列出的通訊協定名稱值,但 TLSv1.3除外。

範圍 虛擬主機
預設值 取消設定
模組 mod_ibm_ssl
配置檔中的多個實例 每部虛擬主機可允許多個實例。

SSLProxyEngine 指引

SSLProxyEngine 會切換伺服器是否使用 SSL 進行 Proxy 連線。 如果您的伺服器是作為 SSL 資源的反向 Proxy,就需要 SSLProxyEngine on
名稱 說明
語法 SSLProxyEngine on|off
範圍 IP 型虛擬主機
預設值 關閉
模組 mod_ibm_ssl
配置檔中的多個實例 每部虛擬主機和廣域伺服器各一個
on|off

SSLProxyCheckPeerCN 指引

SSLProxyCheckPeerCN 會切換伺服器是否強制驗證後端伺服器憑證中的「通用名稱」符合 Proxy 伺服器配置要連接的主機名稱。
名稱 說明
語法 SSLProxyCheckPeerCN on|off
範圍 虛擬主機
預設值 開啟
模組 mod_ibm_ssl
配置檔中的多個實例 每部虛擬主機和廣域伺服器各一個
on|off

SSLRenegotiation 指引

SSLRenegotiation 指引可控制 IBM HTTP Server 支援傳輸層安全 (TLS) 重新協議。 此指引可控制 IBM HTTP Server 允許的 TLS 重新協議類型。 TLS 重新協議是用戶端能夠在現有安全連線上起始新 SSL 信號交換的方式,一般瀏覽器型用戶端很少使用這種方式。
名稱 說明
語法 SSLRenegotiation on|off|LEGACY_AND_RFC5746
預設值 關閉
模組 mod_ibm_ssl
環境定義 虛擬主機
狀態 延伸
on|off|LEGACY_AND_RFC5746
OFF(預設值)
不允許重新協議。
開啟
允許安全的重新協議,如 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_label] certificate_label
範圍 IP 型虛擬主機。
預設值 無,但是 SSL 金鑰儲存庫有自己的預設憑證記號。
模組 mod_ibm_ssl
配置檔中的多個實例 每部虛擬主機和廣域伺服器各一個實例。
憑證標籤。 使用 /prompt 選項,讓 HTTP 伺服器在啟動期間提示您輸入加密記號密碼。 不要用定界字元來含括憑證標籤。 請確定標籤包含在一行中; 系統不處理前導和尾端空格。
每一個 SSL 金鑰儲存庫 keyfile 都可以指定預設憑證。 此指引可配置伺服器來使用金鑰儲存庫預設值以外的憑證。
  • 若要選擇預設以外的憑證標籤,請指定單一參數,其值為必要非預設憑證的標籤。
  • 如果要使用加密記號,請指定以冒號區隔的加密記號名稱和憑證標籤 (mytoken:mylabel)。 或者,您可以指定 /prompt 作為第一個參數,以互動方式提示輸入加密記號密碼,而不是使用 SSLStashFile
  • 若要同時配置 ECDSA 及 RSA 型憑證,請指定兩個憑證標籤 (以空格區隔)。 如果用戶端僅支援 RSA 或 ECDSA 型憑證,則會選取適當的憑證。 如果用戶端同時支援 RSA 及 ECDSA ,則此指引中最先指定的 certificate_label 會決定要使用的憑證。
避免麻煩: 如果您使用 SSL 憑證標籤,則需要注意下列需求。
  • 如果指定一個憑證標籤,則必須以引號括住具有空格的標籤,且不得跳出空格,如下列範例所示:
    SSLServerCert "My Label"
  • 如果指定兩個憑證標籤,則必須以引號括住任何具有空格的標籤,且必須以反斜線字元跳出空格,如下列範例所示:
    SSLServerCert "My\ First\ Label", "My\ Second\ Label"

SSLStashfile 指引

SSLStashfile 指引指出檔名包含開啟 PKCS11 裝置之加密密碼的檔案路徑。

名稱 說明
語法 SSLStashFile /usr/HTTPServer/mystashfile.sth
範圍 虛擬主機和廣域伺服器。
預設值 無。
模組 mod_ibm_ssl
配置檔中的多個實例 每部虛擬主機和廣域伺服器各一個實例。
使用 sslstash 指令建立的 LDAP 或 PKCS11 隱藏檔的檔名。

SSLStashfile 不會指向使用中 KeyFile 的隱藏檔,因為它會根據 KeyFile的名稱自動計算,而且是不同類型的隱藏檔。

使用 sslstash 指令 (位於 IBM HTTP Server的 bin 目錄中) 來建立 CRL 或加密裝置隱藏檔。 您使用 sslstash 指令來指定的密碼,應該與您用來登入 LDAP 伺服器或加密硬體的密碼相同。

sslstash 指令所建立的隱藏檔與通常隨附於 CMS KeyFile (*.kdb) 的隱藏檔完全無關。 因此,請確定您:
  • 當您發出 sslstash 指令時,請勿改寫現有的 *.sth 檔。
  • 絕不選擇對應於 CMS KeyFile (*.kdb) 檔名的 sslstash 指令輸出檔名。

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

其中:
  • -c:建立新的隱藏檔。 如果未指定,現有的檔案會更新。
  • File:代表所要建立或更新之檔案的完整名稱。
  • Function:指出要使用密碼的功能。 有效值包括 crl 或 crypto。
  • Password:代表所要隱藏的密碼。

針對 LDAP 型 CRL 儲存庫的靜態配置,搭配使用 SSLStashFile 指引與 SSLCRLPortSSLCRLHostnameSSLCRLUserID 指引。 唯有當明確的 CRLDistributionPoint X.509v3 憑證延伸不存在,或是延伸中指定的伺服器無回應(無法使用)時,才需要使用這些指引來查詢 LDAP 型 CRL 儲存庫。

如果憑證中有 CRLDistributionPoint 延伸存在,且延伸中指定的伺服器有回應(可用),則會以匿名方式查詢 CRLDistributionPoint 中指定的 LDAP 伺服器,而不會使用這些指引。

SSLSuiteBMode

SSLSuiteBMode 指引可用來將含括虛擬主機配置成使用 TLS 的 Suite B 設定檔。

此 Suite B 設定檔會大幅減少伺服器可用的簽章演算法及密碼規格。 可接受的演算法與密碼組合,會因為相關的標準變更,而隨之變更。 128 和 192 引數是指 RFC 6460 中討論的兩個安全等級。

指定這個指引會置換大部分先前指定的 SSL 指引。 此指引不會置換 SSLAttributeSet 設定,因為它具有較高的優先順序。 所有 Suite B 設定檔都需要伺服器的憑證鏈,才能使用強型 ECC 簽章。 RFC 6460 中有提供 Suite B 設定檔的限制說明。

名稱 說明
語法 SSLSuiteBMode
範圍 虛擬主機
預設值 取消設定
模組 mod_ibm_ssl
配置檔中的多個實例 每部虛擬主機各一次
[9.0.5.16 或更新版本]

SSLSupportedCurves

SSLSupportedCurves 指引容許在信號交換使用 ECDHE 金鑰交換的環境中自訂伺服器提供的曲線。 用戶端和伺服器必須協議雙方都支援的具名曲線。

名稱 說明
語法 SSLSupportedCurves TLSv12|TLSv13 curve-list
範圍 廣域和虛擬主機
預設值
  • TLSv12: secp256r1, secp384r1, secp521r1
  • [AIX Solaris HP-UX Linux Windows]TLSv13: x25519, secp256r1, secp384r1, secp521r1, x448
  • [z/OS]TLSv13: x25519, secp256r1, secp384r1, secp521r1
模組 mod_ibm_ssl
配置檔中的多個實例 每個虛擬主機和廣域伺服器每個通訊協定一個實例

SSLTrace 指引

SSLTrace 指引可在 mod_ibm_ssl中啟用除錯記載。 它與 LogLevel 指引一起使用。 若要在 mod_ibm_ssl中啟用除錯記載,請將 LogLevel 設定為除錯,並在 IBM HTTP Server 配置檔中,在 mod_ibm_sslLoadModule 指引之後,將 SSLTrace 指引新增至廣域範圍。 在調查 mod_ibm_ssl的可疑問題時,通常會在 IBM 支援中心要求時使用此指引。 在一般工作狀況下,建議不要啟用此指引。

名稱 說明
語法 SSLTrace
範圍 廣域
預設值 未啟用 mod_ibm_ssl 除錯記載
模組 mod_ibm_ssl
配置檔中的多個實例 已忽略
注意: 另請參閱 LogLevel 指引
[AIX Solaris HP-UX Linux Windows]

SSLUnknownRevocationStatus

SSLUnknownRevocationStatus 指引指定當 IBM HTTP Server 無法隨時判定撤銷狀態 (透過 CRL 或 OCSP 進入) 時, IBM HTTP Server 如何反應。

名稱 說明
語法 SSLUnknownRevocationStatus ignore | log | log_always | deny
範圍 虛擬主機
預設值 忽略
模組 mod_ibm_ssl
配置檔中的多個實例 針對每部虛擬主機,各允許一個實例
忽略
指定當信號交換完成及撤銷狀態不明時,發出除錯層次訊息。 當 SSL 階段作業回復時,不會重新發出此訊息。
記載
指定當信號交換完成及撤銷狀態不明時,發出通知層次訊息。 當 SSL 階段作業回復時,不會重新發出此訊息。
log_always
指定當信號交換完成及撤銷狀態不明時,發出通知層次訊息。 IBM HTTP Server 會針對後續的信號交換發出相同的訊息。
拒絕
指定當信號交換完成、撤銷狀態不明、階段作業無法回復,以及 HTTPS 連線立即關閉時,發出通知層次訊息。 IBM HTTP Server 會報告後續信號交換的相同訊息。
支援的配置: 每當針對 UnknownRevocation狀態記載訊息時,即會設定 SSL_UNKNOWNREVOCATION_SUBJECT 變數 (內部 SSL 環境變數)。 您可以使用下列語法來記載此變數:
%{SSL_UNKNOWNREVOCATION_SUBJECT}e
SSLUnknownRevocationStatus 指引具有拒絕以外的任何值時,您也可以在 mod_rewrite 表示式中使用該變數。 您可以使用下列變數名稱:
%{ENV:SSL_UNKNOWNREVOCATION_SUBJECT}

SSLV2Timeout 指引

SSLV2Timeout 指引設定 SSL 第 2 版階段作業 ID 的逾時值。

名稱 說明
語法 SSLV2Timeout 60
範圍 廣域基礎和虛擬主機。
預設值 40
模組 mod_ibm_ssl
配置檔中的多個實例 每部虛擬主機和廣域伺服器各一個實例。
0 到 100 秒。

SSLV3Timeout 指引

SSLV3Timeout 指引設定 SSL 第 3 版和 TLS 階段作業 ID 的逾時值。 當重複使用 SSL 階段作業時,不會重設快取 SSL 階段作業的有效期間。

名稱 說明
語法 SSLV3Timeout 1000
範圍 廣域基礎和虛擬主機。

[Windows]可使用虛擬主機範圍或廣域範圍。

[Linux][AIX][HP-UX][Solaris]如果也使用 SSLCacheDisable 指引,則虛擬主機範圍適用。 否則,只能使用廣域範圍。

預設值 120
模組 mod_ibm_ssl
配置檔中的多個實例 每部虛擬主機和廣域伺服器各一個實例。
0 到 86400 秒。

SSLVersion 指引

如果用戶端連接的 SSL 通訊協定版本不是指定的版本,則 SSLVersion 指引會導致物件存取拒絕 403 回應。

在大部分情況下, SSLProtocolDisable 指引是比 SSLVersion 指引更好的選擇,可確保使用特定的 SSL 通訊協定版本。 SSLProtocolDisable 指引可讓用戶端瀏覽器協議另一個通訊協定版本 (如果可能的話) ,而 SSLVersion 指引可讓 IBM HTTP Server 傳送 403 回應,這可能會讓使用者感到困惑。

名稱 說明
語法 SSLVersion ALL
範圍 每個目錄段落各一個。
預設值 無。
模組 mod_ibm_ssl
配置檔中的多個實例 One instance per <目錄> or <位置> stanza.

支援的值: SSLv2|SSLv3|TLSv10|TLSv11|TLSv12

[9.0.5.2 或更新版本]TLSv13

9.0.5.2 版以及更新版本支援所有列出的值,包括 TLSv1.3。 9.0.5.1 版及更舊版本支援所有列出的值,但 TLSv1.3除外。