兼容性
本页涵盖了mod_ssl与其他SSL解决方案之间的向后兼容性。mod_ssl并非Apache的唯一SSL解决方案;还有(或曾经提供)另外四个产品:Ben Laurie的免费可用的Apache-SSL(最初是mod_ssl的来源,始于1998年),Red Hat的商业安全Web服务器(基于mod_ssl),Covalent的商业Raven SSL模块(也基于mod_ssl),最后是C2Net(现在是Red Hat)的商业产品Stronghold(基于一个不同的演进分支,从Stronghold 2.x开始命名为Sioux,并从Stronghold 3.x开始基于mod_ssl)。
mod_ssl主要提供所有其他解决方案功能的超集,因此很容易从较旧的模块之一迁移到mod_ssl。较早的SSL解决方案使用的配置指令和环境变量名称与mod_ssl中使用的指令不同。此处包含映射表,以提供mod_ssl使用的等效表。
配置指令
表1给出了Apache-SSL 1.x和mod_ssl 2.0.x使用的配置指令之间的映射。由于这些接口中的特殊功能(mod_ssl不提供),因此Sioux 1.x和Stronghold 2.x的映射仅是部分的。
表1:配置指令映射
Old Directive | mod_ssl Directive | Comment |
---|---|---|
Apache-SSL 1.x & mod_ssl 2.0.x compatibility: | ||
SSLEnable | SSLEngine on | compactified |
SSLDisable | SSLEngine off | compactified |
SSLLogFile file | Use per-module LogLevel setting instead. | |
SSLRequiredCiphers spec | SSLCipherSuite spec | renamed |
SSLRequireCipher c1... | SSLRequire %{SSL_CIPHER}in{" c1",...} | generalized |
SSLBanCipher c1... | SSLRequire not(%{SSL_CIPHER}in{" c1",...}) | generalized |
SSLFakeBasicAuth | SSLOptions +FakeBasicAuth | merged |
SSLCacheServerPath dir | - | functionality removed |
SSLCacheServerPort integer | - | functionality removed |
Apache-SSL 1.x compatibility: | ||
SSLExportClientCertificates | SSLOptions +ExportCertData | merged |
SSLCacheServerRunDir dir | - | functionality not supported |
Sioux 1.x compatibility: | ||
SSL_CertFile file | SSLCertificateFile file | renamed |
SSL_KeyFile file | SSLCertificateKeyFile file | renamed |
SSL_CipherSuite arg | SSLCipherSuite arg | renamed |
SSL_X509VerifyDir arg | SSLCACertificatePath arg | renamed |
SSL_Log file | - | Use per-module LogLevel setting instead. |
SSL_Connect flag | SSLEngine flag | renamed |
SSL_ClientAuth arg | SSLVerifyClient arg | renamed |
SSL_X509VerifyDepth arg | SSLVerifyDepth arg | renamed |
SSL_FetchKeyPhraseFrom arg | - | not directly mappable; use SSLPassPhraseDialog |
SSL_SessionDir dir | - | not directly mappable; use SSLSessionCache |
SSL_Require expr | - | not directly mappable; use SSLRequire |
SSL_CertFileType arg | - | functionality not supported |
SSL_KeyFileType arg | - | functionality not supported |
SSL_X509VerifyPolicy arg | - | functionality not supported |
SSL_LogX509Attributes arg | - | functionality not supported |
Stronghold 2.x compatibility: | ||
StrongholdAccelerator engine | SSLCryptoDevice engine | renamed |
StrongholdKey dir | - | functionality not needed |
StrongholdLicenseFile dir | - | functionality not needed |
SSLFlag flag | SSLEngine flag | renamed |
SSLSessionLockFile file | SSLMutex file | renamed |
SSLCipherList spec | SSLCipherSuite spec | renamed |
RequireSSL | SSLRequireSSL | renamed |
SSLErrorFile file | - | functionality not supported |
SSLRoot dir | - | functionality not supported |
SSL_CertificateLogDir dir | - | functionality not supported |
AuthCertDir dir | - | functionality not supported |
SSL_Group name | - | functionality not supported |
SSLProxyMachineCertPath dir | SSLProxyMachineCertificatePath dir | renamed |
SSLProxyMachineCertFile file | SSLProxyMachineCertificateFile file | renamed |
SSLProxyCipherList spec | SSLProxyCipherSpec spec | renamed |
环境变量
表2中给出了较旧的SSL解决方案使用的环境变量名称与mod_ssl使用的名称之间的映射。
表2:环境变量推导
旧变量 | mod_ssl变量 | 评论 |
---|---|---|
SSL_PROTOCOL_VERSION | SSL_PROTOCOL | 重命名 |
SSLEAY_VERSION | SSL_VERSION_LIBRARY | 重命名 |
HTTPS_SECRETKEYSIZE | SSL_CIPHER_USEKEYSIZE | 重命名 |
HTTPS_KEYSIZE | SSL_CIPHER_ALGKEYSIZE | 重命名 |
HTTPS_CIPHER | SSL_CIPHER | 重命名 |
HTTPS_EXPORT | SSL_CIPHER_EXPORT | 重命名 |
SSL_SERVER_KEY_SIZE | SSL_CIPHER_ALGKEYSIZE | 重命名 |
SSL_SERVER_CERTIFICATE | SSL_SERVER_CERT | 重命名 |
SSL_SERVER_CERT_START | SSL_SERVER_V_START | 重命名 |
SSL_SERVER_CERT_END | SSL_SERVER_V_END | 重命名 |
SSL_SERVER_CERT_SERIAL | SSL_SERVER_M_SERIAL | 重命名 |
SSL_SERVER_SIGNATURE_ALGORITHM | SSL_SERVER_A_SIG | 重命名 |
SSL_SERVER_DN | SSL_SERVER_S_DN | 重命名 |
SSL_SERVER_CN | SSL_SERVER_S_DN_CN | 重命名 |
SSL_SERVER_EMAIL | SSL_SERVER_S_DN_Email | 重命名 |
SSL_SERVER_O | SSL_SERVER_S_DN_O | 重命名 |
SSL_SERVER_OU | SSL_SERVER_S_DN_OU | 重命名 |
SSL_SERVER_C | SSL_SERVER_S_DN_C | 重命名 |
SSL_SERVER_SP | SSL_SERVER_S_DN_SP | 重命名 |
SSL_SERVER_L | SSL_SERVER_S_DN_L | 重命名 |
SSL_SERVER_IDN | SSL_SERVER_I_DN | 重命名 |
SSL_SERVER_ICN | SSL_SERVER_I_DN_CN | 重命名 |
SSL_SERVER_IEMAIL | SSL_SERVER_I_DN_Email | 重命名 |
SSL_SERVER_IO | SSL_SERVER_I_DN_O | 重命名 |
SSL_SERVER_IOU | SSL_SERVER_I_DN_OU | 重命名 |
SSL_SERVER_IC | SSL_SERVER_I_DN_C | 重命名 |
SSL_SERVER_ISP | SSL_SERVER_I_DN_SP | 重命名 |
SSL_SERVER_IL | SSL_SERVER_I_DN_L | 重命名 |
SSL_CLIENT_CERTIFICATE | SSL_CLIENT_CERT | 重命名 |
SSL_CLIENT_CERT_START | SSL_CLIENT_V_START | 重命名 |
SSL_CLIENT_CERT_END | SSL_CLIENT_V_END | 重命名 |
SSL_CLIENT_CERT_SERIAL | SSL_CLIENT_M_SERIAL | 重命名 |
SSL_CLIENT_SIGNATURE_ALGORITHM | SSL_CLIENT_A_SIG | 重命名 |
SSL_CLIENT_DN | SSL_CLIENT_S_DN | 重命名 |
SSL_CLIENT_CN | SSL_CLIENT_S_DN_CN | 重命名 |
SSL_CLIENT_EMAIL | SSL_CLIENT_S_DN_Email | 重命名 |
SSL_CLIENT_O | SSL_CLIENT_S_DN_O | 重命名 |
SSL_CLIENT_OU | SSL_CLIENT_S_DN_OU | 重命名 |
SSL_CLIENT_C | SSL_CLIENT_S_DN_C | 重命名 |
SSL_CLIENT_SP | SSL_CLIENT_S_DN_SP | 重命名 |
SSL_CLIENT_L | SSL_CLIENT_S_DN_L | 重命名 |
SSL_CLIENT_IDN | SSL_CLIENT_I_DN | 重命名 |
SSL_CLIENT_ICN | SSL_CLIENT_I_DN_CN | 重命名 |
SSL_CLIENT_IEMAIL | SSL_CLIENT_I_DN_Email | 重命名 |
SSL_CLIENT_IO | SSL_CLIENT_I_DN_O | 重命名 |
SSL_CLIENT_IOU | SSL_CLIENT_I_DN_OU | 重命名 |
SSL_CLIENT_IC | SSL_CLIENT_I_DN_C | 重命名 |
SSL_CLIENT_ISP | SSL_CLIENT_I_DN_SP | 重命名 |
SSL_CLIENT_IL | SSL_CLIENT_I_DN_L | 重命名 |
SSL_EXPORT | SSL_CIPHER_EXPORT | 重命名 |
SSL_KEYSIZE | SSL_CIPHER_ALGKEYSIZE | 重命名 |
SSL_SECKEYSIZE | SSL_CIPHER_USEKEYSIZE | 重命名 |
SSL_SSLEAY_VERSION | SSL_VERSION_LIBRARY | 重命名 |
SSL_STRONG_CRYPTO | - | mod_ssl不支持 |
SSL_SERVER_KEY_EXP | - | mod_ssl不支持 |
SSL_SERVER_KEY_ALGORITHM | - | mod_ssl不支持 |
SSL_SERVER_KEY_SIZE | - | mod_ssl不支持 |
SSL_SERVER_SESSIONDIR | - | mod_ssl不支持 |
SSL_SERVER_CERTIFICATELOGDIR | - | mod_ssl不支持 |
SSL_SERVER_CERTFILE | - | mod_ssl不支持 |
SSL_SERVER_KEYFILE | - | mod_ssl不支持 |
SSL_SERVER_KEYFILETYPE | - | mod_ssl不支持 |
SSL_CLIENT_KEY_EXP | - | mod_ssl不支持 |
SSL_CLIENT_KEY_ALGORITHM | - | mod_ssl不支持 |
SSL_CLIENT_KEY_SIZE | - | mod_ssl不支持 |
自定义日志功能
启用mod_ssl时,自定义日志格式的附加功能存在mod_log_config
于参考章节中。旁边的``%{
VARNAME}x
“”延伸格式,可用于扩大由任何模块提供的任何变量函数,附加的加密``%{
名}c
“”加密格式函数存在为了向后兼容。表3中列出了当前实现的函数调用。
表3:自定义日志密码功能
函数调用 | 描述 |
---|---|
%...{version}c | SSL协议版本 |
%...{cipher}c | SSL密码 |
%...{subjectdn}c | 客户证书主题专有名称 |
%...{issuerdn}c | 客户证书颁发者的专有名称 |
%...{errcode}c | 证书验证错误(数字) |
%...{errstr}c | 证书验证错误(字符串) |