只是一个简单的问题,我有点困惑。
我已经设置了自己的认证机构,我可以创建请求并对其进行签名。但是,我不确定我需要向 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 证书文件。