自签证书的生成及可信列表的添加

1. 前言

要什么前言? 没有 !

2. 正文

2.1. 生成 CA 私钥

# 此处需要让你设置一个密码(好像可以直接忽略密码,但不晓得怎么操作) openssl genrsa -des3 -out ca.key 2048 # 移除出私钥密码 openssl rsa -in ca.key -out ca.key

2.2. 生成 ca 证书

  • subj 参数说明

    字段 字段含义 示例
    /C= Country 国家 CN
    /ST= State or Province Chongqing
    /L= Location or City 城市 Shapingba
    /O= Organization 组织或企业 0x5c0f
    /OU= Organization Unit 部门 ops
    /CN= Common Name 域名或IP blog.0x5c0f.cc
openssl req -utf8 -x509 -new -nodes -key ca.key -sha256 -days 1825 -out ca.pem -subj "/C=CN/ST=Chongqing/L=Shapingba/O=0x5c0f/OU=ops/CN=0x5c0f.cc/emailAddress=mail@0x5c0f.cc"

2.3. 生成证书私钥

openssl genrsa -out server.key 2048

2.4. 生成域名签名

openssl req -new -key server.key -out server.csr -subj "/C=CN/ST=Chongqing/L=Shapingba/O=0x5c0f/OU=ops/CN=*/emailAddress=mail@0x5c0f.cc"

2.5. 创建扩展

  • 后续有新域名,直接加入进去即可
cat > server.ext <<EOF authorityKeyIdentifier=keyid,issuer basicConstraints=CA:FALSE keyUsage = digitalSignature, nonRepudiation, keyEncipherment, dataEncipherment subjectAltName = @alt_names [alt_names] DNS.1 = *.0x5c0f.cc DNS.2 = *.51ac.cc IP.1 = 0.0.0.0 EOF

2.6. 生成域名证书

openssl x509 -req -in server.csr -CA ca.pem -CAkey ca.key -CAcreateserial -out server.crt -days 3650 -sha256 -extfile server.ext

2.7. 可信列表添加

2.7.1. linux

https://qastack.cn/unix/90450/adding-a-self-signed-certificate-to-the-trusted-list

  • fedroa32为例
sudo cp -v ca.pem /etc/pki/ca-trust/source/anchors/ca.pem sudo update-ca-trust

2.7.2. windows

  • win 10为例
  1. win + R 打开运行窗口, 键入 mmc 然后回车, 选择 文件-添加/删除单元节点。选择证书-添加,打开选项卡自行判断选择,完成即可。

  2. 上述完成后,在mmc控制台中就可以看到证书节点, 展开证书-受信任的根证书颁发机构,选择其下面证书,然后右键 所有任务-导入,导入生成的ca.pem即可,退出时会提示存储控制台的信息,可以忽略