四次元科技

科技、动漫、生活、学习以及一切

通过开源工具XCA工具签发和管理可被浏览器信任的SSL证书

简介

本文介绍了通过开源工具XCA(X Certificate and Key management)签发CA和SSL证书。
本工具签发的SSL证书在安装CA后可被Chrome\Firefox等浏览器信任。
截止本文发布最新的版本为 XCA 2.5.0,本文也基于2.5.0版本演示。

下载地址

官网:https://hohnstaedt.de/xca
GitHub: https://github.com/chris2511/xca/

操作流程

0.创建数据库

如果是初次使用,需要创建数据库。
依次点击

1.创建根证书的密钥

在[密钥]选项卡,点击[创建密钥]。[密钥类型]选择RSA,名字和长度随意。之后点击创建。

2.创建根证书

在[证书]选项卡,点击[创建证书]。
在[来源]选项卡,[使用模板创建新证书]选择CA。

在[主体]选项卡,根据个人需求输入证书的信息,[私钥]选择上一步创建的密钥。

在[扩展]选项卡,[类型]选择CA,勾选X509v3 Subject Key Identifier和X509v3 Authority Key Identifier,之后根据个人需求输入证书的有效期。

在[密钥算法]选项卡,在[X509v3 Key Usage]选择Digital Signature,Certificate Sign和CRL Sign,在[X509v3 Extended Key Usage]选择TLS Web Server Authentication,TLS Web Client Authentication和Time Stamping。
之后点击确定完成创建。

3.为localhost创建SSL证书

先参考[[#1.创建根证书的密钥]]为localhost创建一个密钥。
然后创建一个新的证书。
在[来源]选项卡,[使用此CA证书进行签名]选择上一部创建的根证书,[使用模板创建新证书]选择TLS_server。

在[主体]选项卡,根据个人需求输入证书的信息,[私钥]选择刚刚创建的密钥。

在[扩展]选项卡,[类型]选择最终实体,勾选X509v3 Subject Key Identifier和X509v3 Authority Key Identifier,之后根据个人需求输入证书的有效期。

之后点击[X509v3 Subject Alternative Name]的编辑,在弹出框中添加证书对应DNS和IP的设置,点击验证对配置进行检查,之后点击应用。

最后结果显示如下。

在[密钥算法]选项卡,在[X509v3 Key Usage]选择Digital Signature和Key Encipherment,在[X509v3 Extended Key Usage]选择TLS Web Server Authentication和TLS Web Client Authentication。

之后点击确定完成创建。

4.导出证书和私钥并安装到对应的设备

导出CA证书安装到系统。
导出localhost的密钥和证书安装到nginx服务器。