自签名证书生成器
本页创建一个密钥对并用它签署 X.509 v3 证书,因此证书的颁发者就是它自己。你会得到 -----BEGIN CERTIFICATE----- 形式的证书和原始 DER 格式,外加 PKCS#8 私钥。它是开发服务器、内部设备、实验室或两端都由你掌控的邮件网关的正确工具 — 而对任何必须让陌生人的浏览器毫无警告地信任的东西,它是错误的工具。
自签名证书不被任何东西信任。在你把它作为受信任根安装到每台与该服务通信的机器之前,任何公共浏览器、操作系统或邮件客户端都不会接受它。如果你需要一份无需安装任何东西就能用的证书,请从证书颁发机构获取 — 如果你只需要给 CA 的请求,请改用
CSR 生成器。
尚未生成任何内容。填写一个通用名称和至少一条主体备用名称,按生成证书和密钥,证书和密钥就会出现在这里,并附带保存按钮。
如何加入信任存储 — 每台连接该服务的机器都需要先做这一步,警告才会消失。浏览器在设计上会对新颁发机构的首次使用发出警告,所以在点击通过之前,请先看清你正在信任什么。
| Windows(全机器范围) | 打开 .crt 文件,选择安装证书,选择本地计算机,然后选择将所有的证书都放入下列存储 → 受信任的根证书颁发机构。在提升权限的命令行中,同样的操作是 certutil -addstore -f Root mycert.crt,certutil -delstore Root mycert.crt 可将其移除。 |
|---|
| macOS | 双击文件将其加入登录钥匙串,然后打开「钥匙串访问」,把它拖入系统,双击它,打开信任并把使用此证书时设为始终信任。命令行方式:sudo security add-trusted-cert -d -r trustRoot -k /Library/Keychains/System.keychain mycert.crt。 |
|---|
| Debian、Ubuntu | 把它复制到 /usr/local/share/ca-certificates/mycert.crt(PEM 格式,且文件名必须以 .crt 结尾),然后运行 sudo update-ca-certificates。删除该文件并再次运行同一命令即可移除。 |
|---|
| RHEL、Fedora、CentOS | 把它复制到 /etc/pki/ca-trust/source/anchors/mycert.crt 并运行 sudo update-ca-trust。 |
|---|
| Firefox | Firefox 有自己的存储:设置 → 隐私与安全 → 证书 → 查看证书 → 颁发机构 → 导入,然后勾选信任此 CA 用以识别网站。 |
|---|
| Java 应用 | 导入到 JDK 信任存储:keytool -importcert -alias mycert -file mycert.crt -cacerts -storepass changeit。 |
|---|
这些扩展的含义。基本约束说明证书是否可以签署其他证书;密钥用法限制密钥可以执行的操作;扩展密钥用途指出证书的签发用途,TLS 服务器证书需要
TLS 服务器 用途,否则检查它的客户端会拒绝。主体密钥标识符是公钥的哈希,颁发机构密钥标识符通常指向颁发者那一份 — 在自签名证书上两者相同。
本页不做的事:它不为你创建证书层级、不运行 CA、也不在任何地方安装任何东西。这份证书背后没有吊销列表:如果密钥泄露,唯一的补救办法是在所有地方替换文件并从每个信任存储中移除。
隐私:密钥对由浏览器自己的加密功能生成,证书也在此签署。不上传、无服务器、无 Cookie、无统计,从本地文件打开本页同样可用。要独立读回结果,请使用
证书解码器。