写在前面:如果此文有幸被某位朋友看见并发现有错的地方,希望批评指正。如有不明白的地方,愿可一起探讨。
建立CA服务器
1.初始化工作环境
# cd /etc/pki/CA/
# touch index.txt
# touch serial
# echo 10000 > serial
# mkdir /etc/pki/CA/csr
# mkdir /etc/pki/CA/crt
说明:
/etc/pki/CA目录用于存储所有的密钥和证书;
index.txt和serial文件数据库帮助你跟踪所有密钥和证书;
2.生成密钥
# (umask 077; openssl genrsa -out /etc/pki/CA/private/cakey.pem 2048)
3.自签署证书
# cd /etc/pki/CA
# openssl req -new -x509 -key /etc/pki/CA/private/cakey.pem -out ./cacert.pem -days 3655
节点生成证书请求并发送给CA服务器
1.节点生成密钥对
# mkdir /etc/httpd/ssl
# (umask 077; openssl genrsa -out /etc/httpd/ssl/httpd.key 2048)
2.节点生成证书签署请求
# openssl req -new -key /etc/httpd/ssl/httpd.key -out /etc/httpd/ssl/httpd.csr
3.将生成的证书签署请求发送给CA服务器
# scp /etc/httpd/ssl/httpd.csr 172.16.115.1:/etc/pki/CA/csr/test.csr
CA签署客户端证书签署请求
1.验证证书中的信息
2.签署证书
# openssl ca -in /etc/pki/CA/csr/httpd.csr -out /etc/pki/CA/crt/httpd.crt -days 365
3.将签署后的证书发送给请求者
# scp /etc/pki/CA/crt/httpd.crt 172.16.115.100:/etc/httpd/ssl/
CA吊销证书
1.节点获取证书serial
# openssl x509 -in /etc/httpd/ssl/httpd.crt -noout -serial -subject
2.CA验证节点提交的serial和subject信息是否与index.txt文件中的信息一致
3.CA吊销证书
# openssl ca -revoke /etc/pki/CA/newcerts/02.pem
4.生成吊销证书的编号(如果CA是第一次吊销证书)
# echo 00 > /etc/pki/CA/crlnumber
5.更新证书吊销列表
# openssl ca -gencrl -out /etc/pki/CA/crl/thisca.crl
6.查看crl文件的内容(如果有必要)
# openssl crl -in /etc/pki/CA/thisca.crl -noout -text