当前位置: 首页 > news >正文

通过https方式访问内网IP

单位要做个用浏览器扫二维码的功能。我先在本地测试一直不成功,后来放到服务器上运行成功了。比较了一下,服务器上是https,但是本地没有证书。我问了一下信安的同事,要求二维码必须在本地扫描,不能上公网。所以只好在本地弄一个允许通过https方式访问IP的服务。从网上查了一下,都是mkcert能实现,所以按照别人的方式试了一下,果然成功了。下面是实验的记录,希望能帮到有相同需求的朋友。

mkcert是一个使用go语言编写的生成本地自签证书的小程序,具有跨平台,使用简单,支持多域名,自动信任CA等一系列方便的特性可供本地开发时快速创建https环境使用。

一、下载
其最新版本地址如下:https://github.com/FiloSottile/mkcert/releases/latest
根据内部服务器的操作系统类型下载对应的windows/Linux/arm版本即可,我这里是x86的。
wget https://github.com/FiloSottile/mkcert/releases/download/v1.4.4/mkcert-v1.4.4-linux-amd64

二、安装
 # 赋予权限
 chmod +x mkcert-v1.4.4-linux-amd64
 # 将mkcert文件移动到bin目录下
 sudo cp mkcert-v1.4.4-linux-amd64 /usr/local/bin/mkcert
 # 安装证书
 mkcert -install

三、生成证书
 # 得到证书的根目录,将该目录下的rootCA.pem文件下载,将生成的证书下载到需要访问该ip的pc机上备用
 mkcert -CAROOT
 # 将可信ip写入,并生成对应的ssl证书,执行中可能会要求输入密码,需要记住该密码,后续配置https时会用到
 mkcert localhost 127.0.0.1 ::1 192.168.1.99

四、Nginx部署证书
 # nginx部署需要crt和key文件,因此也需要通过mkcert生成的文件来进行转换
 openssl x509 -in localhost+3.pem -out localhost+3.crt
 openssl rsa -in localhost+3-key.pem -out localhost+3.key 
 # 将生成的这两个文件,复制到nginx的conf目录下,并配置nginx.conf
 #在nginx.conf填写证书文件的相对路径或绝对路径
 ssl_certificate conf.d/maruifu_cn/ssl/localhost+3.crt;
 #请填写私钥文件的相对路径或绝对路径
 ssl_certificate_key conf.d/maruifu_cn/ssl/localhost+3.key;
 


http://www.mrgr.cn/news/4343.html

相关文章:

  • Centos安装Jenkins教程详解版(JDK8+Jenkins2.346.1)
  • 深入浅出:理解TCP传输控制协议的核心概念
  • 使用SQLite进行Python简单数据存储的线程安全解决方案
  • 【JAVA多线程】CompletableFuture原理剖析
  • 谷歌云AI新作:CROME,跨模态适配器高效多模态大语言模型
  • [godot] 采用状态机时,如何处理攻击时移动?如“冲撞”
  • 【vue3】组件通信
  • 【大模型理论篇】关于LLaMA 3.1 405B以及小模型的崛起
  • Nginx: 配置项之server_name指令用法梳理
  • 什么是零拷贝?以及数据在内存中的流动途径
  • 手撕⼆叉树——堆
  • (2024)vue2+vue3学习笔记(持续更新)
  • 【精选】基于Python大型购物商城系统(京东购物商城,淘宝购物商城,拼多多购物商城爬虫系统)
  • H5,防止 h5 无限 debugger
  • 转转系统源码开发
  • 关于NetTopologySuite这个C#库的学习
  • 轮播图制作思路
  • 黑神话悟空苹果电脑可以玩吗?MacBook玩黑神话悟空游戏攻略 crossover软件永久激活码分享 crossover免费使用教程
  • 稳压二极管、肖特基二极管、TVS管、静电ESD管的区别
  • 数据结构—— 再探二叉树