码迷,mamicode.com
首页 > 其他好文 > 详细

自建CA

时间:2015-09-13 07:11:26      阅读:287      评论:0      收藏:0      [点我收藏+]

标签:自建ca

一.OpenSSL构建私有CA

  构建CA

    1、生成私钥

    2、自签署证书

  给节点发放证书

    1、节点申请证书

      节点生成私钥

      生成证书签署请求

      把请求文件发送给CA

    2、CA签署证书

      CA验证请求者的信息

      签署证书

      把签署好的证书发还给请求者

  验正证书:

     1、使用CA的公钥的解密证书的数字签名

     2、使用同样的单向加密算法提取证书文件特征码,对比解密的结果

     3、验正主体名称与请求的服务器地址是否相同

  SSL的工作过程,Client和Server之间

     1、Server已向CA申请过证书

     2、Client和Server经过TCP的3次握手

     3、Client向Server请求证书,Server发送证书给Client

     4、Client通过CA公钥解密签名验证来源合法性,再用同样的单向加密计算特征码验证完整性,   后验证访问的主机是否一致(证书中的common name对比)

     5、协商ssl版本,加密算法,生成临时密钥进行通信

     6、除非连接断开再次建立连接

二.创建CA

  切换到/etc/pki/CA/目录

   #cd /etc/pki/CA

   创建CA的相关目录和文件,指定序列号起始数字,在上一步已经说明,它们在CA所在目录创建

   #mkdir certs newcerts crl

   #touch index.txt

   #echo 01 > serial

   使用openssl命令给自己生成一个私钥

   #(umask 077;openssl genrsa -out private/cakey.pem 2048; )

     用()是为了在子shell中运行,不影响当前的umask

     -out 为输出的私钥的位置

     2048 为密钥的长度

   CA需要一个自签证书,所以我们使用openssl命令给它生成一个自签证书

   #openssl req -new -x509 -key private/cakey.pem -out cacert.pem -days 3650

     -new 为生成新的证书,会要求用户填写相关的信息

     -x509 通常用于自签署证书,生成测试证书或用于CA自签署

     -key 私钥的位置

     -days 申请的天数(默认为30天)

     -out 生成的位置

   在/etc/vsftpd/目录下创建ssl目录,在ssl目录里生成私钥

   #(umask 077;openssl genrsa -out vsftpd.key 2048; )

   生成证书签署请求

   #openssl req -new -key vsftpd.key -out vsftpd.csr

   编辑CA配置文件,它位于etc/pki/tls/openssl.cnf,它的作用是指定你的CA所在目录,更改默认属性值

   dir = /etc/pki/CA

   在CA端给客户端颁发证书,使用openssl命令

   #openssl ca -in vsftpd.csr -out vsftpd.crt

三.在CA端,吊销证书

   #openssl ca -revoke /etc/pki/CA/newcerts/01.pem  吊销证书

   # openssl ca -gencrl -out thisca.crl   更新证书吊销列表

  查看吊销信息

   #cat index.txt 由V变成了R



本文出自 “珞辰的博客” 博客,请务必保留此出处http://luochen2015.blog.51cto.com/9772274/1694191

自建CA

标签:自建ca

原文地址:http://luochen2015.blog.51cto.com/9772274/1694191

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!