有人可以帮助我了解如何validation我的SSL证书安装是否正确(或解决问题的原因)?
我在我的Apache服务器上安装了GoDaddy SSL证书。 一些用户仍在报告问题(某些版本的IE浏览器显示“此页面无法显示”,没有进一步解释),openssl说在链中有一个“自签名”的证书。 请注意,这不是一个自签名的证书 。 它由GoDaddy签署。 本文有一个相关的答案,不起作用: https : //stackoverflow.com/a/4106224/1723405
以下是我采取的步骤:
步骤1:生成一个私钥
openssl req -out CSR.csr -new -newkey rsa:2048 -nodes -keyout privateKey.key
第二步:转到GoDaddy并重新粘贴CSR.csr 。
第3步:在Apache中安装crt和bundle文件,然后重新启动。
// In <VirtualHost> SSLEngine on SSLProtocol -ALL +SSLv3 +TLSv1 SSLCipherSuite ALL:!ADH:RC4+RSA:+HIGH:+MEDIUM:-LOW:-SSLv2:-EXP SSLVerifyClient none SSLCertificateFile /path/to/allthingsinsurance.net.crt SSLCertificateKeyFile /path/to/privateKey.key SSLCertificateChainFile /path/to/gd_bundle-g2.cr % apachectl restart
步骤4:转到几台机器中的任何一台,但无法使用openssl进行validation。
% openssl s_client -connect allthingsinsurance.net:443 -showcerts -CApath /etc/ssl/certs ...lots of output, shows certs I installed... Verify return code: 19 (self signed certificate in certificate chain)
第5步:转到在线SSLvalidation服务并收到混合报告:
如果whynopadlock.com和ssltest.net抱怨证书,而ssllabs.com说事情没有问题,请检查您的虚拟主机configuration。 SSLLabs.com支持SNI,而whynopadlock.com,ssltest.net和旧版IE则不支持。
当客户端不支持SNI时,Web服务器将无法使用服务器名称,然后该服务器名称将回退到第一个匹配的虚拟主机。 也许你有另一个虚拟主机用于testing目的,优先于您的主要网站。
解决方法是更改此订单或为此主机使用专用IP地址。