logo
GeekFormat

SSL证书检测

证书探测

直接从服务端发起 TLS 握手,读取证书、协商协议与剩余有效期。

在线检测SSL/TLS证书,输入域名即可查看证书是否有效、域名是否匹配、剩余天数、TLS版本、加密套件和SAN列表,后端发起握手无CORS问题。

相关推荐

适用场景

  • 网站上线前/证书续期后,快速验证HTTPS是否正常生效
  • 证书到期预警:定期检查剩余天数,避免意外过期导致访问中断
  • 排查浏览器HTTPS错误:定位是过期、域名不匹配还是证书链问题
  • CDN/反向代理部署后验证边缘节点证书是否正确加载
  • 检查TLS协议版本和加密套件是否满足安全合规要求
  • 多域名证书部署后验证SAN列表是否覆盖所有目标域名

功能特点

  • 后端TLS握手:从服务器直接发起TLS连接,无浏览器CORS限制,可检测任意公网域名
  • 授权状态即时判断:证书是否有效、域名是否匹配、授权错误信息一目了然
  • 剩余天数颜色预警:>30天绿色、7-30天黄色、<7天红色,续期时机快速判断
  • 核心配置一览:TLS协议版本、加密套件(Cipher)、ALPN协议协商结果直接可见
  • SAN列表完整展示:所有主题备用名称以标签形式列出,超过8个可展开查看全部
  • 双指纹一键复制:SHA-1和SHA-256指纹单独展示并支持一键复制
  • 完整JSON导出:可展开查看完整证书JSON结构,支持一键复制用于深度排查和存档

使用方法

  1. 输入需要检测的域名(如 geekformat.com,不带https://前缀)
  2. 点击「检查证书」按钮,等待1-3秒获取TLS握手结果
  3. 首先查看授权状态(绿色有效/红色失效)和剩余天数颜色
  4. 检查TLS版本、Cipher、ALPN协商是否符合预期
  5. 查看Subject/Issuer、有效期、SAN列表确认证书信息正确
  6. 如需深度排查,展开JSON详情查看完整证书结构并复制存档

常见问题

为什么需要检测SSL证书?

SSL证书过期、域名不匹配、配置错误是HTTPS网站最常见的故障类型。证书过期后浏览器会显示「不安全」警告导致访客流失,Google搜索排名也会受影响。定期检测和提前续期是保障HTTPS正常运行的基本运维工作。

证书检测和SSL Labs有什么区别?

SSL Labs做深度评分(包含协议、套件、漏洞等全方位测试,耗时约2分钟),本工具做快速基础检测(1-3秒返回结果),覆盖证书有效性、有效期、TLS版本、加密套件、SAN列表等核心信息,适合上线前快速验证、续期确认、错误排查。

为什么浏览器能直接访问但本工具检测失败?

可能原因:1) 网站屏蔽了海外IP(检测服务器在海外);2) 服务器做了SNI区分但配置不完整;3) 使用了企业内网自签名证书;4) 防火墙拦截了检测节点。检测失败不代表证书有问题,需要结合具体错误信息判断。

TLS 1.2和TLS 1.3有什么区别?

TLS 1.3(2018年,RFC 8446)是最新版本,握手速度从TLS 1.2的2-RTT提升到1-RTT甚至0-RTT,移除了RSA密钥交换、RC4、SHA-1等不安全算法,默认启用前向保密(Forward Secrecy),安全性和性能都有明显提升。新部署建议优先支持TLS 1.3,保留TLS 1.2兼容老客户端。

证书还有多少天应该续期?

建议在到期前30天开始准备续期,至少提前7天完成部署。工具使用颜色预警:>30天绿色(正常)、7-30天黄色(应续期)、<7天红色(紧急)。Let's Encrypt证书有效期90天,建议配置自动续期。

Let's Encrypt

什么是SAN列表?为什么重要?

SAN(Subject Alternative Name,主题备用名称)是证书中声明允许使用的域名/IP列表。现代浏览器(Chrome 58+)已不再信任Common Name(CN)字段,只检查SAN。如果访问的域名不在SAN列表中,浏览器会报「域名不匹配」错误。一张证书可以通过SAN覆盖多个域名(如example.com、www.example.com、api.example.com)。

为什么需要查看证书指纹?

证书指纹(SHA-1/SHA-256)是证书内容的哈希值,可用于HPKP(已废弃)、证书固定(Certificate Pinning)、以及人工验证部署的证书是否与预期一致——例如确认CDN是否已正确加载新证书,或在多台服务器间验证证书是否相同。注意:SHA-1指纹仅用于标识,不应用于安全校验。

什么是SSL/TLS证书检测?

SSL/TLS证书检测是通过从客户端发起TLS握手,获取并分析目标服务器返回的证书信息,从而判断HTTPS配置是否正确的过程。核心检查项包括:证书是否在有效期内、访问的域名是否在证书允许列表中(SAN匹配)、证书链是否完整可信任、使用的TLS协议版本和加密套件是否安全等。

**为什么证书检测如此重要?** SSL证书是HTTPS的信任基础,一旦证书出现问题(最常见的是过期),浏览器会直接拦截访问,显示「您的连接不是私密连接」红色警告页面,对网站流量、转化率、SEO排名和品牌信任都会造成直接打击。根据监测,证书过期是HTTPS故障中最常见的原因,约占所有HTTPS事故的40%以上。

**和直接在浏览器中访问有什么不同?** 浏览器访问时可能因为缓存、HSTS、企业代理、客户端证书等因素产生偏差;而证书检测工具从独立节点发起标准TLS握手,返回的是客观、标准化的证书信息,适合运维验证场景。本工具从后端服务器直接发起TLS握手,**没有浏览器CORS限制**,可以检测任意公网可达的HTTPS域名。

**本工具检测的核心信息**:证书授权状态(是否有效)、authorizationError具体错误信息、TLS协议版本(TLS 1.2/1.3)、协商的加密套件(Cipher)、ALPN协议协商结果(h2/http/1.1)、证书颁发者(Subject/Issuer)、有效期起止日期(validFrom/validTo)、剩余天数(带颜色预警)、SAN主题备用名称列表、SHA-1/SHA-256指纹、响应时间,以及完整JSON详情。

检测结果通常在1-3秒返回,适合上线前快速验证、续期确认、故障排查等场景。如需深度评分(如SSL Labs的A+-F评级,包含重协商、漏洞测试、协议支持度等),建议配合SSL Labs Server Test使用。

术语表

SSL/TLS
SSL(Secure Sockets Layer)是网景1990年代开发的加密协议,后由IETF标准化更名为TLS(Transport Layer Security)。SSL 3.0及以前版本均已废弃,当前实际使用的是TLS 1.2和TLS 1.3,但习惯上仍常称「SSL证书」。
HTTPS
HTTP over TLS,在HTTP与TCP之间加入TLS加密层,提供数据加密、服务器身份认证和内容完整性保护。Google搜索对HTTPS站点有排名加权,Chrome对非HTTPS站点标记「不安全」。
SAN (Subject Alternative Name)
X.509证书扩展字段,列出该证书允许使用的所有域名和IP地址。现代浏览器(Chrome 58+)只检查SAN,不再看Common Name(CN)。一张SAN证书可以同时保护多个域名。
证书链 (Certificate Chain)
从叶子证书(服务器证书)到中间CA证书,再到根CA证书的信任链。服务器必须发送叶子证书+中间证书,浏览器通过预装的根证书验证链的完整性。缺失中间证书是常见配置错误。
ALPN (Application-Layer Protocol Negotiation)
TLS扩展,允许在TLS握手阶段协商应用层协议(如h2代表HTTP/2、http/1.1代表HTTP/1.1、h3代表HTTP/3)。握手完成后直接使用协商好的协议,无需额外往返。
Cipher Suite(加密套件)
TLS握手时协商的一组加密算法组合,包含密钥交换算法、认证算法、对称加密算法和哈希算法,如TLS_AES_256_GCM_SHA384。安全配置应优先使用AEAD套件(如GCM、ChaCha20-Poly1305)。
Let's Encrypt
由ISRG运营的免费、自动化、开放的证书颁发机构(CA),2016年正式推出,已签发超过30亿张证书,极大降低了HTTPS部署门槛。证书有效期90天,通过ACME协议自动续期。Let's Encrypt官网
证书指纹 (Fingerprint)
对证书DER编码内容计算的哈希值,常用SHA-1和SHA-256。指纹用于唯一标识一张证书,可用于证书固定(Pinning)和多节点一致性验证。SHA-1因碰撞风险已不推荐用于安全用途,但仍广泛用于标识。
SNI (Server Name Indication)
TLS扩展,在握手阶段客户端就发送要访问的域名,使同一IP的服务器可以部署多个不同域名的证书(类似HTTP的Host头)。SNI是现代虚拟主机HTTPS的基础,未配置SNI的服务器会返回默认证书,可能导致域名不匹配错误。
前向保密 (Forward Secrecy / PFS)
一种安全属性:即使服务器私钥日后泄露,也无法解密之前记录的加密会话流量。通过ECDHE等临时密钥交换算法实现,是TLS 1.3的强制要求,也是现代安全配置的推荐标准。

TLS协议版本历史与现状

协议版本发布年份当前状态说明
SSL 1.0-3.01995-1996❌ 已废弃/不安全存在POODLE等严重漏洞,所有现代浏览器已禁用
TLS 1.01999❌ 已废弃BEAST、CRIME等漏洞,PCI DSS 2018起禁止使用
TLS 1.12006❌ 已废弃RFC 8996正式废弃,Chrome/Firefox 2020起移除支持
TLS 1.22008⚠️ 广泛支持(过渡)当前部署最广,兼容性最好,但存在部分弱加密套件风险
TLS 1.32018 (RFC 8446)✅ 推荐使用握手更快(1-RTT/0-RTT)、移除弱算法,现代浏览器首选

证书过期颜色预警与处理建议

剩余天数状态颜色建议操作
>30天🟢 绿色(正常)无需操作,定期检查即可
7-30天🟡 黄色(预警)尽快启动续期流程,确保在过期前完成替换
<7天🔴 红色(紧急)立即续期,过期后浏览器会拦截访问
0天/已过期🔴 红色(已过期)证书已失效,用户访问会看到安全警告,必须立即处理

常见SSL错误类型排查

错误类型常见原因解决方向
证书过期 (expired)证书超出validTo日期未续期及时续期并部署新证书
域名不匹配 (name mismatch)证书SAN列表中没有当前访问域名重新签发包含目标域名的证书,或检查CDN回源配置
证书链不完整 (incomplete chain)服务器未正确配置中间证书将中间证书与叶子证书合并部署
自签名证书 (self-signed)证书由私有CA签发,未经过公开信任使用Let's Encrypt等公开CA签发证书
不受信任的颁发者 (untrusted issuer)CA根证书不在浏览器信任库中更换为受信任CA签发的证书

Authoritative References