下一步 上一步 目录

5. 故障排除

这里列出一些可能出现的常见问题。

5.1 服务器似乎已启动,但您无法访问安全站点

检查 error_log 文件。如果您没有将虚拟主机设置为写入错误日志,您可能需要重新考虑。示例 SSL 虚拟主机写入错误日志文件。很可能您会在日志末尾看到一些警告和一个错误,基本上说明私钥与证书不匹配。

示例

[Tue Nov 21 09:09:02 2000] [notice] Apache/1.3.14 (Unix) mod_ssl/2.7.1
OpenSSL/0.9.6 configured -- resuming normal operations
[Tue Nov 21 09:09:16 2000] [notice] caught SIGTERM, shutting down
[Tue Nov 21 14:39:54 2000] [notice] Apache/1.3.14 (Unix) mod_ssl/2.7.1
OpenSSL/0.9.6 configured -- resuming normal operations
[Tue Nov 21 14:40:31 2000] [notice] caught SIGTERM, shutting down
[Tue Nov 21 14:43:53 2000] [error] mod_ssl: Init: (esi.fin.equifax.com:443)
Unable to configure RSA server private key (OpenSSL library error follows)
[Tue Nov 21 14:43:53 2000] [error] OpenSSL: error:0B080074:x509 certificate
routines:X509_check_private_key:key values mismatch

如果您收到上述错误消息,则密钥和证书很可能不匹配。请确保您没有使用默认的 server.key 文件。您还应该检查 httpd.conf 文件,以确保指令指向正确的私钥和证书。

您可以检查以确保您的私钥和证书格式正确且相互匹配。为此,请在其中一个终端窗口中给出以下命令以解密私钥,并在另一个终端窗口中解密证书。您将要比较的是每个密钥的模数和指数。如果密钥的模数和指数与证书中的集合匹配,则您已确认您的证书和密钥已正确配对。

如果所有其他方法都失败了,请创建一个新的私钥、CSR 或自签名证书。在执行此操作之前,请查看您的 CA 的重新颁发策略。重新颁发可能会收费。

查看证书的内容

openssl x509 -noout -text -in filename.crt

查看私钥的内容

openssl rsa -noout -text -in filename.key

5.2 客户端浏览器发出证书名称检查警告

最常见的原因是在创建 CSR 时省略了域名开头的“www”。该虚拟主机的“ServerName”指令定义的名称必须与证书提供的域名完全匹配,否则浏览器会告知客户端。例外情况是通配符证书。通配符证书的域名字段看起来像 *.somedomain.com。这使您可以使用一个证书用于 somedomain.com 的任意数量的子域(例如 host1.somedomain.com 和 host2.somedomain.com)。

5.3 客户端浏览器发出证书由不受信任的证书颁发机构签名警告

如果您正在使用自签名证书,您将收到此警告。您的客户端可以选择信任或不信任您的证书。如果您拥有 CA 签名的证书但收到不受信任的警告,您可能需要安装其中间(根)证书。

5.4 SSLEngine on 是无法识别的命令(启动 Apache 时)

如果您没有将 ModSSL 与 Apache 一起编译,则会发出此错误消息。某些 SSL 包使用不同的指令在虚拟主机中启动 SSL。如果您使用的软件包确实使用了不同的指令,您也会收到此错误消息。

5.5 您忘记了您的“PEM 密码”,并且想知道如何重置它

无法重置此密码。唯一的解决方案是记住密码或创建新的私钥。然后,您将需要获取新证书或创建新的自签名证书。


下一步 上一步 目录