SSL 需要什么?

SSL 需要什么?

只是一个简单的问题,我有点困惑。
我已经设置了自己的认证机构,我可以创建请求并对其进行签名。但是,我不确定我需要向 Apache 提供什么,目前我有:

CA Private key
CA Certificate
Website Private key
Website Certificate
Website Certificate Request (I think I do not need it, but just to be clear)

直到今天我还在使用 snakeoil 证书,但我决定使用更多的 SSL 服务,CA 看起来是个好的解决方案,所以我的 Apache 配置得很好,但现在我不确定我应该按照以下规则向 Apache 提供什么:

SSLCertificateKeyFile /path/to/Website Private Key
SSLCertificateFile /path/to/CA Certificate

但我得到了

[Mon Dec 27 12:09:33 2010] [warn] RSA server certificate CommonName (CN) `EServer' does NOT match server name!?
[Mon Dec 27 12:09:33 2010] [error] Unable to configure RSA server private key
[Mon Dec 27 12:09:33 2010] [error] SSL Library Error: 185073780 error:0B080074:x509 certificate routines:X509_check_private_key:key values mismatch

我觉得这个警告很奇怪,因为“EServer”是 CA 的常用名称,所以我认为我不应该使用 CA 证书SSLCertificateFile,对吧?

我需要从网站私钥或其他东西创建证书吗?

答案1

我认为您只是混淆了您的 CA 证书和您的网站证书:

SSLCACertificateFile <your CA cert file>
SSLCertificateFile <your website cert file>

您已使用 CA 证书文件配置了网站私钥。这两者不会匹配。

附加信息:
您不必在 apache 中配置 CA 私钥文件,因为它不需要验证您的网站证书文件。它只是签署新的证书请求时需要。但您必须确保每个客户端都知道您的 CA 证书文件。

相关内容