如果证书不是由受信任的 CA 签发的,则连接设备(例如,网页浏览器)将检查发行 CA 的证书是否由可信 CA 颁发,等等,直到找到可信 CA 为止 (此时将建立可信的安全连接),或者找不到可信的 CA(此时设备通常会显示错误)。
SSL 证书列表(从根证书到最终用户证书)代表 SSL 证书链。
这是一个实际的例子。 假设您从 Awesome Authority 购买域 example.awesome 的证书。
Awesome Authority 不是根证书颁发机构。 换句话说,它的证书并不直接嵌入到您的 Web 浏览器中,因此它不能被明确信任。
在我们的示例中,SSL 证书链由 6 个证书表示:
证书 1 是您的最终用户证书,即您从 CA 购买的证书。 从 2 到 5 的证书称为中间证书。 证书 6,即位于链条顶部的链接称为根证书。
当您为 example.awesome 安装最终用户证书时,必须捆绑所有中间证书并将它们与最终用户证书一起安装。 如果SSL证书链无效或损坏,则某些设备不会信任您的证书。
不用。根证书通常嵌入您的连接设备中。 在 Web 浏览器的情况下,根证书与浏览器软件一起打包。
安装中级 SSL 证书的过程取决于 Web 服务器和安装证书的环境。
例如,Apache 要求您捆绑中间 SSL 证书,并将该包的位置指定给 SSLCertificateChainFile 配置项。 而 Nginx 要求您将中间 SSL 证书与最终用户证书打包在一个包中。
我们提供一个证书安装向导,其中包含多个服务器和平台的安装说明。 如果您向我们购买证书,您将能够 使用此向导获取并安装服务器所需的文件 。
如果您的服务器不在向导中,您仍然可以通过它获取正确的文件,然后按照 Web 服务器的文档来确定如何正确安装域证书和中间证书。
如果您未安装一个或多个中级 SSL 证书,则会破坏证书链。 这意味着您在特定(最终用户或中间)证书与其颁发者之间建立了缝隙。 当设备找不到证书的受信任颁发者时,证书和从中间证书直到最终证书的整个链都不可信。
因此,您的最终证书不会被信任。 Web浏览器将显示“无效证书”或“证书不可信”错误。
这不可能。 缩短链条的唯一方法是将中间证书提升为根。 理想情况下,您应该推广代表您的证书颁发机构的证书,这样该链只包含两个证书。
但是,根证书与浏览器软件一起打包,如果不是来自浏览器维护人员,则不能更改该列表。
某些浏览器可能会抱怨由非知名证书颁发机构签署的证书,而其他浏览器可能会接受证书而没有问题。 发生这种情况的原因,是颁发机构使用中间证书对服务器证书进行了签名,该中间证书不在与特定浏览器一起分发的知名的的受信任证书颁发机构的证书库中。 在这种情况下,权威机构提供一系列链接的证书,这些证书应连接到已签署的服务器证书。 服务器证书必须出现在组合文件中的链接证书之前:
生成的文件应该在 ssl_certificate 指令中使用:
如果服务器证书和软件包已按照错误顺序连接,Nginx 将无法启动并显示错误消息:
因为 Nginx 已经尝试将私钥与该包的第一个证书一起使用,而不是服务器证书。
浏览器通常存储他们收到的中间证书并由受信任的机构签名,因此主动使用的浏览器可能已经具有所需的中间证书,并且可能不会抱怨没有链接包发送的证书。 为确保服务器发送完整的证书链,可以使用 openssl 命令行实用程序,例如:
(完)
1.购买证书,填写信息,申请SSL证书
补充:apache2教程里面少个chain(SSLCertificateChainFile)
SSLCertificateFile cert/domain name_public.crt # 将domain name_public.crt替换成您证书文件名。
SSLCertificateKeyFile cert/domain name.key # 将domain name.key替换成您证书的秘钥文件名。
SSLCertificateChainFile cert/domain name_chain.crt
3.Nginx_nodejs配置教程
Nodejs配置Https服务
对于申请和安装SSL证书的话可以直接在安信证书选购SSL证书。安信证书支持SSL证书申请和安装一站式服务的,品牌始终坚持与全球知名数字证书颁发机构(CA)深度合作,为国内政企单位和个人提供安全可靠的网络安全产品及服务,提供的核心产品包括可实现身份认证和数据加密功能的服务器证书、代码签名证书、电子邮件证书和文档签名证书等。欢迎分享,转载请注明来源:夏雨云
评论列表(0条)