个人制作的证书也就玩玩而已,浏览器是不认的,会一直有红色的安全警告,不过仅实现加密连接倒是没问题。
而阿里云和腾讯云都有1年期免费的单域名证书,可正常使用,浏览器不会出现红色“不安全”警告,而是显示绿色的“安全”提示。
以下是自助生成证书的过程。
OpenSSL 下载
http://www.slproweb.com/products/Win32OpenSSL.html
这里下载 openssl win64 版本,并安装。
OpenSSL 设置环境
设置系统环境变量
set OPENSSL_CONF=C:/OpenSSL-Win64/bin/openssl.cfg
set path=C:\OpenSSL-Win64\bin;%path%;
首次使用时,创建目录 "newcerts"
C:\OpenSSL-Win32\bin\PEM\demoCA\newcerts
创建一个空文件 "serial" (没有扩展名)
C:\OpenSSL-Win32\bin\PEM\demoCA\serial
制作CA证书
进入目录 C:\OpenSSL-Win64\bin\PEM
生成 ca.key CA 私钥
openssl genrsa -out ca.key 4096
制作解密后的 CA 私钥(一般无此必要)
openssl rsa -in ca.key -out ca_decrypted.key
生成 ca.crt CA 根证书(公钥):
openssl req -new -x509 -days 7304 -key ca.key -out ca.crt
制作生成网站的证书并用CA 签名认证
如果CA证书已经存在或者想沿用,则可以直接从这一步开始。
生成证书私钥:
openssl genrsa -out server.pem 4096
制作解密后的证书私钥:
openssl rsa -in server.pem -out server.key
生成签名请求:
openssl req -new -key server.pem -out server.csr
在 common name 中填入网站域名,如 blog.creke.net 即可生成该站点的证书,同时也可以使用泛域名如 *.creke.net 来生成所有二级域名可用的网站证书。
用CA 进行签名:
openssl ca -policy policy_anything -days 3652 -cert ca.crt -keyfile ca.key -in server.csr -out server.crt
制作过程
Nginx 配置
以下是 Nginx 启用的部分配置,需要设置 ssl_certificate 和 ssl_certificate_key 指定证书和公钥,并且 listen 443,然后重新启动 Nginx,浏览器就可以用的 https://yourhost 的方式网页了。
转载自:
http://blog.creke.net/762.html
相关文章
http://www.cnblogs.com/gsls200808/p/4502044.html
[转帖]用 OpenSSL 创建可以用于 https 的证书
原文:https://www.cnblogs.com/jinanxiaolaohu/p/11362890.html