上一节介绍了OpenSSL的目录结构,本节介绍一下SSL证书的制做。服务器
OpenSSL安装后建议把其中的bin目录添加到系统环境变量中,方便之后操做。spa
创建一个新的目录SSL专门用来制做证书。3d
创建证书目录server
咱们使用默认配置openssl.cfg,那么就要创建配置中要求的目录demoCA,使用脚本CA.plblog
CA.pl -newcassl
把OpenSSL安装目录下的serial文件拷贝到demoCA目录下便可。openssl
咱们不使用demoCA提供的根证书,本身制做根证书,建立根证书的密钥文件pmroot.keyio
ps: 必须输入密钥class
openssl genrsa -des3 -out pmroot.key变量
建立根证书的申请文件pmroot.csr
openssl req -new -key pmroot.key -out pmroot.csr
建立一个为期十年的根证书pmroot.crt
openssl x509 -req -days 3650 -sha1 -extensions v3_ca -signkey pmroot.key -in pmroot.csr -out pmroot.crt
生成服务器端密钥文件pmserver.key
openssl genrsa -des3 -out pmserver.key
生成服务器端证书申请文件pmserver.csr
openssl req -new -key pmserver.key -out pmserver.csr
若须要客户端证书,安装上述证书操做分别生成pmclient.key和pmclient.csr便可。
生成的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