搭建CA服务器为Client签发证书

搭建CA服务器为Client签发证书

 

此次实验步骤如下:

一、搭建CA服务器

1)  /etc/pki/CA下创建index.txt文件,此文件是为Client签发证书的索引文件;

2)  /etc/pki/CA下创建serial文件,此文件记录为Client签发证书的编号;

3)  生成CA服务器私钥;

4)  从私钥生成自签名证书;

二、Client生成私钥和证书申请文件,从CA服务器请求证书;

 

以下为实验的详细步骤:

1.       需要准备两台虚拟机,一台作为CA服务器,另外一台作为客户端,接收CA服务器签发的证书,本次准备一台CentOS6.9CA服务器,CentOS7.3Client

搭建CA服务器为Client签发证书

2.       搭建CA服务器:

a)         /etc/pki/CA目录下创建创建证书索引文件:index.txt,创建空文件即可,当为Client签发证书之后本文件会自动生成索引记录;同时创建serial文件,指定颁发证书的序列号,注意:序列号必须为两位数字;

#touch index.txt
#echo 01 > serial

b)         生成证书私钥文件,然后通过私钥文件生成CA的自签名证书,因为CA服务器为根CA,所以需要生成自签名证书文件;

                   

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

                   生成自签名证书文件:

注意:自签名证书文件需要指定countrycompanystate信息,根据ssl配置文件,默认Client申请证书和CA自签发证书此三个值指定需要一致:

#openssl req -new -x509 -key /etc/pki/CA/private/cakey.pem -days 3560 -out /etc/pki/CA/cacert.pem
 
Country Name (2 letter code) [XX]:CN
State or Province Name (full name) []:BeiJing
Locality Name (eg, city) [Default City]:beijing
Organization Name (eg, company) [Default Company Ltd]:magedu.com
Organizational Unit Name (eg, section) []:sales
Common Name (eg, your name or your server's hostname) []:magedu   
Email Address []:123@321.com

3.       Client生成私钥和证书申请文件:

a)         生成私钥文件:

#(umask 066;openssl genrsa -out /etc/pki/tls/private/test.key 1024)

b)         生成证书申请文件(注意:countrystatecompany信息需要和CA服务器自签名证书信息一致):

#openssl req -new -key /etc/pki/tls/private/test.key -days 365 -out /etc/pki/tls/test.csr
 
Country Name (2 letter code) [XX]:CN
State or Province Name (full name) []:BeiJing
Locality Name (eg, city) [Default City]:beijing
Organization Name (eg, company) [Default Company Ltd]:magedu.com
Organizational Unit Name (eg, section) []:technology
Common Name (eg, your name or your server's hostname) []:magedu
Email Address []:321@123.com

c)         拷贝证书文件至CA服务器,在CA服务器制作证书;

#scp test.csr root@192.168.11.128:/root/

4.       CA服务器制作Client证书文件:

a)        

 #openssl ca -in /root/test.csr -out /etc/pki/CA/certs/test.crt -days 365

/etc/pki/CA/certs/test.crt生成证书文件,通过cat可以查看证书信息;

#cat test.crt
Certificate:
    Data:
        Version: 3 (0x2)
        Serial Number: 1 (0x1)
    Signature Algorithm: sha1WithRSAEncryption
        Issuer: C=CN, ST=BeiJing, L=beijing, O=magedu.com, OU=sales, CN=magedu/emailAddress=123@321.com
        Validity
            Not Before: Apr 27 11:50:38 2017 GMT
            Not After : Apr 27 11:50:38 2018 GMT
        Subject: C=CN, ST=BeiJing, O=magedu.com, OU=technology, CN=magedu/emailAddress=321@123.com

b)         此时会生成index.txt.attrindex.txt.oldserial.old文件

搭建CA服务器为Client签发证书

c)         Serial.old文件存放内容为01,新生成的serial文件内容为02,代表颁发证书的序列号,此序列号文件会自动更新;

d)         Index.txt文件存放的是制作Client证书的索引文件,开头V表示此证书可用,如果为R表示为吊销证书;

搭建CA服务器为Client签发证书

 

至此证书制作成功。

 

 

 

 

原创文章,作者:王子豪,如若转载,请注明出处:http://www.178linux.com/76647

(0)
王子豪王子豪
上一篇 2017-05-21 21:03
下一篇 2017-05-21 21:24

相关推荐

  • GlusterFS测试报告-02(结合samba为windows提供服务)

    在挂载glusterFS的客户机的目录下,使用samba分享给windows机器使用 1、samba服务的安装 [root@client01 ~]# yum -y install samba [root@client01 ~]# /etc/init.d/smb restart S…

    Linux干货 2016-07-22
  • 简述动静分离

        今天来简述一下如何实现wordpress的动静分离以及读写分离      首先来放出大图。   1.来看图说话     首先来介绍一下这张图    最前端的两台机器是  负责调度后端主机请求动…

    2017-05-18
  • sed

    sed Stream EDitor, 行编辑器 sed是一种流编辑器,它一次处理一行内容。处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。接着处理下一行,这样不断重复,直到文件末尾。文件内容并没有改变,除非使用重定向存储输出。 Sed主要用来自动…

    Linux干货 2017-04-26
  • DNS and BIND

    DNS and BIND 名称解析:把一种代号转换成为另一种代号的功能是应用程序基于某个搜索键在指定的数据库查询,查询到对应的键以后,对应键被找出来的过程!passwd —《nsswith》/etc/nsswith.conf 注意:查询的时候用到的是UDP的53,主从复制走的是tcp(但是也用到udp) DNS: Domain Name Serv…

    Linux干货 2016-10-21
  • 马哥教育面授班22期:第一天课程练习

    Linux发展史:        1984年:Richard Stallman发起GNU项目和自由软件基金会创建开源的UNIX实用工具版本        创建通用公共许可证(GPL)        1991年:Linux Torvalds发…

    Linux干货 2017-05-16
  • 我们都在前行的路上

    我们都在前行的路上         从0到1是一种突破,年少轻狂到心有余而力不足,力挽狂澜到恬淡人生需伏地脚踏实地地前行,漂泊在一线都市,立足我图网,途径百胜,一次机缘巧合转战阿里,对于一个工作6年的弄潮儿,他将所有经历的化作前行的动力和坚韧不拔的耐力,也许不经意,但却理所当然,…

    Linux干货 2016-11-03