我在服务器上安装ssl证书时遇到问题。vhost文件如下所示
`<VirtualHost <ip>:443>
DocumentRoot /var/www/html2
ServerName www.yourdomain.com
SSLEngine on
SSLCertificateFile /path/to/your_domain_name.crt
SSLCertificateKeyFile /path/to/your_private.key
SSLCertificateChainFile /path/to/YourIntermediateCertificate.crt
</VirtualHost>`
我已经尝试SSL检查器和结果如下。
它显示的错误是
并非所有Web浏览器都信任此证书。您可能需要安装一个中间/链证书以将其链接到一个受信任的根证书。Learn more about this error。解决此问题的最快方法是与您的SSL提供商联系。
已经安装了中间证书。映像中服务器的公用名应该与主机名相同。我不确定为什么是“CloudFlare Origin Certificate”。需要帮助解决此问题。谢谢!!
1条答案
按热度按时间e3bfsja21#
我已经研究并找到了这个问题的答案。
要解决此问题,我们需要使用cloudflare dashboard为所有A、AAAA和CNAME记录启用代理。以下是启用代理的原因说明。
通常,请求直接命中源(服务器)并提供响应。为了加密此通信,我们使用SSL证书。但是,SSL证书也用于标识源服务器。在上述情况下,没有提供链证书文件来标识源服务器,即yourdomain.com,而是将证书颁发给cloudflare。
在启用代理后,请求命中cloudflare,同样的请求被发送到源服务器,来自源服务器的响应被cloudflare代理接收并发送给用户。这样用户的浏览器认为cloudflare代理是源服务器,并识别cloudflare,因为它有自己的ssl(我们不需要麻烦)。
启用代理后,不需要在源服务器上安装任何链式证书文件,只需要安装cloudflare颁发的服务器证书即可。