证书不受信任?多半是中间证书漏装了

浏览器地址栏一红,跳出一句“您的连接不是私密连接”,绝大多数人的第一反应是证书过期了,转身就去重新买一张。先停一下。证书不受信任这个提示,我碰到的情形里占大头的是另一个原因:服务器上装的那份证书只有域名证书,中间证书没跟着发出去。听着像个小疏漏,但它足以让一半访客看到红色警告,另一半却什么事没有。

SSL证书

证书不受信任,卡住的地方多半是信任链

证书这东西不是签一张就完事。你拿到的域名证书由某个中间证书签发,中间证书又由根证书签发,而根证书早就内置在操作系统和浏览器里。握手的时候,服务器得把自己那张证书和中间证书一起打包发给客户端,客户端才能一层层往上验,一直验到根,才算信任。只发自己那张,客户端就得自己去补中间证书——有的系统缓存里正好有,能补齐;缓存里没有的,链就断在那儿,于是报不受信任。同一张证书,你的电脑正常、别人的手机报警,原因就在这。

先看看证书商给你的包里到底有几个文件

正常下载下来的压缩包,里面一般不止一个文件。域名证书一个,中间证书或者叫 ca_bundle、chain、intermediate 的又一个,有的还顺手塞了根证书。主机面板的上传框通常只让你填一个,很多人顺手就填了第一个,剩下的文件躺在压缩包目录里一直没动过。漏装就是这么来的,不算操作失误,是那个界面根本没提醒你还有第二份东西。

一条命令就能确认是不是漏装

登录服务器跑 openssl s_client -connect www.example.com:443 -servername www.example.com -showcerts,然后数输出里 —–BEGIN CERTIFICATE—– 出现了几次。只出现一次,基本就可以断定是漏装;出现两到三次才是正常的一条链。不想看这一屏输出,把域名丢到在线 SSL 检测工具里跑一遍,报告里会写明证书链不完整之类的字样。curl -vI 也能看个大概,但信息少,不如上面那条命令直接。

Nginx、Apache、面板上怎么把链拼回去

思路很简单:把中间证书接在域名证书后面,合成一个文件。命令行下 cat yourdomain.crt ca_bundle.crt > fullchain.pem 就完事,顺序别反,域名证书必须在前。Nginx 里 ssl_certificate 指向 fullchain.pem,不要再指向只有一张证书的 crt。Apache 2.4.8 之前的版本用 SSLCertificateChainFile 单独指定中间证书,新版本可以直接把链写进 SSLCertificateFile。IIS 麻烦一点,得把中间证书先导入“中间证书颁发机构”,再导出成 p7b 一起装。

用面板的话更省事,证书那一栏通常有个 PEM 格式的大输入框,把域名证书和中间证书按顺序粘进去保存就行。粘完记得重载一次服务,别只点保存就关页面走人,配置没生效你会以为白折腾了。

浏览器能过、微信打不开,这种最容易被忽略

有些情况挺迷惑人:电脑浏览器打开一切正常,微信里点链接打不开,小程序调接口直接报 SSL 错误。原因还是链。桌面浏览器和操作系统有各自的证书缓存,用久了中间证书早就补全了;微信内置浏览器、APP 里的网络库、某些语言的 HTTP 客户端,是按严格模式走的,中间证书缺一段就不干。所以测证书别只拿自己那台天天用的电脑测,那个环境早就被你养熟了。

链补全了还报错,往这几个方向看

一是系统时间。服务器时间跑偏得厉害,有效期校验直接不过关,看着像不受信任,其实是时钟的锅。二是域名对不上,证书只签了 example.com,你用 www.example.com 访问照样红,得翻证书里的 SAN 字段,看两个域名是不是都写进去了。三是根证书的老问题,一些老版本安卓、老 JDK 不认比较新的根,换设备测就正常,这属于兼容性问题,补链也救不了。四是自签名证书,它本来就不在任何信任列表里,浏览器不认是天经地义。五是同一个 IP 上挂多个 HTTPS 站点却没开 SNI,客户端拿到的是隔壁站点的证书。

续期之后,别顺手把旧的链文件留着

证书续期时,中间证书也可能跟着换。有人图省事,续完只替换了域名证书,chain 文件还是上一年那份,跑一阵子风平浪静,等客户端更新缓存才开始零星报错,查起来特别费劲。自动续期的客户端一般会给 fullchain,但配置里指向的到底是 cert 还是 fullchain,值得确认一眼。OCSP 装订也是同样的道理,ssl_trusted_certificate 指的那个文件要包含中间证书,否则装订会静默失败,表面上啥错没有。

下次再遇到这个提示,按三步走:先在服务器上数一遍证书段数,确认发出去的是整条链;再看配置文件指向的是不是带链的那个文件;最后拿一部没访问过这个站的手机,用流量而不是 Wi-Fi 打开试试。三件事做完还没好,再去查域名匹配、系统时间和根证书兼容性。别一上来就重新买证书,钱花了,问题还杵在原地。

【版权声明】:本站内容若无意侵犯到您的权利,请及时与我们联系将尽快删除相关内容!

赞 (0)
爱家的头像爱家
防止网站降权——先堵住这3个漏洞
上一篇 2026-10-22 05:05
网站打开图片显示不出来,问题多半在防盗链
下一篇 2026-10-22 06:18

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

广告合作

QQ:14239236

在线咨询: QQ交谈

邮件:asy@cxas.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信