一、安装cfssl

在github上拉取最新版本代码:https://github.com/cloudflare/cfssl.git,然后进入代码目录执行make all编译二进制。编译成功后会在当前目录下的bin/目录下生成几个二进制:

bin
├── cfssl
├── cfssl-bundle
├── cfssl-certinfo
├── cfssl-newkey
├── cfssl-scan
├── cfssljson
├── mkbundle
└── multirootca

二、生成CA

// todo

三、生成中间CA

// todo

四、生成服务器证书

填写需要生成的证书的信息:

{
  "CN": "example.com",
  "hosts": [
    "example.com",
    "www.example.com"
  ],
  "key": {
    "algo": "rsa",
    "size": 2048
  },
  "names": [
    {
      "C": "US",
      "ST": "California",
      "L": "Mountain View",
      "O": "Your Org Name",
      "OU": "Your Org Unit"
    }
  ]
}

生成csr:

./cfssl genkey certs/server.json | ./cfssljson  -bare server

签发证书:

./cfssl sign -ca certs/intermediate.crt -ca-key certs/intermediate-key.pem -config certs/rootca-config.json -profile server server.csr | ./cfssljson -bare server

参数说明:

  • -ca/-ca-key: CA证书和私钥
  • -config: 证书的配置文件,包含了一系列的证书参数,如过期时间、加密方式等等
  • -profile: 定义于config中的配置,一个config可以包含多个profile
最后修改:2023 年 12 月 29 日
如果觉得我的文章对你有用,请随意赞赏