创建CA和申请证书

·

在实验开始之前先了解一下一下内容:

  • x509证书 :一般会用到三类文,key,csr,crt。
  • CA :签证机构(Certificate Authority)
  • CRL:证书吊销列表
  • key: 是私用密钥openssl格,通常是rsa算法。
  • csr :是证书请求文件,用于申请证书。在制作csr文件的时,必须使用自己的私 钥来签署申,还可以设定一个密钥。
  • crt:是CA认证后的证书文,(windows下面的,其实是crt),签署人用自己的key给你签署的凭证。

此实验可以先设一个场景,假设centos6是web服务器,需要对外提供https服务。若要搭建网络站点:https://www.magedu.com,此时centos6需要有证书。把centos7当做CA,centos6向centos7申请证书,centos7为其颁发证书。在颁发证书的过程中,centos6是客户端,centos7是服务器端

下面我们来创建CA并申请证书

一:在centos7上创建私有CA

1:创建所需要的文件

生成证书索引数据库文件

 touch /etc/pki/CA/index.txt

指定第一个颁发证书的序列号

echo 01 > /etc/pki/CA/serial

2:CA 自签证书

生成私钥 cd /etc/pki/CA/

 (umask 066; openssl genrsa -out/etc/pki/CA/private/cakey.pem 2048)


3:生成自签名证书

 openssl req -new -x509 –key /etc/pki/CA/private/cakey.pem -days 3560 -out 
  /etc/pki/CA/cacert.pem
  • -new: 生成新证书签署请求
  • -x509: 专用于CA 生成自签证书
  • -key: 生成请求时用到的私钥文件
  • -days n :证书的有效期限
  • -out / PATH/TO/SOMECERTFILE : 证书的保存路径
    在填写信息是根据/etc/pki/tls/openssl.cnf 中的配置要求,这三项必须匹配、一致

查看一下刚刚输入的信息

 openssl x509 -in /etc/pki/CA/cacert.pem -noout -text


查看一下/etc/pki/CA/目录结构
Alt text

现在也可以把证书传到Windows上看一下 sz /etc/pki/CA/cacert.pem
在Windows上接收并更改后缀名为 .cer

Alt text

二:在centos6上颁发证书

1:在需要使用证书的主机生成证书请求。

给web服务器生成私钥

 (umask 066; openssl genrsa -out /etc/pki/tls/private/service.key 2048)

生成证书申请文件

 openssl req -new -key /etc/pki/tls/private/service.key -days 365 -out 
  /etc/pki/tls/service.csr

2:将证书请求文件传输给CA

scp /etc/pki/tls/service.csr 172.16.251.13:/etc/pki/CA/
  • 172.16.251.13:centos7 的IP
    -/etc/pki/tls/:指定路径

3:在centos7上为CA 签署证书,并将证书颁发给请求者(centos6)

openssl ca -in /etc/pki/tls/service.csr –out /etc/pki/CA/certs/service.crt -days
   365

注意:默认国家,省,公司名称三项必须和CA一致

4:在centos7中 查看 证书中的信息:

openssl x509 -in /etc/pki/CA/certs/service.crt -noout -text

查看 指定 编号的证书状态

openssl ca -status serial

此时的目录结构为


三:吊销证书

1:获取要吊销的证书的serial(centos7)

   openssl x509 -in / PATH/FROM/CERT_FILE -noout -serial -subject

2:吊销证书(centos7)

openssl ca -revoke /etc/pki/CA/newcerts/ SERIAL .pem

在CA 上,根据客户提交的serial 与subject 信息,对比检验是否与index.txt 文件中的信息一致


3:定第一个吊销 证书的编号
注意:第一次更新证书吊销列表前,才需要 执行

 echo 01 > /etc/pki/CA/crlnumber

4:更新证书吊销列表

  openssl ca -gencrl -out /etc/pki/CA/crl/crl.pem

查看crl 文件:

   openssl crl -in /etc/pki/CA/crl/crl.pem -noout -text

步骤梳理:

查看/etc/pki/tls/openssl.cnf配置文件查看的对应目录


1 、创建所需要的文件

  touch /etc/pki/CA/index.txt
     生成证书索引数据库文件

  echo 01 > /etc/pki/CA/serial
     指定第一个颁发证书的序列号

2、 CA 自签证书

  生成私钥
cd /etc/pki/CA/(umask 066; openssl genrsa -out/etc/pki/CA/private/cakey.pem 2048)

  生成自签名证书
openssl req -new -x509 –key /etc/pki/CA/private/cakey.pem -days 7300 -out 
/etc/pki/CA/cacert.pem
      
  -new: 生成新证书签署请求
  -x509: 专用于CA 生成自签证书
  -key: 生成请求时用到的私钥文件
  -days n :证书的有效期限
  -out / PATH/TO/SOMECERTFILE : 证书的保存路径

3 、 颁发证书

• A 在需要使用证书的主机生成证书请求给web 服务器
    生成私钥
    (umask 066; openssl genrsa -out /etc/pki/tls/private/test.key 2048)
    生成证书申请文件
    openssl req -new -key /etc/pki/tls/private/test.key-days 365 -out 
    /etc/pki/tls/test.csr

• B 将证书请求文件传输给CA

• C CA 签署证书,并将证书颁发给请求者
     openssl ca -in /tmp/test.csr –out/etc/pki/CA/certs/test.crt -days 365
    注意:默认国家,省,公司名称三项必须和CA一致

• D 查看 证书中的信息:
    openssl x509 -in /PATH/FROM/CERT_FILE -noout -text|issuer|subject|serial|dates
    openssl ca -status SERIAL 查看指定编号的证书状态

4 、吊销证书

 • A 在客户端获取要吊销的证书的serial
    openssl x509 -in / PATH/FROM/CERT_FILE -noout -serial -subject

• B 在CA 上,根据客户提交的serial 与subject 信息,对比检验是否与index.txt 文件中的信息一致
    吊销证书:
    openssl ca -revoke /etc/pki/CA/newcerts/ SERIAL .pem

• C 指定第一个吊销 证书的编号
    注意:第一次更新证书吊销列表前,才 需要执行
    echo 01 > /etc/pki/CA/crlnumber

 • D 更新证书吊销列表
    openssl ca -gencrl -out /etc/pki/CA/crl/crl.pem
    查看crl 文件:
    openssl crl -in /etc/pki/CA/crl/crl.pem -noout -text
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 1 概述 本文之所以称之为半自动化,是因为证书的申请并非日常工作,只是一段时间才需要申请,同时,在创建证书和办法证...
    ghbsunny阅读 6,655评论 0 1
  • 在如今互联网时代,越来越多的人注重信息安全,及对重要信息加密。加密即我们将文字转换成不能直接阅读的形式(即密文)的...
    jie0112阅读 10,805评论 0 3
  • OpenSSL的配置文件etc/pki/tls/openssl.cnf,下面有一些重要的配置,里面的一下目录和文件...
    不知岁月惜阅读 9,901评论 1 1
  • CA和证书安全协议(SSL/TLS)OpenSSH 一、CA和证书 (一) PKI(Public Key Infr...
    哈喽别样阅读 5,306评论 0 0
  • 某个时候我想不管不顾 倒头就睡 某个时候,四下静寂无声 心里惊涛拍浪翻江倒海 矛盾 常存在于我身上 我想光着脚在雨...
    沈轻舟一阅读 1,612评论 0 1

友情链接更多精彩内容