前言

时隔多年,兜兜转转
我们还是要搞自签证书
原本还是想用 OpenSSL
但是新手还是用 XCA

X - Certificate and Key management

下载 XCA

1
https://www.hohnstaedt.de/xca/index.php/download

安装完成

新建数据库

  1. 首先要新建数据库
  1. 创建数据库密码
  1. 修改 XCA 配置

创建 Diffie-Hellman 参数文件

  • OpenVPN 需要用到 Diffie-Hellman 参数文件
  1. 其他工具 --> DH参数生成器
  1. 默认设置 1024 位数 Diffie-Hellman 参数
  1. 保存 dh1024.pem 文件

创建 Root CA 证书

创建 Root CA 私钥

  1. 私钥 --> 创建密钥
  1. 创建新密钥
  • 内部名称 输入 名称
  • 密钥类型 默认选择 RSA
  • 密钥长度 默认选择 2048 bit

创建 Root CA 证书

  1. 证书 --> 创建证书
  1. 来源 选择 CA 模板 并 应用所有信息
  1. 填写 CA 证书相关信息
缩写 字段 描述
C countryName 国家名称,中国就是CN,非必填项
S stateOrProvinceName 洲或省名称,非必填项
L localityName 地区名称,非必填项
O organizationName 组织名称,非必填项
CN commonName 公用名,授权的目标,必填项
  1. 修改证书 扩展 模块
  • 可在此处修改证书 生效时间
  • Key identifier 都勾选上
  1. 修改证书 密钥用法 模块
  • 默认开启 Certificate SignCRL Sign
  • 如需使用 数字签名,请开启 Digital SignatureCode Signing

创建 Server 证书

创建 Server 私钥

创建 OpenVPN Server 私钥

创建 Server 证书

  1. 创建证书
  1. 选择相关私钥
  1. 设置 扩展 属性
  • 类型 选择 终端实体
  1. 设置 密钥用法 属性

创建 Client 证书

创建 Client 私钥

创建 Client 私钥

创建 Client 证书

  1. 创建 Client 证书
  1. 选择相关私钥
  1. 设置 扩展 属性
  • 类型 选择 终端实体
  • X509v3 Subject Alternative Name 设置为 DNS:<commonName>
  1. 设置 密钥用法 属性

导出证书文件

CA 证书

  1. 证书 --> CA 证书 --> 导出 --> 文件
  1. 导出 PEM(*.crt) 文件

DH 文件

  • jinji

Server 证书

  1. 证书 --> Server 证书 --> 导出 --> 文件
  1. 导出 PEM(*.crt) 文件

Server 私钥

  1. 私钥 --> Server 私钥 --> 导出 --> 文件
  1. 导出 PEM私钥(*.pem) 文件

Client 证书

  1. 证书 --> Client 证书 --> 导出 --> 文件
  1. 导出 PEM(*.crt) 文件

Client 私钥

  1. 私钥 --> Client 私钥 --> 导出 --> 文件
  1. 导出 PEM私钥(*.pem) 文件

参考 & 引用

https://yhsnlkm.github.io/2019/12/19/数字签名/使用XCA工具生成签名证书-1/
https://6xyun.cn/article/openwrt-install-openvpn
https://www.ikuai8.com/index.php?option=com_content&view=article&id=138&Itemid=241