创建私有CA并进行证书申请
由于很多时候做实验需要用到证书,就需要自己搭建一个私有CA来给自己颁发证书。同时通过整理创建CA和申请证书、吊销证书的过程加深自己的理解.
PKI:Publilc Key Infrastructure
公钥基础设施:
签证机构:CA
注册机构:RA
证书吊销列表:CRL
证书存取库
创建私有CA所需工具:
openCA 、openssl
证书申请及签署步骤:
1、生成申请请求
2、RA核验
3、CA签署
4、获取证书
创建私有CA:
openssl的配置文件:/etc/pki/tls/openssl.cnf
openssl.cnf配置文件由许多节(section)组成,这些节指定了一系列由openssl命令使用的默认值。
一、 创建所需要的文件。
]#touch /etc/pki/CA/index.txt
]#echo 01 >/etc/pki/CA/serial
二、CA自签证书
1、生成私钥
]#cd /etc/pki/CA/
]#(umask 066; openssl genrsa -out /etc/pki/CA/private/cakey.pem 2048)
2、生成自签名证书
]#openssl req –new -x509 -key /etc/pki/CA/private/cakey.pem -days 7300 -out /etc/pki/CA/cacert.pem
-new:生成新证书签署请求。
-x509:专用于CA生成自签证书。
-key:生成请求时用到的私钥文件。
-out /PATH/TO/SOME_CERT_FILE:证书的保存位置。
三、颁发证书
1、在需要使用证书的主机生成证书请求
例如:给web服务器生成私钥
(umask 066;openssl genrsa -out /etc/httpd/ssl/httpd.key 2048)
注意:存放密钥的目录要事先存在
2、生成证书申请文件.
]#openssl req -new -key /etc/httpd/ssl/httpd.key -days 365 -out /etc/httpd/ssl/httpd.csr
3、将证书请求文件传输给CA(也就是自签证书的那台机器)
4、CA签署证书,并将证书颁发给请求者.
]#openssl ca -in /httpd.csr -out /etc/pki/CA/certs/httpd.crt
注意:默认国家、省公司名称必须和CA一致
5、查看证书中的信息
]# openssl x509 –in /PATH/FROM/CERT_FILE –noout –text|subject|serial|dates
四、吊销证书
1、在客户端获取要吊销的证书的serial.
]#openssl x509 -in /tmp/httpd.crt -noout -serial -subject
2、在CA上,根据客户提交的aerial与subject信息,对比检验是否与index.txt文件中的
信息一致。
吊销证书:
]#openssl ca -revoke /etc/pki/CA/newcerts/01.pem
3、生成吊销证书的编号(第一次吊销一个证书时才需要执行)
echo 01 > /etc/pki/CA/crnumber
4、更新证书吊销列表
openssl ca -gencrl -out /etc/pki/CA/crl/ca.crl
查看crl文件:
]# openssl crl -in /etc/pki/CA/crl/ca.crl -noout -text
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了