测验:SSL 终止与证书
浏览器正常,只有对方系统的 HTTP 客户端 SSL 验证失败。最可能的原因是什么?
- 服务器证书已过期,浏览器使用缓存结果
- 服务器只支持 TLS 1.3,旧客户端协商失败
- 证书没有 SAN,被主机名验证拒绝
- 缺少中间证书;浏览器会用缓存或 AIA 补齐,服务器间客户端不会
nginx 无法启动并报 key values mismatch,如何在 30 秒内确认?
- 先检查证书有效期
- 重装 nginx
- 检查端口是否被占用
- 分别提取证书和密钥的 modulus 哈希并比较
制作 fullchain.pem 时,文件内证书的正确顺序是什么?
- 服务器证书 → 中间 CA(客户端已有 Root)
- Root CA → 中间 CA → 服务器证书
- 顺序无关
- 中间 CA → 服务器证书
现代浏览器为何拒绝只有 CN 域名、没有 SAN 的证书?
- CN 已从 X.509 移除,无法解析
- 域名验证已转向 SAN,CN 仅作参考
- CN 最长 64 字符,容纳不了长域名
- CN 不在签名范围内,无法防伪
证书到期监控为何使用 openssl x509 -checkend <초>?
- 以易读格式输出证书,便于肉眼检查
- 剩余时间短于指定秒数时以非零代码退出,无需解析日期
- 临近到期会自动提交续期请求
- 同时验证中间证书链
旧对接系统只支持 TLS 1.0,最合适的处理是什么?
- 为整个服务的 ssl_protocols 添加 TLSv1
- 关闭 TLS,改用 HTTP
- 为该对象单独开端口或 server 块,隔离例外并明确期限
- 改用自签证书