「您的连接不是私密连接」详解:为什么 HTTPS 证书会报错,以及如何正确配置子域名证书

很多人第一次给网站配置 HTTPS 证书时,都会遇到这个提示:

您的连接不是私密连接

攻击者可能会试图窃取您的信息(例如密码、消息或信用卡信息)。
net::ERR_CERT_COMMON_NAME_INVALID

明明在主域名上是安全的,结果访问一个子域名却提示"不安全",这到底是怎么回事?

别急,我们一步步来讲清楚。


一、问题现象

比如,你的网站主域名访问正常:

复制代码
https://backend.example.cn

但当你访问一个带前缀的子域名时:

复制代码
https://a.backend.example.cn

浏览器却直接报错:

此服务器无法证明它是 a.backend.example.cn

其安全证书来自 example.cn

出现此问题的原因可能是配置有误或您的连接被拦截了。


二、问题原因:证书域名不匹配

HTTPS 报错的根本原因是------当前访问的域名不在证书的有效范围内

举个简单的例子:

  • 你申请的证书是给 example.cn*.example.cn 的;
  • 访问的却是 a.backend.example.cn

浏览器发现证书的"通用名称(Common Name)"与访问的域名不匹配,就会立刻拦截,提示连接不安全。


三、了解域名的层级结构

要弄懂这个问题,我们必须先明白"一级域名"和"二级域名"是什么意思。

从右往左看,一个域名是分层的:

层级 示例 说明
顶级域名 (TLD) .cn 国家或行业域,比如 .com.net.cn
一级域名 (主域名) example.cn 你注册的域名
二级域名 backend.example.cn 一级域名下的子域名
三级域名 a.backend.example.cn 二级域名的子域
四级域名 b.a.backend.example.cn 三级域名的再下一层

四、通配符证书的匹配规则

SSL 证书在签发时,会定义它可以保护哪些域名。

常见的几种类型如下:

证书类型 能保护 不能保护
example.cn(单域) 仅保护 example.cn ❌ 无法保护任何子域
*.example.cn(一级通配) 保护所有一级子域,如 www.example.cnapi.example.cn ❌ 不保护 a.backend.example.cn(三级域)
*.backend.example.cn(二级通配) 保护 a.backend.example.cnb.backend.example.cn ❌ 不保护 backend.example.cn 本身

⚠️ 注意:

通配符只匹配一层,不会跨层。


五、如何验证证书包含哪些域名

如果你想查看服务器证书究竟覆盖哪些域名,可以使用 OpenSSL 命令:

bash 复制代码
echo | openssl s_client -connect backend.example.cn:443 2>/dev/null | openssl x509 -noout -text | grep DNS

你会看到类似这样的输出:

复制代码
DNS:example.cn, DNS:*.example.cn

如果这里没有 a.backend.example.cn,那就说明证书不支持这个子域。


六、解决方案

✅ 方案一:申请新的通配符证书(推荐)

最简单的方式就是申请一个更细层的通配符证书,例如:

复制代码
*.backend.example.cn

这样就能覆盖:

复制代码
a.backend.example.cn
b.backend.example.cn

而不会再报错。


✅ 方案二:直接使用已有的一级子域

如果 a.backend.example.cn 只是临时调试用,可以直接使用:

复制代码
https://backend.example.cn

只要访问的是证书覆盖的域名范围,浏览器就不会警告。


✅ 方案三:申请多域名(SAN)证书

有些证书支持同时绑定多个域名(称为 SAN,多域名证书):

复制代码
example.cn
backend.example.cn
a.backend.example.cn

这种方式虽然麻烦一点,但对于多站点统一管理非常方便。


七、总结对比表

访问地址 属于哪层 若证书为 *.example.cn 是否有效
backend.example.cn 二级域名 ✅ 匹配
a.backend.example.cn 三级域名 ❌ 不匹配
api.example.cn 二级域名 ✅ 匹配
b.a.backend.example.cn 四级域名 ❌ 不匹配

八、结语

当你看到"您的连接不是私密连接"时,不要慌。

它不是服务器坏了,也不是有人在攻击,而是浏览器在保护你------提醒证书与访问的域名不符。

只要你:

  • 了解域名的层级结构;
  • 知道通配符证书的匹配规则;
  • 按需重新签发合适的证书;

这个问题就能轻松解决。


💡 小贴士:

建议为每个主要业务模块(如前端、后端、API)使用独立二级域名;

再针对它们申请相应的 HTTPS 证书。

既安全,又方便后续维护。


相关推荐
network_tester16 小时前
SENT/PSI5传感器TSN集成测试:打通传统传感与未来车载网络的“最后一公里”
数据库·网络协议·tcp/ip·自动驾驶·信息与通信·信号处理·tcpdump
WIZnet16 小时前
W55RP20-EVB-MKR 模块 MicroPython 实战 (11):HTTP 协议与 OneNET 平台数据上云
网络·网络协议·http
桌面运维家16 小时前
校园机房vDisk IDV云桌面建设方案价格参考
linux·服务器·数据库
念越16 小时前
SQL 基础语法复习
数据库·sql·数据库系统概论
ULIi096kr16 小时前
MySQL磁盘爆满快速排查方案:一键查询库表空间、定位占用大户(RDS/自建通用)
数据库·mysql
IT大白鼠16 小时前
BGP路径选择机制:属性分类、作用解析与选路流程全解
网络·网络协议·华为
华山令狐虫16 小时前
告别手写 SQL——DBAPI 企业版 v4.6.0 推出 AI 助手
数据库·人工智能·sql·dbapi
Cx330❀16 小时前
【MySQL基础】库与表的全面操纵指南
linux·服务器·网络·数据库·c++·mysql
天丁o16 小时前
企业 AI Agent 工程化落地:从需求边界到系统集成的 6 个环节
数据库·人工智能
涛思数据(TDengine)16 小时前
从时序数据库到工业AI:涛思数据参编“人工智能+工业软件”评价规范,推动工业数据标准
大数据·数据库·人工智能·时序数据库·tdengine·涛思数据·工业数据库