2025-03-19 17:38:46 +08:00

1.2 KiB

生成自签CA机构

cfssl print-defaults csr > ca-csr.json
{
  "CN": "qygaming",
  "key": {
    "algo": "ecdsa",
    "size": 256
  },
  "names": [
    {
      "C": "US",
      "L": "CA",
      "ST": "San Francisco"
    }
  ]
}

生成CA配置文件

cfssl print-defaults config > ./ca-config.json
{
  "signing": {
    "default": {
      "expiry": "16800h"
    },
    "profiles": { 
      "services": { // 服务器证书
        "expiry": "8760h",
        "usages": [
          "singing",
          "key encipherment",
          "server auth"
        ]
      },
      "client": { // 客户端证书
        "expiry": "8760h",
        "usages": [
          "singing",
          "key encipherment",
          "client auth"
        ]
      },
      "peer": {  // 对等证书
        "expiry": "8760h",
        "usages": [
          "signing",
          "key encipherment",
          "server auth",
          "client auth"
        ]
      }
    }
  }
}

创建CA机构和私有

cfssl gencert -initca ca-csr.json | cfssljson -bare ca
# ca.csr: 证书签署请求
# ca.pem: CA证书
# ca-csr.json: 证书签名请求文件
# ca-key.pem: 证书私钥
# ca-config.json: 证书配置文件