开源CA搭建 | 您所在的位置:网站首页 › 电子证书用什么软件制作的 › 开源CA搭建 |
目录 一、前言 二、openssl介绍 三、openssl的常用用法 (一)单向加密 (二)生成随机数 (三)生成公钥,私钥 1.生成私钥 2.提取公钥 四、搭建CA (一)创建根CA私钥: (二)生成自签名证书 (三)创建数据库以及新颁发证书数字 (四)设置证书的起始编号 (五)创建文件夹储存用户信息 五、颁发证书 (一)生成服务器自己的私钥 (二)为服务器申请证书 (三)CA签署服务器的证书 (四)验证证书是否有效 六、吊销证书 一、前言 数字证书与CA的介绍: 证书是建立公共密钥和某个实体之间联系的数字化的文件。它包含的内容有:版本信息(X.509也是有三个版本的)、系列号、证书接受者名称、颁发者名称、证书有效期、公共密钥、一大堆的可选的其他信息、CA的数字签名。证书由CA颁发,由CA决定该证书的有效期,由该CA签名。每个证书都有唯一的系列号。证书的系列号和证书颁发者来决定某证书的唯一身份。 CA是第三方机构,被你信任,由它保证证书的确发给了应该得到该证书的人。CA自己有一个庞大的public key数据库,用来颁发给不同的实体。CA也是一个实体,它也有自己的公共密钥和私有密钥。 openssl可以生成CA的证书文件,私钥,可实现加解密以及数字签名的功能。 二、openssl介绍openssl是一款开放源代码软件包,通过命令行形式执行,包含了ssl协议库,应用程序以及密码算法库,集成了安全套接字层密码库,囊括主要的密码算法、常用密钥、证书封装管理功能及实现ssl协议。 三、openssl的常用用法 (一)单向加密 openssl dgst [-md5|-md4|-md2|-sha1|-sha|-mdc2|-ripemd160|-dss1] [-c] [-d] [-hex] [-binary] [-out filename][-md5|-md4|-md2|-sha1|-sha|-mdc2|-ripemd160|-dss1] : 指可以用来加密的内容 -out filename指可以把加密内容保存到特定文件中 (二)生成随机数 openssl rand -base64|-hex NUM可选base64或hex(十六进制) NUM:生成随机数的字节长度 (三)生成公钥,私钥 1.生成私钥需要使用genrsa命令生成私钥,然后从生成的私钥中提取公钥 openssl genrsa [-out filename] [-des | -des3 | -idea] [numbits]-out filename : 将生成的私钥保存至特定文件中 -des | -des3 | -idea : 可选用的密码学算法 numbits :生成的私钥长度,单位是字节,一般是2048 2.提取公钥 openssl rsa [-in filename] [-out filename] [-pubout]-in filename : 公钥对应的私钥存储文件 -out filename : 提取出公钥后储存的文件 -pubout :公钥 四、搭建CA (一)创建根CA私钥: openssl genrsa -out /etc/pki/CA/private/cakey.pem 2048 (二)生成自签名证书 openssl req -new -x509 -key /etc/pki/CA/private/cakey.pem -out /etc/pki/CA/cacert.crt -days 3650注意:前四项填写必须和CA相同,且server' s hostname必须是申请服务器的ip地址或者域名 (三)CA签署服务器的证书 openssl ca -in /etc/pki/CA/certs/server.csr -cert /etc/pki/CA/cacert.crt -keyfile /etc/pki/CA/private/cakey.pem -out /etc/pki/CA/certs/server.crt -days 36500显示ok的话就可以了
将得到的server.crt和server.key发给服务器,在其ssl配置文件中导入即可实现http到https的转换。如果需要浏览器通过https安全访问web服务的话,还需要在浏览器中导入CA的自签名证书 六、吊销证书由于撤销证书的命令在openssl配置文件中指定了CA字签名证书的名称,所以在撤销证书前,需要先改一下CA自签名证书的后缀名: mv /etc/pki/CA/cacert.crt /etc/pki/CA/cacert.pem(一)查看证书serial信息 openssl x509 -in /etc/pki/CA/cacert.pem -noout -serial -subject比对成功后,进行撤销 (二)吊销证书 openssl ca -revoke /etc/pki/CA/newcerts/01.pem(三)查看证书状态 openssl ca -status 01(四)定义证书撤销列表的起始编号 echo 01 > /etc/pki/CA/crlnumber(五)更新证书撤销列表 openssl ca -gencrl -out /etc/pki/CA/crl.pem(六)查看证书撤销列表 openssl crl -in /etc/pki/CA/crl.pem -noout -text参考链接: 【CentOS 7+Apache】5分钟完成服务器搭建+全站HTTP转HTTPS_哔哩哔哩_bilibili CentOS搭建基于Apache与OpenSSL自签名证书的HTTPS服务并解决客户端浏览器信任问题_aptx4869_li的博客-CSDN博客_centos httpd openssl Centos7创建CA和申请证书 - mingzhang - 博客园 (cnblogs.com)
|
CopyRight 2018-2019 实验室设备网 版权所有 |