# 证书透明度（CT）日志查询：找出域名的所有证书

> 在证书透明度日志里搜索域名，列出为它和子域名签发过的所有公开信任证书，含签发者、有效期和 SAN，发现异常签发。

Source: https://ssl.sh/zh/tools/ct-search/
Last updated: 2026-11-10

直接从证书透明度日志里列出公开 CA 为某个域名及其子域名签发过的证书。

CT 日志查询会列出公开证书颁发机构为某个域名记录在案的所有证书。输入 `example.com`，点 **查询 CT 日志**，结果页会显示这个域名及其子域名的证书，包括签发者、有效期和 SAN。

## 怎么用

1. 输入注册的主域名，比如 `example.com`，开头的 `*.` 会被忽略。
2. 点 **查询 CT 日志**。
3. 查看列表：新证书在前，每张都标明签发的 CA。

## 什么是证书透明度

[证书透明度](https://ssl.sh/zh/glossary/certificate-transparency/)让证书签发变成公开可查的事情。CA 签发 TLS 证书时，要把证书提交给多个独立的日志，并把日志返回的签名凭证（[SCT](https://ssl.sh/zh/glossary/sct/)）嵌进证书。Chrome 和苹果系统会拒绝没有足够有效 SCT 的公开证书，所以 CA 签发的几乎所有证书都会进日志。

## 能用来做什么

- **发现异常签发**：出现你没申请过的证书就要警惕。配合 [CAA 记录](https://ssl.sh/zh/tools/caa-generator/)，只允许你指定的 CA 签发。
- **找出被遗忘的主机**：早年的测试环境、管理后台经常能在 CT 里翻出来，再用[批量 SSL 检查](https://ssl.sh/zh/tools/bulk-ssl-checker/)逐个排查。
- **核对续期情况**：比如换了 ACME 客户端或从云厂商证书换成 Let's Encrypt 后，确认每张证书何时、由哪家 CA 签发。

## 局限

CT 只覆盖公开信任 CA 签发的证书。自建 CA、自签名证书和大部分客户端证书都不会出现在日志里。日志是公开的，不要把保密项目的名字写进证书的 SAN。


## FAQ

**为什么同一张证书出现两条记录？**

CA 通常先把“预签证书”（带一个特殊的 poison 扩展）提交到日志，再签发正式证书，两者都会被记录，所以一次签发可能出现两条。

**发现一张不是我申请的证书，怎么办？**

先确认是不是同事、主机商或 CDN 申请的（CDN 和云厂商的托管证书经常自动签发）。确实是未授权签发，就联系签发的 CA 要求吊销，并添加 CAA 记录限制能签发的 CA。

**能不让子域名出现在 CT 日志里吗？**

公开信任的证书做不到，SAN 里的每个名字都会被记录。不想暴露具体主机名可以用通配符证书，纯内网的名字可以用私有 CA。
