一、CA证书的格式
数字证书的格式(x.509 v3):
版本号(version)
序列号(serial number):CA用于惟一标识此证书;
签名算法标志(Signature algorithm identifier)
发行者的名称:即CA自己的名称;
有效期:两个日期,起始日期和终止日期;
证书主体名称:证书拥有者自己的名字
证书主体公钥信息:证书拥有者自己的公钥;
发行商的惟一标识:
证书主体的惟一标识:
扩展信息:
签名:CA对此证书的数字签名;
二、建立自己的CA
使用OpenSSL构建私有CA的步骤:
1、生成私钥;
2、生成自签署证书;
(1) 私钥用于签发证书时,向证书添加数字签名使用;
(2) 证书:每个通信方都导入此证书至“受信任的证书颁发机构”;
配置文件:/etc/pki/tls/openssl.cnf
工作目录:/etc/pki/CA/
三、开始建立私有CA:
1、生成私钥文件: /etc/pki/CA/private/cakey.pem
2、生成自签证书
# openssl req -new -x509 -key /etc/pki/CA/private/cakey.pem -out /etc/pki/CA/cacert.pem -days #
-new: 生成新的证书签署请求;
-key:私钥文件路径,用于提取公钥;
-days N: 证书有效时长,单位为“天”;
-out:输出文件保存位置;
-x509:直接输出自签署的证书文件,通常只有构建CA时才这么用;
假如我们的公司在中国河南郑州叫MEITUAN,部门名称YOUHUI,网站叫www。meituan.com
3、提供必要的辅助文件以便将来别人向我申请证书时或撤销证书时,我可以自动记录他们的信息
在etc/pki/CA下创建index.txt文件
# touch /etc/pki/CA/index.txt
并创建serial目录文件,向文件你添加一个开始序号
# echo 01 > /etc/pki/CA/serial
四、向CA申请证书
1.生成自己的私钥
2.生成证书签署请求文件
openssl req -new -key .. -out .. -days ..
证书签署请求里面的选项除了common name一项填写自己的网站外,其余的必须与CA签发机构一致
3.把请求文件发送给CA
用优盘拷过去或者邮件发过去
五、CA签发证书
1.验证请求者身份信息
2.签署证书
openssl ca -in .. -out .. -days ..
3.把签好的证书发还给请求者
六、吊销证书
1、获取吊销证书的序列号
openssl x509 -in /PATH/FROM/CRT_FILE -noout -serial -subject
2、吊销证书
openssl ca -revoke /PATH/FROM/CRT-FILE
3、生成吊销编号
echo 01 > /etc/pki/CA/crlnumber
好了。。就这了