quinn.hong

do it, if you can or want
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

制作SSL证书

Posted on 2015-01-01 10:19  quinn.hong  阅读(986)  评论(0编辑  收藏  举报

上一节介绍了OpenSSL的目录结构,本节介绍一下SSL证书的制作。

OpenSSL安装后建议把其中的bin目录添加到系统环境变量中,方便以后操作。

  1. 建立一个新的目录SSL专门用来制作证书。

  2. 建立证书目录

    我们使用默认配置openssl.cfg,那么就要建立配置中要求的目录demoCA,使用脚本CA.pl

    CA.pl -newca

    把OpenSSL安装目录下的serial文件拷贝到demoCA目录下即可。

  3. 我们不使用demoCA提供的根证书,自己制作根证书,创建根证书的密钥文件pmroot.key

    ps: 必须输入密钥

    openssl genrsa -des3 -out pmroot.key

  4. 创建根证书的申请文件pmroot.csr

    openssl req -new -key pmroot.key -out pmroot.csr

  5. 创建一个为期十年的根证书pmroot.crt

    openssl x509 -req -days 3650 -sha1 -extensions v3_ca -signkey pmroot.key -in pmroot.csr -out pmroot.crt

  6. 生成服务器端密钥文件pmserver.key

    openssl genrsa -des3 -out pmserver.key

  7. 生成服务器端证书申请文件pmserver.csr

    openssl req -new -key pmserver.key -out pmserver.csr

  8. 若需要客户端证书,安装上述证书操作分别生成pmclient.key和pmclient.csr即可。

  9. 生成的csr文件必须有CA的签名才可形成证书,用前面生成的CA证书为pmserver.csr,pmclient.csr文件签名:

    openssl ca -days 3650 -in pmserver.csr -out pmserver.crt -cert pmroot.crt -keyfile pmroot.key

    openssl ca -days 3650 -in pmclient.csr -out pmclient.crt -cert pmroot.crt -keyfile pmroot.key

 

这样我们需要的全部文件便生成了。

 

另:client使用的文件有:pmroot.crt,pmclient.crt,pmclient.key

       server使用的文件有:pmroot.crt,pmserver.crt,pmserver.key

crt文件和key文件可以合到一个pfx文件里。

合并命令:openssl pkcs12 -export -in pmserver.crt -inkey pmserver.key -out pmserver.pfx