一创淡、普通證書
1.1 生成ca.key
openssl?genrsa -out ca.key 4096
1.2 生成ca.crt
openssl req -x509 -new -nodes -sha512 -days 3650 -subj "/CN=使用者域名" -key ca.key -out ca.crt
/C:國家代碼淋样,兩個字母,比如CN鞋怀。更多代碼可查看 https://en.wikipedia.org/wiki/List_of_ISO_3166_country_codes
/ST:省份
/L:城市
/O:頒發(fā)者、公司、組織
/OU:部門
/CN:頒發(fā)給、域名
/emailAddress:email地址
1.3 查看證書
openssl x509 -in ca.crt -noout -text
1.4 pem證書
有key和crt其實就可以了辫红,但是有的服務(wù)認(rèn)證證書的時候需要pem,其實就是key+crt祝辣,執(zhí)行命令即可得到pem證書
cat ca.crt ca.key > ca.pem
1.5 pkcs12證書
openssl pkcs12 -export -clcerts -in ca.crt -inkey ca.key -out ca.p12 -name ca
二厉熟、頒發(fā)SANs證書(比如harbor)
需要先執(zhí)行一
2.1 客戶端私鑰證書生成
openssl genrsa -out server.key 4096
2.2 生成ca.crt
openssl req -sha512 -new -subj "/CN=www.bmzhjt.cn" -key server.key -out server.csr
2.3 創(chuàng)建ext
vi server.ext
authorityKeyIdentifier=keyid,issuer
basicConstraints=CA:FALSE
keyUsage = digitalSignature, nonRepudiation, keyEncipherment, dataEncipherment
extendedKeyUsage = serverAuth
subjectAltName = @alt_names
[alt_names]
DNS.1=域名
DNS.2=localhost
DNS.3=*.localhost
2.4 簽發(fā)crt
openssl x509 -req -sha512 -days 3650 -extfile server.ext -CA ca.crt -CAkey ca.key -CAcreateserial -in server.csr -out server.crt
全部文件
使用的文件:server.crt和server.key
三、linux服務(wù)器添加信任證書
3.1 centos
將根證書ca.crt 復(fù)制到/etc/pki/ca-trust/source/anchors/域名.crt
執(zhí)行更新信任證書的命令
update-ca-trust extract
curl https://域名 如果不提示不信任了较幌,就算ok了
3.2 Debian(未驗證)
/usr/local/share/ca-certificates/