创建私有CA和申请证书流程

创建私有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

blob.png

 

    openssl.cnf配置文件由许多节(section)组成,这些节指定了一系列由openssl命令使用的默认值。

一、 创建所需要的文件。

]#touch /etc/pki/CA/index.txt

]#echo 01 >/etc/pki/CA/serialblob.png

二、CA自签证书

   1、生成私钥

     ]#cd /etc/pki/CA/

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

blob.png

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:证书的保存位置。

blob.png

三、颁发证书

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

例如:给web服务器生成私钥

(umask 066;openssl genrsa -out /etc/httpd/ssl/httpd.key 2048)

blob.png

注意:存放密钥的目录要事先存在

2、生成证书申请文件.

]#openssl req -new -key /etc/httpd/ssl/httpd.key -days 365 -out /etc/httpd/ssl/httpd.csr

blob.png

3、将证书请求文件传输给CA(也就是自签证书的那台机器)

blob.png

4、CA签署证书,并将证书颁发给请求者.

]#openssl ca -in /httpd.csr -out /etc/pki/CA/certs/httpd.crt

blob.png

注意:默认国家、省公司名称必须和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

blob.png

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

    信息一致。

     吊销证书:

    ]#openssl ca -revoke /etc/pki/CA/newcerts/01.pem

blob.png

    3、生成吊销证书的编号(第一次吊销一个证书时才需要执行)

    echo 01 > /etc/pki/CA/crnumber

    4、更新证书吊销列表

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

blob.png

    查看crl文件:

    ]# openssl crl -in /etc/pki/CA/crl/ca.crl  -noout -text

blob.png

总结:通过此次整理,将私有CA的创建,证书的颁发,证书的吊销,证书吊销列表的更新等操作让我更进一步了解熟悉整个流程,也希望能给其他人一些帮助!

 

原创文章,作者:征(_少,如若转载,请注明出处:http://www.178linux.com/61925

(0)
征(_少征(_少
上一篇 2016-12-01 22:16
下一篇 2016-12-02 01:04

相关推荐

  • Linux网络管理

                          Linux网络管理   本章内容: 网络概念 OSI七层模型 网络设备 TCP/IP IP地址 配置网络 实现网络组 测试网络 网络工具   网络用户应用程序: WEB浏览器(…

    系统运维 2016-09-12
  • Linux进程和计划任务

                                                      &nbsp…

    系统运维 2016-09-21
  • cut命令练习总结

    cut命令的作用是实现文本内容的切割,原内容或者原文件不受影响。   cut小练习:                       2016年 07月 …

    Linux干货 2016-07-22
  • 高考作业

    1、简述TCP三次握手四次挥手过程及各过程中客户端和服务器端的状态。 TCP三路握手,作用为完成三次握手,主机A与主机B开始传送数据。 第一次握手:客户端A(状态为SYN_SEND)发送位码为syn=1,随机产生seq number=1234567的数据包到服务器,服务器B(状态为LISTEN)由SYN=1知道,客户端A要求建立联机; 第二次握手:服务器B(…

    Linux干货 2016-06-22
  • Linux系统的介绍及如何获取帮助?(学习笔记)

    第一、Linux 基础   CPU架构:      x86      x64 (amd64)      m68000,m68k      arm    &nbs…

    Linux干货 2016-12-12
  • 高可用集群部署文档

    同学们都很活跃,自己好久没写了,也动动笔,下面文章写着玩的,如有错误请联系(NET7-粤-义薄云天) 高可用集群部署文档   目录: 目录: 1 项目需求: 2 实现方式: 2 拓扑图: 3 系统及软件版本: 3 安装步骤: 4 IP分配: 4 LVS和keepalived的安装和配置: 4 LVS主配置: 4 LVS2备 配置: 7 w…

    Linux干货 2015-08-11