内网使用openssl自签名证书开启https连接,同时解决chrome浏览器中的不安全访问

内网使用openssl自签名证书开启https连接,同时解决chrome浏览器中的不安全访问

  1. 在内网中开启https访问,使用ip,请直接看第二步。如果是外网域名的话,建议直接去从 阿里云或者其他的网站中直接用权威机构颁发的证书。
    在这里插入图片描述
  2. 请先安装OpenSSL
  3. 生成证书
    创建根证书
    新建anxinCA.cnf文件并输入以下内容:
[ req ]
distinguished_name  = req_distinguished_name
x509_extensions     = root_ca
 
[ req_distinguished_name ]
 
# 以下内容可随意填写
countryName             = CN (2 letter code)
countryName_min         = 2
countryName_max         = 2
stateOrProvinceName     = beijing
localityName            = beijing
0.organizationName      = anxin
organizationalUnitName  = technology 
commonName              = anxin
commonName_max          = 64
emailAddress            = concat@anxin.com 
emailAddress_max        = 64
 
[ root_ca ]
basicConstraints            = critical, CA:true
  1. 在创建一个文件 anxinServerCA.ext 建议先创建anxinServerCA.txt,修改完毕后再把后缀改为 ext
subjectAltName = @anxin
extendedKeyUsage = serverAuth
 
[anxin]
 
# 域名,如有多个用DNS.2,DNS.3…来增加
DNS.1 = 
# IP地址
IP.1 = 192.168.137.1

文件介绍
anxinCA.cnf文件是为申请CA根证书的配置文件;
anxinServerCA.ext是生成服务器证书的扩展配置文件;

  1. 打开,cmd中执行 如下命令 注意下面命令中的 anxin CA可以改为自己的信息,然后 /CN=192.168.137.1 也要改为自己要对应的ip
openssl req -x509 -newkey rsa:2048 -out anxinCA.cer -outform PEM -keyout anxinCA.pvk -days 10000 -verbose -config anxinCA.cnf -nodes -sha256 -subj "/CN=anxin CA"
 
openssl req -newkey rsa:2048 -keyout anxinServerCA.pvk -out anxinServerCA.req -subj /CN=192.168.137.1 -sha256 -nodes
openssl x509 -req -CA anxinCA.cer -CAkey anxinCA.pvk -in anxinServerCA.req -out anxinServerCA.cer -days 10000 -extfile anxinServerCA.ext -sha256 -set_serial 0x1111
  1. 执行完毕后会生成相应的文件。
    在这里插入图片描述
  2. 在nginx中配置https加密文件。 以nginx.conf中修改为例,建议在conf同级别,新建一个文件夹 ssl ,然后把anxinServerCA.pvk 和anxinServerCA.cer 复制过去,我改名为 cert.pvk ,cert.cer (可以不修改)
 server {
 
    listen 443 default ssl;  #监听443端口
 
    server_name    www.test000001.com;
 
    ssl_certificate     /etc/nginx/ssl/cert.cer;
 
    ssl_certificate_key /etc/nginx/ssl/cert.pvk;
 
    ssl_session_cache    shared:SSL:1m;
 
    ssl_session_timeout  5m;
 
    ssl_ciphers  HIGH:!aNULL:!MD5;
 
    ssl_prefer_server_ciphers  on;
 
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
 
    location / {
 
        root /test_code;
 
        index index.html;
 
    }
 
}
  1. 此时配置完成之后,打开chrome浏览器访问的时候,会提示不安全。然后 安装客户端证书。 安装步骤如下。
    (1)双击 anxinCA.cer 文件 --安装证书 – 选择本地计算机 - 将所有有证书都放入下列存储 -点击浏览 - 受信任的根证书颁发机构
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

点击确定 ,然后下一步,会提示导入完成。 此时关闭浏览器重新打开,然后左上角的变为了 安全连接,即可。
注意,如果此时还是不安全, 记得一定要重启电脑然后在打开浏览器访问后尝试,如果还不行,在尝试第9步

  1. 此时若还不安全,错误代码:NET::ERR_CERT_AUTHORITY_INVALID
    在这里插入图片描述
  2. 解决办法 。在chrome的地址栏里输入 chrome://net-internals/#hsts ,把192.168.137.1 从HSTS中删除,如下图: 然后重启浏览器

原因在于,chrome浏览器新加入了HSTS策略(见上图红色圈)。使用HSTS策略是chrome加入的新特性,使用该策略的网站,会强制浏览器使用HTTPS协议与该网站通信

在这里插入图片描述
删除证书

【Win+R】—> certmgr.msc —> 操作 —>查找证书 —> 右键删除

转发链接:https://blog.csdn.net/my_interface/article/details/112224658

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值