1.cfssl简介
cfssl具有运行一个认证中心所需要的全部功能,认证中心需要一个CA证书(ca.pem)和相应的私钥(ca-key.pem).
CA:certificate authority 认证证书的第三方机构
X.509:证书标准,主要定义了证书中应该包含哪些内容
PEM: privacy enhanced mail,是X.509证书的一种编码格式,该格式以“------BEGIN------”开头,以“-------END------“结尾,中间内容是BASE64编码
CSR: certificate signing request:证书签名请求,这个并不是证书,而是向权威证书颁发机构获取签名证书的申请
CRT/CER: certificate 证书
2.cfssl 安装配置
curl -L https://pkg.cfssl.org/R1.2/cfssl_linux-amd64 -o /usr/local/bin/cfssl
curl -L https://pkg.cfssl.org/R1.2/cfssljson_linux-amd64 -o /usr/local/bin/cfssljson
curl -L https://pkg.cfssl.org/R1.2/cfssl-certinfo_linux-amd64 -o /usr/local/bin/cfssl-certinfo
chmod +x /usr/local/bin/cfssl /usr/local/bin/cfssljson /usr/local/bin/cfssl-certinfo
3.构建本地CA
3.1通过cfssl print-defaults 输出配置模板和模板文件,通过重定向输出内容将输出保存到本地
生成配置模板文件:
[root@dn01 sfssltest]# cfssl print-defaults config { "signing": { "default": { "expiry": "168h" }, "profiles": { "www": { "expiry": "8760h", "usages": [ "signing", "key encipherment", "server auth" ] }, "client": { "expiry": "8760h", "usages": [ "signing", "key encipherment", "client auth" ] } } } } [root@dn01 sfssltest]# cfssl print-defaults config > config.json [root@dn01 sfssltest]# ls config.json