秦始皇二一四
停止思考是一种堕落

使用 OpenSSL 自签发服务器 https 证书

本文介绍利用 OpenSSL 自签发服务器 https 证书:CA 证书 (根证书) 和 server 证书 (服务器域名证书)。

XAMPP 套件已经自带 OpenSSL 了,若单独配置,可以自行安装 OpenSSL,同时避免使用 2014 年 4 月心脏出血漏洞时宣布存在漏洞的版本。(新版 XAMPP 已经完成了更新)。

具体教程

OpenSSL 官方推荐 win32 可执行文件版下载:
http://www.slproweb.com/products/Win32OpenSSL.html

1、ca.key CA 私钥:

openssl genrsa -des3 -out ca.key 2048

使用 “openssl genrsa -des3 -out ca.key 2048” 生成密钥文件时,是需要输入密钥的,运行的时候会让你输入并确认你的密钥,但是在 Windows 环境下,启动 Apache 会导致以下错误:

错误:Apache 启动失败
错误提示是:Init: SSLPassPhraseDialog builtin is not supported on Win32 (key file .....)
原因是:window 下的 apache 不支持加密的私钥文件。可不使用 des3 加密。
2、制作解密后的 CA 私钥,但一般不需要这一步:

openssl rsa -in ca.key -out ca_decrypted.key

3、ca.crt CA 根证书 (公钥):

openssl req -new -x509 -days 7305 -key ca.key -out ca.crt

根证书时,commonname 可以是公司名字,而不需要是域名。
4、服务器 server 私钥:

openssl genrsa -des3 -out server.key 2048

window 下的 apache 不支持加密的私钥文件。可不使用 des3 加密。
5、制作解密后的服务器 server 私钥 (Win+Apache 需要解密后的 server 私钥):

openssl rsa -in server.key -out server.key2

6、从服务器 server 私钥生成签名请求 CSR 文件:

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

服务器证书,commonName 时输入域名,如*.creke.net,支持*通配符,邮箱之后的内容可填可不填,如果生成个人证书,如用来加密签名电子邮件,commonName 输入姓名,emailAddress 是电子邮件地址
7、使用 Root CA 为 user 签名
需要使用到的文件:server.csr, ca.crt,ca.key

openssl ca -in server.csr -out server.crt -cert ca.crt -keyfile ca.key

如果 Root(CA 证书) 没有密码,以上命令后输入两次”y”,生成 server.crt 成功。
如果报错,请确定运行 openssl 命令的目录下是否有如下文件夹:
—demoCA(一级)
- newcerts(二级)
- private(二级)
及 demoCA 文件夹下有如下文件:
demoCA
- index.txt
- serial
index.txt 为空白文件,serial 文件中输入数字如:123.

三个步骤操作完成,附上 Root CA crt 格式转换为 der 格式命令:

openssl x509 -in ca.crt -outform DER -out ca.der

der 格式适用于某些移动设备导入根证书。

 

 

参考:

http://www.server110.com/apache/201309/1542.html

http://www.2cto.com/Article/201305/207362.html

http://suky.iteye.com/blog/713687

http://www.tuicool.com/articles/iIbM7n

http://cnzhx.net/blog/add-a-ssl-ca-to-firefox/

https://my.oschina.net/itblog/blog/651434  (特别推荐)

赞 (0) 打赏
版权声明:本文采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 (CC BY-NC-SA 4.0) 进行授权
文章名称:《使用 OpenSSL 自签发服务器 https 证书》
文章链接:https://www.qyh.name/192/%e4%bd%bf%e7%94%a8openssl%e8%87%aa%e7%ad%be%e5%8f%91%e6%9c%8d%e5%8a%a1%e5%99%a8https%e8%af%81%e4%b9%a6/
本站资源仅供个人学习交流,请于下载后 24 小时内删除,不允许用于商业用途,否则法律问题自行承担。

觉得文章有用就打赏一下

非常感谢你的打赏,我们将继续努力提供更多优质内容,让我们一起创建更加美好的网络世界!(注意:私密文章打赏不代表可以获得查看权限)

支付宝扫一扫

微信扫一扫