搭建CA服务器为Client签发证书
此次实验步骤如下:
一、搭建CA服务器
1) 在/etc/pki/CA下创建index.txt文件,此文件是为Client签发证书的索引文件;
2) 在/etc/pki/CA下创建serial文件,此文件记录为Client签发证书的编号;
3) 生成CA服务器私钥;
4) 从私钥生成自签名证书;
二、Client生成私钥和证书申请文件,从CA服务器请求证书;
以下为实验的详细步骤:
1. 需要准备两台虚拟机,一台作为CA服务器,另外一台作为客户端,接收CA服务器签发的证书,本次准备一台CentOS6.9为CA服务器,CentOS7.3为Client;
2. 搭建CA服务器:
a) 在/etc/pki/CA目录下创建创建证书索引文件:index.txt,创建空文件即可,当为Client签发证书之后本文件会自动生成索引记录;同时创建serial文件,指定颁发证书的序列号,注意:序列号必须为两位数字;
#touch index.txt #echo 01 > serial
b) 生成证书私钥文件,然后通过私钥文件生成CA的自签名证书,因为CA服务器为根CA,所以需要生成自签名证书文件;
#(umask 066;openssl genrsa -out /etc/pki/CA/private/cakey.pem 4096)
生成自签名证书文件:
注意:自签名证书文件需要指定country,company,state信息,根据ssl配置文件,默认Client申请证书和CA自签发证书此三个值指定需要一致:
#openssl req -new -x509 -key /etc/pki/CA/private/cakey.pem -days 3560 -out /etc/pki/CA/cacert.pem Country Name (2 letter code) [XX]:CN State or Province Name (full name) []:BeiJing Locality Name (eg, city) [Default City]:beijing Organization Name (eg, company) [Default Company Ltd]:magedu.com Organizational Unit Name (eg, section) []:sales Common Name (eg, your name or your server's hostname) []:magedu Email Address []:123@321.com
3. 在Client生成私钥和证书申请文件:
a) 生成私钥文件:
#(umask 066;openssl genrsa -out /etc/pki/tls/private/test.key 1024)
b) 生成证书申请文件(注意:country,state和company信息需要和CA服务器自签名证书信息一致):
#openssl req -new -key /etc/pki/tls/private/test.key -days 365 -out /etc/pki/tls/test.csr Country Name (2 letter code) [XX]:CN State or Province Name (full name) []:BeiJing Locality Name (eg, city) [Default City]:beijing Organization Name (eg, company) [Default Company Ltd]:magedu.com Organizational Unit Name (eg, section) []:technology Common Name (eg, your name or your server's hostname) []:magedu Email Address []:321@123.com
c) 拷贝证书文件至CA服务器,在CA服务器制作证书;
#scp test.csr root@192.168.11.128:/root/
4. CA服务器制作Client证书文件:
a)
#openssl ca -in /root/test.csr -out /etc/pki/CA/certs/test.crt -days 365
在/etc/pki/CA/certs/test.crt生成证书文件,通过cat可以查看证书信息;
#cat test.crt Certificate: Data: Version: 3 (0x2) Serial Number: 1 (0x1) Signature Algorithm: sha1WithRSAEncryption Issuer: C=CN, ST=BeiJing, L=beijing, O=magedu.com, OU=sales, CN=magedu/emailAddress=123@321.com Validity Not Before: Apr 27 11:50:38 2017 GMT Not After : Apr 27 11:50:38 2018 GMT Subject: C=CN, ST=BeiJing, O=magedu.com, OU=technology, CN=magedu/emailAddress=321@123.com
b) 此时会生成index.txt.attr和index.txt.old,serial.old文件
c) Serial.old文件存放内容为01,新生成的serial文件内容为02,代表颁发证书的序列号,此序列号文件会自动更新;
d) Index.txt文件存放的是制作Client证书的索引文件,开头V表示此证书可用,如果为R表示为吊销证书;
至此证书制作成功。
原创文章,作者:王子豪,如若转载,请注明出处:http://www.178linux.com/76647