2

使用mkcert生成自签名证书

 1 year ago
source link: https://easeapi.com/blog/173-local-https-mkcert.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

使用mkcert生成自签名证书

原创 2023-05-11

本地HTTP环境无法测试一些浏览器的特性,本文介绍一种便捷的方案在本地部署自签名HTTPS环境。

本博客采用的是Let’s Encrypt+acme.sh方案部署线上HTTPS证书,已上线稳定运行很长时间。最近在做浏览器指纹相关的调研时发现,本地的HTTP环境无法直接调用一些API,就是在上一篇文章中提到的Secure Context安全上下文限制 ,本文将介绍在本地Web环境部署自签名HTTPS证书的便捷方案。

mkcert是一个制作本地自签名HTTPS证书的简单工具,它的使用非常简单,甚至不需要额外的配置信息。

安装mkcert

以macOS系统为例,可以通过Homebrew直接安装mkcert工具:

brew install mkcert

为本地环境新建并安装根证书

mkcert -install

根证书rootCA-key.pemrootCA.pem将被安装在~/Library Application Support/mkcert。默认会自动在PC系统和浏览器安装这个根证书。

为域名或IP创建HTTPS证书

mkcert 127.0.0.1 #创建IP证书
mkcert easeapi.com #或创建域名证书

执行完成后会在在当前目录生成{ip或域名}-key.pem{ip或域名}.pem文件。

配置Web服务器

以Nginx为例,在Nginx配置文件的http或server节点增加配置项:

listen 443 ssl
ssl_certificate {ip或域名}.pem;
ssl_certificate_key {ip或域名}-key.pem;

在移动设备上安装根证书

以上操作完成后,默认会在mkcert -install完成时将根证书安装在PC上,PC浏览器可以直接通过HTTPS协议访问本地Web。而对于移动设备就需要先安装根证书才能正常访问。

在iOS上使用

Safari浏览器上通过HTTP协议访问上述过程生成的rootCA.pem文件。按照系统提示安装根证书。

在Android上使用

一些Android机型可以参考iOS的方法安装,但另一些Android机型可能不识别pem格式的文件。此时先将`rootCA.pem下载到手机文件系统;打开系统设置,找到类似 安全-凭据管理 的设置项,选择从存储设备安装证书即可。

相关文章:

SSH修改默认22端口
inode用尽导致磁盘空间不足
WordPress安装及基本配置
使用WP-CLI管理WordPress
MAC升级PHP7及Apache错误排查笔记

wechat.png

您的电子邮箱地址不会被公开,必填项已用*标注。

留言内容 *

显示名称 *

电子邮箱地址 *

个人网站地址

在此浏览器中保存我的显示名称、邮箱地址和网站地址,以便下次留言时使用。


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK