使用Apache设置SSL证书

我正在尝试在Windows上为我的apache服务器创build自己的CA和服务器证书。

当我启动Apache时,我得到“无法configurationCA证书链!”

Apache的SSLconfiguration设置是:

SSLProtocol -all +SSLv2 SSLCipherSuite SSLv2:+HIGH:+MEDIUM:+LOW:+EXP SSLCertificateFile "C:/data/server/server.crt" SSLCertificateKeyFile "c:/data/server/server.key" SSLCertificateChainFile "c:/data/server/ca.crt" SSLCACertificateFile "c:/data/server/ca.crt" 

而且我基于Apache的“SSL / TLS强encryption:常见问题”生成密钥/安全公告:

生成CA密钥/证书:

 openssl genrsa -out ca.key 1024 openssl req -new -x509 -nodes -sha1 -days 365 -key server.key -out ca.crt 

生成服务器密钥/证书:

 openssl genrsa -out server.key 1024 openssl req -new -key server.key -out server.csr openssl x509 -req -days 365 -in server.csr -CA ca.crt -CAkey ca.key -set_serial 01 -out server.crt 

我已经坚持了几个小时。 任何人都知道我错过了什么? 似乎validation确定

 openssl verify -CAfile ca.crt server.crt 

如果是自签名证书,则不需要SSLCertfificateChainFile指令。 你没有一个真正的链条, 你只有一个根证书和一个自签名的证书,没有中间证书。

此外,您的SSLProtocol行和SSLCipherSuite将导致您的网站成为黑客的喜悦。 您正在启用sslv2和弱/导出级encryption密码。

你确定证书的path是正确的吗? 在我看来,这不是一个有效的Windowspath。 你检查Apache的日志?