通配符证书不支持IP地址,必须使用SAN证书并显式列出IP条目(如IP:192.168.1.100)作为Subject Alternative Name,CN字段无效;公网IP可由主流CA签发,内网IP需特定CA及OV以上验证;部署时server_name须匹配具体IP,浏览器访问也必须精确对应。
通配符证书(如 *.example.com)天生不支持 IP 地址,这是由 TLS 协议标准和 CA/B 论坛基线要求决定的——通配符只能匹配域名层级结构,不能用于 IP 地址。想用 HTTPS 保护 IP,必须绕过通配符这条路,改用明确声明 IP 的方式。
IP 地址必须作为 Subject Alternative Name(SAN)字段中的 IP 类型条目 写入证书,而不是放在 CN 或用通配符表示。生成 CSR 时需强制指定:
subjectAltName=IP:192.168.1.100(IPv4)或 IP:2001:db8::1(IPv6)192.168.1.*
不是所有 IP 都能申请成功,关键看地址类型和 CA 政策:
Nginx/Apache 等服务器不会自动识别证书里的 IP SAN,需手动对齐:
server_name 指令必须写成具体 IP(如 server_name 192.168.1.100;),不能留空或写域名https://192.168.1.100,若输错一位数字或混用 HTTP,会触发证书不匹配警告当公有 CA 不支持某类 IP,或审批周期太长时,可自建 PKI: