好物优选点击查看详情 京东购买

暂无内容

本地环境配置https

开发项目免不了本地配置https环境,本文将介绍自己创建证书颁发机构(CA),为自己的本地开发环境颁发证书
因为本机是win10,所以下面是以window为例

下载OpenSSL

ps:如果将OpenSSL选择的安装文件夹的“\bin\”文件夹已添加到系统路径环境变量中,就可以从任何地方使用。
键入命令openssl

创建私钥

  • 打开openssl ,下面是两种打开方式(git命令好像有些问题)
    (1)双击openssl.exe
    (2)配置环境变量的,打开cmd键入openssl
    本地环境配置https插图

    打开openssl

  • 创建
    键入如下命令
genrsa -des3 -out rootSSL.key 2048 

输入两次密码,我设置的是123456
此时在当前目录下生成一个密钥文件:rootSSL.key

创建证书文件

您可以选择创建一个持续X天的证书文件。在本例中,我们将选择1024天,但您可以选择任何数量-越长越好。
键入以下命令:

req -x509 -new -nodes -key rootSSL.key -sha256 -days 1024 -out rootSSL.pem 

根据自己情况依次输入
秘钥密码:123456
两个字母的国家代码:我用“CN”表示中国。
你的州或省:beijing。
你的城市:beijingshi。
一个组织名称:offcn。
一个组织单位的名字:zg。
一个公共名称,如服务器名或完全限定的域名(FQDN):yzj.com。
管理员电子邮件地址:xxx@qq.com
完成后你的当前目录下面会生成一个rootSSL.pem证书文件

信任根SSL证书

我们将使用Microsoft管理控制台(MMC)来信任根SSL证书。

  • 键盘win+R

  • 输入MMC回车

    本地环境配置https插图1

  • 选择菜单 “文件 > 增加/删除管理单元(M)”

    本地环境配置https插图2

  • 选择 “证书” 并 “添加”

    本地环境配置https插图3

  • 选择 “计算机账户(C)” 并 “下一步”

    本地环境配置https插图4

  • 选择 “本地计算机(运行此控制台的计算机)” 并 “完成”

    本地环境配置https插图5

  • 单击 “确定”返回到 MMC 界面

    本地环境配置https插图6

  • 双击 “证书 (本地计算)” 展开列表

    本地环境配置https插图7

  • 选择 “第三方根证书颁发机构”, 右击 “证书” 并选择 “所有任务” 中的 “导入”

    本地环境配置https插图8

  • 单击 “下一步” 并浏览选择 “rootSSL.pem” 文件,在前面 Step 2创建的根证书文件

    本地环境配置https插图9

    本地环境配置https插图10

  • 选择 “将所有的证书都放入下列存储” 并选择 “第三方根证书颁发机构”. 单击 “下一步” 直到完成向导。

    本地环境配置https插图11

    本地环境配置https插图12

  • 双击证书,可以看到本次添加的证书

    本地环境配置https插图13

    本地环境配置https插图14

为本地域颁发证书

本地域名的绑定这里就不赘述了,应该都是知道

  • 为新域创建私钥

我们将创建一个名为“m.sd.yzj.demo.key”的文件,其中包含该域的私钥信息。
键入以下命令:

req -new -sha256 -nodes -out m.sd.yzj.demo.csr -newkey rsa:2048 -keyout m.sd.yzj.demo.key -subj "/C=CN/ST=beijing/L=beijingshi/O=offcn/OU=yzj.com/CN=yzj/emailAddress=xxx@qq.com" 

如果出现如下错误,先关闭窗口,再重新打开openssl

2604:error:08064066:object identifier routines:OBJ_create:oid exists:crypto\objects\obj_dat.c:698: error in req 

可以更改“-subj”参数以反映您的国家、省、位置等

  • 使用根SSL证书颁发新证书
x509 -req -in m.sd.yzj.demo.csr -CA ../rootSSL.pem -CAkey ../rootSSL.key -CAcreateserial -out m.sd.yzj.demo.crt -days 500 -sha256 -extensions "authorityKeyIdentifier=keyid,issuer\n basicConstraints=CA:FALSE\n keyUsage = digitalSignature, nonRepudiation, keyEncipherment, dataEncipherment\n subjectAltName=DNS:m.sd.yzj.demo" 

注意看好rootSSL.pemrootSSL.key路径

在Web服务器中使用新的本地域证书

配置文件中添加(我用的nginx)

listen 443 ssl; ssl_certificate D:\wwwroot\ssl\m.sd.yzj.demo\m.sd.yzj.demo.crt; ssl_certificate_key D:\wwwroot\ssl\m.sd.yzj.demo\m.sd.yzj.demo.key; 

原文链接:https://www.jianshu.com/p/5ebc12a1396d

© 版权声明
THE END
喜欢就支持一下吧
点赞13 分享