![[AIX Solaris HP-UX Linux Windows]](../images/dist.gif)
![[z/OS]](../images/ngzos.gif)
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 已啟用的虛擬主機內明確指定它們,指引才會生效。 例如,SSLCipherSpec 和 Uncompromisable 就是不會合併或複製的其他 SSL 指引。
對於目錄範圍(<Location>、<Directory> 或 htaccess)中指定的 SSL 指引,範圍較廣泛的配置區段會合併至範圍較具體的配置區段。 此種類的一些範例指引包括 SSLCipherBan、SSLCipherRequire、SSLClientAuthRequire 及 SSLVersion。這些指引比先前的指引更不常使用。
除了全面指定的 keyfile 指引,也要儘量避免合併配置。如果有任何配置依賴合併多個配置範圍,請務必測試結果。
- SSLOCSPResponderURL
- SSLOCSPEnable
- Keyfile 指引
- SSLAcceleratorDisable 指引
SSLAllowNonCriticalBasicConstraints 指引
SSLCacheDisable 指引
SSLCacheEnable 指引
SSLCacheErrorLog 指引
SSLCachePath 指引
SSLCachePortFilename 指引
SSLCacheTraceLog 指引
- SSLCipherBan 指引
- SSLCipherRequire 指引
- SSLCipherSpec 指引
- SSLClientAuth 指引
- SSLClientAuthGroup 指引
- SSLClientAuthRequire 指引
- SSLClientAuthVerify 指引
- SSLCRLHostname 指引(已淘汰)
- SSLCRLPort 指引(已淘汰)
- SSLCRLUserID 指引(已淘汰)
- SSLDisable 指引
- SSLEnable 指引
- SSLFakeBasicAuth 指引
SSLFIPSDisable 指引
- SSLFIPSEnable 指引
- SSLInsecureRenegotiation 指引
- SSLPKCSDriver 指引
- SSLProtocolDisable 指引
- SSLProtocolEnable 指引
- SSLProxyEngine 指引
- SSLRenegotiation 指引
- SSLServerCert 指引
- SSLSNIMap
- SSLStashfile 指引
- SSLSuiteBMode
- SSLTrace 指引
SSLUnknownRevocationStatus
- SSLV2Timeout 指引
- SSLV3Timeout 指引
- SSLVersion 指引
SSLOCSPResponderURL
名稱 | 說明 |
---|---|
語法 |
|
範圍 | 虛擬主機 |
預設值 | 已停用 |
模組 | mod_ibm_ssl |
配置檔中的多個實例 | 每部虛擬主機各一個 |
值 | 指向 OCSP 回應端的完整 URL,例如 http://hostname:2560/。 |
即使已配置 CRL 檢查,還是會先執行 OCSP 檢查,再執行任何 CRL 檢查。唯有當 CRL 不明或不確定時,才會進行 CRL 檢查。
如果設定 SSLOCSPResponderURL,當有提供 SSL 用戶端憑證時,IBM HTTP Server 就會使用所提供的 URL 來檢查憑證撤銷狀態。
SSLOCSPEnable
名稱 | 說明 |
---|---|
語法 |
|
範圍 | 虛擬主機 |
預設值 | 已停用 |
模組 | mod_ibm_ssl |
配置檔中的多個實例 | 針對每部虛擬主機,各允許一個實例 |
值 | 無 |
如果有設定 SSLOCSPEnable,而且 SSL 用戶端憑證鏈結包含 AIA 延伸,IBM HTTP Server 就會聯絡 AIA 延伸指出的 OCSP 回應端,以檢查用戶端憑證的撤銷狀態。
如果 OCSP 和 CRL 檢查都已配置,會先執行 OCSP 檢查,再執行任何 CRL 檢查。唯有當 OCSP 檢查不明或不確定時,才會進行 CRL 檢查。
如果 SSLOCSPEnable 和 SSLOCSPResponderURL 都已配置,則會先檢查 SSLOCSPResponderURL 定義的回應端。如果撤銷狀態不明或不確定,IBM HTTP Server 會檢查 SSLOCSPEnable 的 OCSP 回應端。
Keyfile 指引
名稱 | 說明 |
---|---|
語法 | ![]() ![]() ![]() ![]() ![]() ![]() ![]()
|
範圍 | 廣域基礎和虛擬主機 |
預設值 | 無 |
模組 | mod_ibm_ssl |
配置檔中的多個實例 | 每部虛擬主機和廣域伺服器各一個實例 |
值 | 金鑰檔的檔名。
|
![[z/OS]](../images/ngzos.gif)
憑證管理服務 (CMS)
CMS 或資源存取控制機能 (RACF®)
SSLAcceleratorDisable 指引
名稱 | 說明 |
---|---|
語法 | SSLAcceleratorDisable |
範圍 | 虛擬和廣域 |
預設值 | 啟用加速器裝置 |
模組 | mod_ibm_ssl |
配置檔中的多個實例 | 每部虛擬主機各一個實例。 |
值 | 無。您可以將此指引放在配置檔中的任何位置,包括虛擬主機內。在起始設定期間,如果系統判定機器上已安裝加速器裝置,系統就會使用該加速器來增加安全交易數目。此指引不使用引數。 |
![[AIX Solaris HP-UX Linux Windows]](../images/dist.gif)
SSLAllowNonCriticalBasicConstraints 指引
名稱 | 說明 |
---|---|
語法 | SSLAllowNonCriticalBasicConstraints on|off |
範圍 | 廣域伺服器或虛擬主機 |
預設值 | Off |
模組 | mod_ibm_ssl |
配置檔中的多個實例 | 每部虛擬主機和廣域伺服器各一個實例 |
值 | 無。此指引會變更憑證驗證演算法的行為,使得發證者憑證管理中心 (CA) 憑證上的非重要基本限制延伸不會造成驗證失敗。如此可讓您相容於日本政府的 GPKI 規格中,與 RFC3280 衝突的某個層面。 小心: RFC3280 指出,在包含用來驗證憑證數位簽章之公開金鑰的所有 CA 憑證中,此延伸必須顯示為重要延伸。
|
![[AIX]](../images/aixlogo.gif)
![[HP-UX]](../images/hpux.gif)
![[Linux]](../images/linux.gif)
![[Solaris]](../images/solaris.gif)
![[z/OS]](../images/ngzos.gif)
SSLCacheDisable 指引
名稱 | 說明 |
---|---|
語法 | SSLCacheDisable |
範圍 | 每個實體 Apache Server 實例各一個,僅在虛擬主機段落外部啟用。 |
預設值 | 無 |
模組 | mod_ibm_ssl |
配置檔中的多個實例 | 不允許。 |
值 | 無。 |
![[AIX]](../images/aixlogo.gif)
![[HP-UX]](../images/hpux.gif)
![[Linux]](../images/linux.gif)
![[Solaris]](../images/solaris.gif)
![[z/OS]](../images/ngzos.gif)
SSLCacheEnable 指引
名稱 | 說明 |
---|---|
語法 | SSLCacheEnable |
範圍 | 每個實體 Apache Server 實例各一個,僅在虛擬主機段落外部啟用。 |
預設值 | 無 |
模組 | mod_ibm_ssl |
配置檔中的多個實例 | 不允許。 |
值 | 無。 |
![[AIX]](../images/aixlogo.gif)
![[HP-UX]](../images/hpux.gif)
![[Linux]](../images/linux.gif)
![[Solaris]](../images/solaris.gif)
![[z/OS]](../images/ngzos.gif)
SSLCacheErrorLog 指引
名稱 | 說明 |
---|---|
語法 | SSLCacheErrorLog /usr/HTTPServer/logs/sidd_logg |
範圍 | 虛擬主機外部的伺服器配置。 |
預設值 | 無 |
模組 | mod_ibm_ssl |
配置檔中的多個實例 | 不允許。 |
值 | 有效的檔名。 |
![[AIX]](../images/aixlogo.gif)
![[HP-UX]](../images/hpux.gif)
![[Linux]](../images/linux.gif)
![[Solaris]](../images/solaris.gif)
![[z/OS]](../images/ngzos.gif)
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 |
配置檔中的多個實例 | 不允許。 |
值 | 有效的路徑名稱。 |
![[AIX]](../images/aixlogo.gif)
![[HP-UX]](../images/hpux.gif)
![[Linux]](../images/linux.gif)
![[Solaris]](../images/solaris.gif)
![[z/OS]](../images/ngzos.gif)
SSLCachePortFilename 指引
名稱 | 說明 |
---|---|
語法 | SSLCachePortFilename /usr/HTTPServer/logs/siddport |
範圍 | 虛擬主機外部的伺服器配置。 |
預設值 | 如果沒有指定此指引,但啟用快取,伺服器會嘗試使用 <server-root>/logs/siddport 檔案。 注意事項
|
模組 | mod_ibm_ssl |
配置檔中的多個實例 | 不允許。 |
值 | 有效的路徑名稱。Web 伺服器會在啟動期間刪除此檔案;請勿使用現有的檔名。 |
![[AIX]](../images/aixlogo.gif)
![[HP-UX]](../images/hpux.gif)
![[Linux]](../images/linux.gif)
![[Solaris]](../images/solaris.gif)
![[z/OS]](../images/ngzos.gif)
SSLCacheTraceLog 指引
名稱 | 說明 |
---|---|
語法 | SSLCacheTraceLog /usr/HTTPServer/logs/sidd-trace.log |
範圍 | 虛擬主機外部的伺服器配置。 |
預設值 | 無。 |
模組 | mod_ibm_ssl |
配置檔中的多個實例 | 不允許。 |
值 | 有效的路徑名稱。 |
SSLCipherBan 指引
名稱 | 說明 |
---|---|
語法 | SSLCipherBan <cipher_specification> |
範圍 | 每個目錄段落各有多個實例。 |
預設值 | 無。 |
模組 | mod_ibm_ssl |
配置檔中的多個實例 | 每個目錄段落都允許。喜好順序為從上到下。 |
值 | 請參閱 SSL 密碼規格主題,以取得值。 |
SSLCipherRequire 指引
名稱 | 說明 |
---|---|
語法 | 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 版。
SSL 第 2 版密碼預設為無密碼,表示停用通訊協定。其他通訊協定則有一組預設 SSL 密碼,其中不包括空值密碼、匯出密碼和低強度密碼。
當您使用單一引數格式的 SSLCipherSpec 時,在給定密碼有效的所有通訊協定中,都會啟用這些密碼。在第一次為每個通訊協定進行這類變更時,都會捨棄通訊協定的預設密碼。
當您使用多引數格式的 SSLCipherSpec 時,若指定 SSL 通訊協定的名稱(或 "ALL")作為第一個引數,您就可以使用具有下列優點的加強語法:
- 每個出現的 SSLCipherSpec 可以列出多個密碼
- 如果要將個別密碼從目前啟用的密碼集合中移除,可以在密碼名稱前面加上 "-"。
- 在第一次修改給定的通訊協定密碼清單時,可以在密碼名稱前面加上 "+",以將給定的密碼新增至預設值結尾,而不是將其取代。
如果您提供的通訊協定名稱為 "ALL",則針對每個密碼名稱所指定的新增或移除動作,都會套用至該密碼有效的每個通訊協定。
在特殊情況下,如果要以單一指令來清空所有密碼清單,您可以使用 SSLCipherSpec ALL NONE。當您不想要使用預設密碼時,使用這個指令來啟動配置會是個好方法。
名稱 | 說明 |
---|---|
![]() |
![]() |
![]() |
![]() |
範圍 | 伺服器配置、虛擬主機。 |
預設值 | 如果未指定值,伺服器會使用所有可用的非空值、非匯出、非低強度密碼規格。 |
模組 | mod_ibm_ssl |
配置檔中的多個實例 | 允許。喜好順序為從上到下,第一個到最後一個。 |
![]() |
![]() |
![]() |
![]() |
密碼名稱的值 | 請參閱 SSL 密碼規格主題,以取得值。 |
範例 1 | 如果您只要選取幾個密碼,一開始最好先重設所有密碼清單,然後再新增您要使用的密碼:
|
範例 2 | 如果您想要使用大部分預設值,但有一兩個不想要的密碼,您可以將那些密碼從其目前所在的任何清單中移除:
|
SSLClientAuth 指引
名稱 | 說明 |
---|---|
語法 | SSLClientAuth <level required> [crl] |
範圍 | 虛擬主機。 |
預設值 | SSLClientAuth none |
模組 | mod_ibm_ssl |
配置檔中的多個實例 | 每部虛擬主機各一個實例。 |
值 |
如果您指定 0/None 值,則無法使用 CRL 選項。 |
Required_reset | 伺服器需要所有用戶端的有效憑證,如果沒有可用的憑證,伺服器會傳送 SSL 警示至用戶端。這個警示可讓用戶端瞭解 SSL 失敗與用戶端憑證有關,並促使瀏覽器重新提示輸入有關後續存取的用戶端憑證資訊。此選項需要 GSKit 7.0.4.19 或更新版本,或是 z/OS V1R8 或更新版本。 |

- 必須配置靜態 CRL 儲存庫 (SSLCRLHost),使其能夠檢查 CRLDistributionPoint 欄位中的其他 URI 格式。
- 如果您的憑證使用 LDAP 或 HTTP URI 格式的 CertificateDistributionPoint 或 AIA 延伸,請確定 IBM HTTP Server 系統可以建立這種類型的送出連線;您必須調整防火牆的設定。
如果 IBM HTTP Server 在與後端伺服器進行通訊時,發生可回復的錯誤,以及當 IBM HTTP Server 無法判定憑證的撤銷狀態時,就可以提供 SSLUnknownRevocationStatus 指引。除非後端伺服器可以順利指出憑證已撤銷,否則預設行為是繼續處理信號交換。
只有在明確配置的 LDAP 伺服器中可以查詢 CRL,如果無法與後端伺服器通訊,SSL 信號交換就會失敗。
SSLClientAuthGroup 指引
SSLClientAuthGroup 指引可定義所指名的表示式群組,其中包含一組特定用戶端憑證屬性與值的配對。這個指名的群組可供 SSLClientAuthRequire 指引使用。用戶端必須提供通過此表示式的憑證,伺服器才會允許存取受保護的資源。
名稱 | 說明 |
---|---|
語法 | SSLClientAuthGroup group name attribute expression |
範圍 | 伺服器配置、虛擬主機。 |
預設值 | 無。 |
模組 | 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 |
Country | C |
E | |
IssuerCommonName | ICN |
IssuerEmail | IE |
IssuerLocality | IL |
IssuerOrg | IO |
IssuerOrgUnit | IOU |
IssuerPostalCode | IPC |
IssuerStateOrProvince | IST |
Locality | L |
Org | O |
OrgUnit | OU |
PostalCode | PC |
StateOrProvince | ST |
此指引中可以使用完整名稱或簡稱。
SSLClientAuthGroup IBMpeople Org = IBM)
or
SSLClientAuthGroup
NotMNIBM (ST != MN) && (Org = IBM)
群組名稱不能包含空格。如需相關資訊,請參閱SSLClientAuthRequire 指引。
SSLClientAuthRequire 指引
SSLClientAuthRequire 指引可指定屬性值或屬性值群組,必須對照用戶端憑證來驗證這些屬性值之後,伺服器才能容許存取受保護的資源。
名稱 | 說明 |
---|---|
語法 | SSLClientAuthRequire attribute expression |
範圍 | 伺服器配置、虛擬主機 |
預設值 | 無。 |
模組 | mod_ibm_ssl |
配置檔中的多個實例 | 允許。此函數會以 "AND" 來結合這些指引。 |
置換 | AuthConfig |
值 | 邏輯表示式,其中包含以 AND、OR、NOT 和括弧鏈結的屬性檢查。例如:
|
如果您收到的憑證沒有特定屬性,則不會驗證屬性是否相符。即使指定的相符值為 " ",這可能還是與完全沒有屬性不同。SSLClientAuthRequire 指引上指定的任何屬性若無法在憑證上使用,將會導致要求被拒。
完整名稱 | 簡稱 |
---|---|
CommonName | CN |
Country | C |
E | |
IssuerCommonName | ICN |
IssuerEmail | IE |
IssuerLocality | IL |
IssuerOrg | IO |
IssuerOrgUnit | IOU |
IssuerPostalCode | IPC |
IssuerStateOrProvince | IST |
Locality | L |
Org | O |
OrgUnit | OU |
PostalCode | PC |
StateOrProvince | ST |
此指引中可以使用完整名稱或簡稱。
使用者指定特定用戶端憑證屬性的邏輯表示式。如果您必須指定用戶端憑證屬性值的分組,可以依邏輯將 AND、OR 或 NOT 用於多個表示式。以 AND、OR 或 NOT 來鏈結的任何比較,都必須包含在括弧內。有效的運算子包括 '=' 和 '!='。使用者也可以指定群組名稱(使用 SSLClientAuthGroup 指引 來配置)以配置屬性的群組。
SSLClientAuthRequire
((CommonName="John Doe") || (StateOrProvince=MN)) && (Org
!=IBM)
or
SSLClientAuthRequire
(group!=IBMpeople) && (ST=MN)
SSLClientAuthRequire (group
!= IBMpeople) && ("ST= MN")
如需相關資訊,請參閱SSLClientAuthGroup 指引。SSLClientAuthVerify 指引
SSLClientAuthVerify 指引可控制當收到用戶端憑證,但其驗證失敗時(例如過期或撤銷),IBM HTTP Server 是否要使要求失敗。
名稱 | 說明 |
---|---|
語法 | SSLClientAuthVerify statuscode|OFF |
範圍 | 廣域伺服器或虛擬主機。 |
預設值 | 500 |
模組 | mod_ibm_ssl |
配置檔中的多個實例 | 每個目錄段落各一個實例。 |
值 | HTTP 回應狀態碼,或是 OFF |
將這個指引與 SSLClientAuth Optional Noverify 搭配使用,可提供對使用者友善的網頁,而不是預設的瀏覽器錯誤訊息。
如果您使用 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。
每當用戶端憑證驗證失敗,就會在錯誤日誌中,於 loglevel Error 記載兩則訊息。第二則訊息包含原因,例如:
[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 指引可指定「憑證撤銷清冊 (CRL)」資料庫所在之 LDAP 伺服器的 TCP/IP 名稱或位址。
名稱 | 說明 |
---|---|
語法 | <SSLCRLHostName <TCP/IP name or address> |
範圍 | 廣域伺服器或虛擬主機。 |
預設值 | 預設為停用。 |
模組 | mod_ibm_ssl |
配置檔中的多個實例 | 每部虛擬主機和廣域伺服器各一個實例。 |
值 | LDAP 伺服器的 TCP/IP 名稱或位址 |
針對 LDAP 型 CRL 儲存庫的靜態配置,使用 SSLCRLHostname 指引來搭配 SSLCRLPort、SSLCRLUserID 和 SSLStashfile 指引。唯有當明確的 CRLDistributionPoint X.509v3 憑證延伸不存在,或是延伸中指定的伺服器無回應(無法使用)時,才需要使用這些指引來查詢 LDAP 型 CRL 儲存庫。
如果憑證中有 CRLDistributionPoint 延伸存在,且延伸中指定的伺服器有回應(可用),則會以匿名方式查詢 CRLDistributionPoint 中指定的 LDAP 伺服器,而不會使用這些指引。
SSLCRLPort 指引(已淘汰)
SSLCRLPort 指引可指定「憑證撤銷清冊 (CRL)」資料庫所在之 LDAP 伺服器的埠。
名稱 | 說明 |
---|---|
語法 | SSLCRL<port> |
範圍 | 廣域伺服器或虛擬主機。 |
預設值 | 預設為停用。 |
模組 | mod_ibm_ssl |
配置檔中的多個實例 | 每部虛擬主機和廣域伺服器各一個實例。 |
值 | LDAP 伺服器的埠;預設值 = 389。 |
針對 LDAP 型 CRL 儲存庫的靜態配置,使用 SSLCRLPort 指引來搭配 SSLCRLUserID、SSLCRLHostname 和 SSLStashfile 指引。唯有當明確的 CRLDistributionPoint X.509v3 憑證延伸不存在,或是延伸中指定的伺服器無回應(無法使用)時,才需要使用這些指引來查詢 LDAP 型 CRL 儲存庫。
如果憑證中有 CRLDistributionPoint 延伸存在,且延伸中指定的伺服器有回應(可用),則會以匿名方式查詢 CRLDistributionPoint 中指定的 LDAP 伺服器,而不會使用這些指引。
SSLCRLUserID 指引(已淘汰)
SSLCRLUserID 指引可指定要傳送至「憑證撤銷清冊 (CRL)」資料庫所在之 LDAP 伺服器的使用者 ID。
名稱 | 說明 |
---|---|
語法 | SSLCRLUserID <[prompt] <userid> |
範圍 | 廣域伺服器或虛擬主機。 |
預設值 | 如果您未指定使用者 ID,則預設為匿名。 |
模組 | mod_ibm_ssl |
配置檔中的多個實例 | 每部虛擬主機和廣域伺服器各一個實例。 |
值 | LDAP 伺服器的使用者 ID。使用提示選項,使 HTTP 伺服器能夠在啟動期間,提示您輸入用來存取 LDAP 伺服器的密碼。 |
針對 LDAP 型 CRL 儲存庫的靜態配置,使用 SSLCRLUserID 指引來搭配 SSLCRLPort、SSLCRLHostname 和 SSLStashfile 指引。唯有當明確的 CRLDistributionPoint X.509v3 憑證延伸不存在,或是延伸中指定的伺服器無回應(無法使用)時,才需要使用這些指引來查詢 LDAP 型 CRL 儲存庫。
如果憑證中有 CRLDistributionPoint 延伸存在,且延伸中指定的伺服器有回應(可用),則會以匿名方式查詢 CRLDistributionPoint 中指定的 LDAP 伺服器,而不會使用這些指引。
SSLDisable 指引
名稱 | 說明 |
---|---|
語法 | SSLDisable |
範圍 | 廣域伺服器或虛擬主機。 |
預設值 | 預設為停用。 |
模組 | mod_ibm_ssl |
配置檔中的多個實例 | 每部虛擬主機和廣域伺服器各一個實例。 |
值 | 無。 |
SSLEnable 指引
名稱 | 說明 |
---|---|
語法 | SSLEnable |
範圍 | 廣域伺服器或虛擬主機。 |
預設值 | 預設為停用。 |
模組 | mod_ibm_ssl |
配置檔中的多個實例 | 每部虛擬主機和廣域伺服器各一個實例。 |
值 | 無。 |
SSLFakeBasicAuth 指引
SSLFakeBasicAuth 指引會啟用偽造的基本鑑別 (BA) 支援。
名稱 | 說明 |
---|---|
語法 | SSLFakeBasicAuth |
範圍 | 在目錄段落中,與 AuthName、AuthType 和 require 指引搭配使用。 |
預設值 | 無。 |
模組 | mod_ibm_ssl |
配置檔中的多個實例 | 每個目錄段落各一個實例。 |
值 | 無。 |
![[AIX Solaris HP-UX Linux Windows]](../images/dist.gif)
SSLFIPSDisable 指引
名稱 | 說明 |
---|---|
語法 | SSLFIPSDisable |
範圍 | 虛擬和廣域。 |
預設值 | 預設為停用。 |
模組 | mod_ibm_ssl |
配置檔中的多個實例 | 每部虛擬主機和廣域伺服器各一個實例。 |
值 | 無。 |
SSLFIPSEnable 指引
SSLFIPSEnable 指引可啟用「美國聯邦資訊處理標準 (FIPS)」。
這個指令適用於分散式平台。

- 這個指引只在廣域範圍中有效。
- 如果變更指引的值,您必須停止再啟動 IBM HTTP Server,新的值才會生效。如果不重新啟動,新的值不會生效。
名稱 | 說明 |
---|---|
語法 | SSLFIPSEnable |
範圍 | 虛擬和廣域。 |
預設值 | 預設為停用。 |
模組 | mod_ibm_ssl |
配置檔中的多個實例 | 每部虛擬主機和廣域伺服器各一個實例。 |
值 | 無。 |
SSLInsecureRenegotiation 指引
SSLInsecureRenegotiation 指引可決定是否允許不安全的(之前為 RFC5746)SSL 重新協議。任何類型的 SSL 重新協議都不常見,不應將此指引從其預設值 off 變更。
![[AIX Solaris HP-UX Linux Windows]](../images/dist.gif)
指定 on 時,可允許不安全的 SSL 重新協議。指定 off(預設值)時,不允許不安全的 SSL 重新協議。
名稱 | 說明 |
---|---|
語法 | SSLInsecureRenogotiation directive on|off |
範圍 | 虛擬主機 |
預設值 | off |
模組 | mod_ibm_ssl |
配置檔中的多個實例 | 每部虛擬主機和廣域伺服器各一個實例 |
值 | on|off |
![[AIX Solaris HP-UX Linux Windows]](../images/dist.gif)
SSLPKCSDriver 指引
SSLPKCSDriver 指引可識別用來存取 PKCS11 裝置之模組的完整名稱或驅動程式。
名稱 | 說明 |
---|---|
語法 | 用於存取 PKCS11 裝置的模組的完整名稱>。如果模組存在於使用者路徑中,則只要指定模組的名稱。 |
範圍 | 廣域伺服器或虛擬主機。 |
預設值 | 無。 |
模組 | mod_ibm_ssl |
配置檔中的多個實例 | 每部虛擬主機和廣域伺服器各一個實例。 |
值 | 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> 儲存器中。
名稱 | 說明 |
---|---|
語法 | 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(其他任何指引)</VirtualHost>
SSLProtocolEnable 指引
SSLProtocolEnable 指引可以用來啟用個別 SSL 通訊協定。
在分散式平台上,此指引的可用性有限,因為所有可用的通訊協定都已依預設自動啟用。
在 z/OS 上,可以在 z/OS 服務新增對 TLSv1.1 和 TLSv1.2 的支援之後,再使用此指引。在 z/OS 上執行的 IBM HTTP Server 中,預設未啟用 TLSv1.1 和 TLSv1.2 通訊協定。
名稱 | 說明 |
---|---|
語法 | SSLSuiteBMode |
範圍 | 虛擬主機 |
預設值 | 未設定 |
模組 | mod_ibm_ssl |
配置檔中的多個實例 | 每部虛擬主機可允許多個實例。 |
SSLProxyEngine 指引
名稱 | 說明 |
---|---|
語法 | SSLProxyEngine on|off |
範圍 | IP 型虛擬主機 |
預設值 | Off |
模組 | mod_ibm_ssl |
配置檔中的多個實例 | 每部虛擬主機和廣域伺服器各一個 |
值 | on|off |
SSLRenegotiation 指引
名稱 | 說明 |
---|---|
語法 | SSLRenegotiation on|off|LEGACY_AND_RFC5746 |
預設值 | Off |
模組 | mod_ibm_ssl |
環境定義 | 虛擬主機 |
狀態 | 延伸 |
值 | 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 [prompt] certificate_labelSSLServerCert [prompt|ecdsa_certificate_label]certificate_label |
範圍 | IP 型虛擬主機。 |
預設值 | 無,但是 SSL 金鑰儲存庫有自己的預設憑證記號。 |
模組 | mod_ibm_ssl |
配置檔中的多個實例 | 每部虛擬主機和廣域伺服器各一個實例。 |
值 | 憑證標籤。使用 /prompt 選項,使 HTTP 伺服器能夠在啟動期間,提示您輸入 Crypto 記號密碼。不要用定界字元來含括憑證標籤。請確定標籤包含在同一行中;系統不處理前置和尾端空格。 |
- 如果要選擇預設值以外的憑證標籤,請指定單一參數,其值為您想要的憑證標籤。
- 如果要使用加密記號,請指定以冒號區隔的加密記號名稱和憑證標籤 (mytoken:mylabel)。 或者,您可以指定 /prompt 作為第一個參數,以互動方式提示輸入加密記號密碼,而不是使用 SSLStashFile。
- 如果要同時配置 ECDSA 和 RSA 型憑證,請指定兩個憑證標籤,並以空格區隔。預設會使用 RSA 憑證,但是支援 TLS1.2 或以上版本的用戶端可能會在信號交換期間要求 ECDSA 憑證。
SSLServerCert example.com
SSLServerCert myRSA, myECDSA
SSLServerCert swtoken:cert1
SSLSNIMap
SSLSNIMap 指引會將「TLS 伺服器名稱指示 (SNI)」主機名稱對映至憑證標籤。
名稱 | 說明 |
---|---|
語法 | SSLSNIMap hostname cert-label |
範圍 | 虛擬主機 |
預設值 | 已停用 |
模組 | mod_ibm_ssl |
配置檔中的多個實例 | 每部虛擬主機各有多個 |
值 | 用戶端使用的主機名稱,以及所配置之金鑰檔中的憑證標籤 |
SSLSNIMap 指引可讓伺服器根據用戶端要求的主機名稱,以不同的 TLS 憑證來回應。如果是使用名稱型虛擬主機,SSLSNIMap 應該只會出現在針對 ip:port 組合列出的第一個虛擬主機中(一組名稱型虛擬主機的預設虛擬主機)。
SSLStashfile 指引
SSLStashfile 指引指出含檔名的檔案路徑,該檔中包含用來開啟 PKCS11 裝置之加密密碼。
名稱 | 說明 |
---|---|
語法 | SSLStashFile /usr/HTTPServer/mystashfile.sth |
範圍 | 虛擬主機和廣域伺服器。 |
預設值 | 無。 |
模組 | mod_ibm_ssl |
配置檔中的多個實例 | 每部虛擬主機和廣域伺服器各一個實例。 |
值 | 使用 sslstash 指令來建立之 LDAP 及/或 PKCS11 隱藏檔的檔名。 |
SSLStashFile 不會指向使用中之金鑰檔的隱藏檔,因為這是依據金鑰檔的名稱自動計算出來的,是不同類型的隱藏檔。
使用 sslstash 指令(位於 IBM HTTP Server 的 bin 目錄中)來建立 CRL 或加密裝置隱藏檔。您使用 sslstash 指令來指定的密碼,應該與您用來登入 LDAP 伺服器或加密硬體的密碼相同。
- 在發出 sslstash 指令時,未改寫現有的 *.sth 檔案。
- 為 sslstash 指令輸出選擇的檔名,切勿對應於 CMS 金鑰檔 (*.kdb) 的檔名。
用法:sslstash [-c] <directory_to_password_file_and_file_name> <function_name> <password>
- -c:建立新的隱藏檔。如果未指定,現有的檔案會更新。
- File:代表所要建立或更新之檔案的完整名稱。
- Function:指出要使用密碼的功能。有效值包括 crl 或 crypto。
- Password:代表所要隱藏的密碼。
針對 LDAP 型 CRL 儲存庫的靜態配置,使用 SSLStashFile 指引來搭配 SSLCRLPort、SSLCRLHostname 和 SSLCRLUserID 指引。唯有當明確的 CRLDistributionPoint X.509v3 憑證延伸不存在,或是延伸中指定的伺服器無回應(無法使用)時,才需要使用這些指引來查詢 LDAP 型 CRL 儲存庫。
如果憑證中有 CRLDistributionPoint 延伸存在,且延伸中指定的伺服器有回應(可用),則會以匿名方式查詢 CRLDistributionPoint 中指定的 LDAP 伺服器,而不會使用這些指引。
SSLSuiteBMode
SSSLSuiteBMode 指引可以用來配置含括用的虛擬主機,以將 Suite B 設定檔用於 TLS。
此 Suite B 設定檔會大幅減少伺服器可用的簽章演算法及密碼規格。可接受的演算法與密碼組合,會因為相關的標準變更,而隨之變更。128 和 192 引數是指 RFC 6460 中討論的兩個安全等級。
指定這個指引會置換大部分先前指定的 SSL 指引。此指引不會置換 SSLAttributeSet 設定,因為其優先順序較高。所有 Suite B 設定檔都需要伺服器的憑證鏈,才能使用強型 ECC 簽章。RFC 6460 中有提供 Suite B 設定檔的限制說明。
名稱 | 說明 |
---|---|
語法 | SSLSuiteBMode |
範圍 | 虛擬主機 |
預設值 | 未設定 |
模組 | mod_ibm_ssl |
配置檔中的多個實例 | 每部虛擬主機各一次 |
SSLTrace 指引
SSLTrace 指引會在 mod_ibm_ssl 中啟用除錯記載。這會與 LogLevel 指引一起使用。若要在 mod_ibm_ssl 中啟用除錯記載,請將 LogLevel 設為 debug,並將 SSLTrace 指引新增至 IBM HTTP Server 配置檔中的廣域範圍,mod_ibm_ssl 的 LoadModule 指引之後。在調查 mod_ibm_ssl 的可能問題時,通常會使用此指引來要求 IBM 支援。在一般工作狀況下,建議不要啟用此指引。
名稱 | 說明 |
---|---|
語法 | SSLTrace |
範圍 | 廣域 |
預設值 | 未啟用 mod_ibm_ssl 除錯記載 |
模組 | mod_ibm_ssl |
配置檔中的多個實例 | 忽略 |
值 | 無 |
![[AIX Solaris HP-UX Linux Windows]](../images/dist.gif)
SSLUnknownRevocationStatus
SSLUnknownRevocationStatus 指引可指定當 IBM HTTP Server 無法馬上判斷來自 CRL 或 OCSP 的撤銷狀態時,IBM HTTP Server 如何反應。
名稱 | 說明 |
---|---|
語法 | SSLUnknownRevocationStatus ignore | log | log_always | deny |
範圍 | 虛擬主機 |
預設值 | 忽略 |
模組 | mod_ibm_ssl |
配置檔中的多個實例 | 針對每部虛擬主機,各允許一個實例 |
值 |
|
%{SSL_UNKNOWNREVOCATION_SUBJECT}e
當 SSLUnknownRevocationStatus 指引中有 deny 以外的任何值時,您也可以在 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 設定逾時值。
名稱 | 說明 |
---|---|
語法 | SSLV3Timeout 1000 |
範圍 | 廣域基礎和虛擬主機。
|
預設值 | 120 |
模組 | mod_ibm_ssl |
配置檔中的多個實例 | 每部虛擬主機和廣域伺服器各一個實例。 |
值 | 0 到 86400 秒。 |
SSLVersion 指引
如果用戶端與非指定的 SSL 通訊協定版本連接,SSLVersion 指引會導致拒絕存取物件,並產生 403 回應。
在大部分情況下,如果要確保使用特定的 SSL 通訊協定版本,SSLProtocolDisable 指引是比 SSLVersion 指引好的選擇。SSLProtocolDisable 指引可讓用戶端瀏覽器在可能的情況下協議其他通訊協定版本,而 SSLVersion 指引會導致 IBM HTTP Server 傳送 403 回應,這會讓使用者感到混淆。
名稱 | 說明 | |
---|---|---|
語法 | SSLVersion ALL | |
範圍 | 每個目錄段落各一個。 | |
預設值 | 無。 | |
模組 | mod_ibm_ssl | |
配置檔中的多個實例 | 每個 <Directory> 或 <Location> 段落各一個實例。 | |
值 | ![]() |
![]() |