首页 > 其他 > 详细

openssl+httpd实现服务器端的证书创建,自签以及客户端的证书申请

时间:2014-03-27 03:36:39      阅读:591      评论:0      收藏:0      [点我收藏+]

   CA通俗点讲就是让两个互不认识的人相信彼此的中间人功能类似我们常使用的支付宝。

   我们要给别人办证书,首先自己得是个证书颁发服务器,得自己有证书,所以首先我们在服务器端创建自己的证书

   Server创建证书的步骤:

   1:我们的配置文件中有三个目录我们CA目录下是没有的,这里需要我们手动创建三个目录:

       /etc/pki/CA/serial  /etc/pki/CA/index.txt  /etc/pki/CA/crlnumber

    serial文件是记录已签证书编号的文件我们可以规定从01开始:

    #echo 01 > serial


   2:创建私钥,

     说明:公钥是从私钥中提取出来的,

     #cd /etc/pki/CA

     #openssl genrsa -out /etc/pki/CA/private/cakey.pem 2048

     我们会发现我们创建的私钥对别人都有读取的权限,这很不安全所以我们使用下面的这种方法:

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

bubuko.com,布布扣

    解释:()表示在子shell环境中运行命令,我们在子shell中声明的环境变量不会影响当前shell的环境变量。

   3:私钥出来了,我们提取公钥,提取公钥有一个专用工具rsa

   #  openssl rsa [-in filename][-text][-pubout][-out filename]

      从那个文件中以text格式提取出并保存至那个文件中

   #openssl rsa -in ./private/cakey.pem -text -pubout -out

bubuko.com,布布扣

   4:自签证书:用到的命令是openssl req:先介绍下这个命令的常用选项


openssl req [-in filename]读进数据文件但是这里用[-key filename]

               [-key filename]指定私钥文件从中抽取公钥

               [-days n]有效期限,不给默认是1年

               [-x509]自签证书的格式(自签时用,申请时不用)

               [-out filename]将申请请求放那

               [-new]新发起的

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

bubuko.com,布布扣     注意:Common Name (eg, your name or your server‘s hostname) []:ca.yalishanda.com

这项是将来通信验证的名称给谁就叫ca.

bubuko.com,布布扣

  到这里,服务器S端的准备工作就准备就绪。我们可以从客户端申请证书了。

  在客户端我们是给web服务做认证,那么我们的私钥最好是保存到httpd的配置文件目录下:

bubuko.com,布布扣

  生成密钥以后我们需要生成证书请求:

bubuko.com,布布扣

    生成证书请求,需要把证书请求发送给服务器端,给我们盖戳,签证:用到的命令是scp

    本机ip是172.16.23.31

bubuko.com,布布扣

    解释:scp apache.csr 172.16.23.21:/tmp/

        发送apache.csr文件到服务器172.16.23.21的tmp目录下。

   注意:传送证书签署请求的时候需要用到服务器端的密码

    我们去服务器端看看

bubuko.com,布布扣   证书签署请求到了服务器端,我们就可以在服务器端给其颁发证书了。

bubuko.com,布布扣

bubuko.com,布布扣   证书颁发完我们需要把证书发给客户端:

bubuko.com,布布扣

  在客户端查看下:

bubuko.com,布布扣

 OK,服务器端的证书自签以及客户端的证书申请操作全部完成。


本文出自 “欢迎大家来做客” 博客,请务必保留此出处http://aperson.blog.51cto.com/3480661/1384715

openssl+httpd实现服务器端的证书创建,自签以及客户端的证书申请,布布扣,bubuko.com

openssl+httpd实现服务器端的证书创建,自签以及客户端的证书申请

原文:http://aperson.blog.51cto.com/3480661/1384715

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!