choco 安装 和 mkcert 本地https

原文链接:https://blog.spiritling.cn/posts/4cb12659/

Choco命令行安装

直接拷贝执行即可,注意需要管理员身份运行

cmd

安装:

代码语言:javascript代码运行次数:0运行复制

@"%SystemRoot%System32WindowsPowerShellv1.0powershell.exe" -NoProfile -InputFormat None -ExecutionPolicy Bypass -Command "iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))" && SET "PATH=%PATH%;%ALLUSERSPROFILE%chocolateybin"

PowerShell

安装:

代码语言:javascript代码运行次数:0运行复制

Set-ExecutionPolicy Bypass -Scope Process -Force; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))

检查安装是否成功代码语言:javascript代码运行次数:0运行复制

choco -v

设置安装路径

choco 安装 和 mkcert 本地https

修改路径后,需要添加安装路径下的

bin

目录到

path

环境中。

有时安装完毕后,下载的软件无法使用,有可能是

bin

目录没有在

path

环境中。

常用指令

Commands

choco list -li 查看本地安装的软件choco search nodejs 查找安装包choco install sublimetext3 下载choco uninstall sublimetext3 卸载choco upgrade sublimetext3 更新(update)mkcert

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

安装 mkcert

安装方式也非常简单,由于 go 语言的静态编译和跨平台的特性,官方提供各平台预编译的版本,直接下载到本地,给可执行权限(Linux/Unix 需要)就可以了。下载地址: https://github.com/FiloSottile/mkcert/releases/latest

此外,mkcert 已经推送至 Homebrew, MacPorts, Linuxbrew, Chocolatey, Scoop 等包管理平台中,也可以直接借助对应的包管理平台安装。如:

代码语言:javascript代码运行次数:0运行复制

choco install mkcert

安装成功后,应该可以使用 mkcert 命令了:

代码语言:javascript代码运行次数:0运行复制

PS C:Usersabcfyprojects> mkcertUsing the local CA at "C:UsersabcfyAppDataLocalmkcert" Usage of mkcert:        $ mkcert -install        Install the local CA in the system trust store.        $ mkcert example.org        Generate "example.org.pem" and "example.org-key.pem".        $ mkcert example.com myapp.dev localhost 127.0.0.1 ::1        Generate "example.com+4.pem" and "example.com+4-key.pem".        $ mkcert "*.example.it"        Generate "_wildcard.example.it.pem" and "_wildcard.example.it-key.pem".        $ mkcert -uninstall        Uninstall the local CA (but do not delete it).For more options, run "mkcert -help".

mkcert 基本使用

从上面自带的帮助输出来看,mkcert 已经给出了一个基本的工作流,规避了繁杂的 openssl 命令,几个简单的参数就可以生成一个本地可信的 https 证书了。更详细的用法直接看官方文档就好。

将 CA 证书加入本地可信 CA代码语言:javascript代码运行次数:0运行复制

$ mkcert -installUsing the local CA at "C:UsersabcfyAppDataLocalmkcert" ✨

仅仅这么一条简单的命令,就帮助我们将 mkcert 使用的根证书加入了本地可信 CA 中,以后由该 CA 签发的证书在本地都是可信的。

在 Windows 的可信 CA 列表可以找到该证书

生成自签证书

生成自签证书的命令十分简单:

代码语言:javascript代码运行次数:0运行复制

mkcert domain1 [domain2 [...]]

直接跟多个要签发的域名或 ip 就行了,比如签发一个仅本机访问的证书(可以通过 127.0.0.1 和 localhost,以及 ipv6 地址::1 访问)

代码语言:javascript代码运行次数:0运行复制

mkcert localhost 127.0.0.1 ::1Using the local CA at "C:UsersabcfyAppDataLocalmkcert" Created a new certificate valid for the following names ? - "localhost" - "127.0.0.1" - "::1"The certificate is at "./localhost+2.pem" and the key at "./localhost+2-key.pem" 

通过输出,我们可以看到成功生成了 localhost+2.pem 证书文件和 localhost+2-key.pem 私钥文件,只要在 web server 上使用这两个文件就可以了。

默认生成的证书格式为 PEM(Privacy Enhanced Mail)格式,任何支持 PEM 格式证书的程序都可以使用。比如常见的 Apache 或 Nginx 等,也可以使用参数指定生成的格式,比如 windows 的 pfx 格式证书

高级参数代码语言:javascript代码运行次数:0运行复制

-cert-file FILE, -key-file FILE, -p12-file FILECustomize the output paths.-clientGenerate a certificate for client authentication.-ecdsaGenerate a certificate with an ECDSA key.-pkcs12Generate a ".p12" PKCS #12 file, also know as a ".pfx" file,containing certificate and key for legacy applications.-csr CSRGenerate a certificate based on the supplied CSR. Conflicts withall other flags and arguments except -install and -cert-file.

pem 证书生成

不需要额外的任何操作,使用

mkcert domain.com

,即可生成

domain.com.pem

domain.com-key.pem

pfx 证书生成

密码:changeit

代码语言:javascript代码运行次数:0运行复制

C:Usersalbertxiao>mkcert -pkcs12 *.example.comUsing the local CA at "C:UsersalbertxiaoAppDataLocalmkcert" Created a new certificate valid for the following names ? - "*.example.com"Reminder: X.509 wildcards only go one level deep, so this won't match a.b.example.com ℹ️The PKCS#12 bundle is at "./_wildcard.example.com.p12" The legacy PKCS#12 encryption password is the often hardcoded default "changeit" ℹ️

crt 证书代码语言:javascript代码运行次数:0运行复制

mkcert -key-file localhost.key -cert-file localhost.crt localhost

局域网构建

有时候我们需要在局域网内测试 https 应用,这种环境可能不对外,因此也无法使用像 Let's encrypt 这种免费证书的方案给局域网签发一个可信的证书,而且 Let's encrypt 本身也不支持认证 Ip。

先来回忆一下证书可信的三个要素:

由可信的 CA 机构签发访问的地址跟证书认证地址相符证书在有效期内

如果期望我们自签证书在局域网内使用,以上三个条件都需要满足。很明显自签证书一定可以满足证书在有效期内,那么需要保证后两条。我们签发的证书必须匹配浏览器的地址栏,比如局域网的 ip 或者域名,此外还需要信任 CA。

我们先重新签发一下证书,加上本机的局域网 ip 认证:

代码语言:javascript代码运行次数:0运行复制

mkcert localhost 127.0.0.1 ::1 192.168.31.170Using the local CA at "C:UsersabcfyAppDataLocalmkcert" Created a new certificate valid for the following names ? - "localhost" - "127.0.0.1" - "::1" - "192.168.31.170"The certificate is at "./localhost+3.pem" and the key at "./localhost+3-key.pem" 

再次验证发现使用https://192.168.31.170本机访问也是可信的。然后我们需要将CA证书发放给局域网内其他的用户。

代码语言:javascript代码运行次数:0运行复制

mkcert -CAROOTC:UsersabcfyAppDataLocalmkcert

使用 mkcert -CAROOT 命令可以列出 CA 证书的存放路径

可以看到 CA 路径下有两个文件 rootCA-key.pem 和 rootCA.pem 两个文件,用户需要信任 rootCA.pem 这个文件。将 rootCA.pem 拷贝一个副本,并命名为 rootCA.crt(因为 windows 并不识别 pem 扩展名,并且 Ubuntu 也不会将 pem 扩展名作为 CA 证书文件对待),将 rootCA.crt 文件分发给其他用户,手工导入。

windows 导入证书的方法是双击这个文件,在证书导入向导中将证书导入受信任的根证书颁发机构:

choco 安装 和 mkcert 本地https

Ubuntu 的做法可以将证书文件(必须是 crt 后缀)放入/usr/local/share/ca-certificates/,然后执行 sudo update-ca-certificates

Android 和 IOS 信任 CA 证书的做法参考官方文档。

以上就是choco 安装 和 mkcert 本地https的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/167608.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年11月1日 00:43:14
下一篇 2025年11月1日 00:44:10

相关推荐

  • Word2013如何插入SmartArt图形_Word2013SmartArt插入的视觉表达

    答案:可通过四种方法在Word 2013中插入SmartArt图形。一、使用“插入”选项卡中的“SmartArt”按钮,选择所需类型并插入;二、从快速样式库中选择常用模板如组织结构图直接应用;三、复制已有SmartArt图形到目标文档后调整内容与格式;四、将带项目符号的文本选中后右键转换为Smart…

    2025年12月6日 软件教程
    000
  • 怎样用免费工具美化PPT_免费美化PPT的实用方法分享

    利用KIMI智能助手可免费将PPT美化为科技感风格,但需核对文字准确性;2. 天工AI擅长优化内容结构,提升逻辑性,适合高质量内容需求;3. SlidesAI支持语音输入与自动排版,操作便捷,利于紧急场景;4. Prezo提供多种模板,自动生成图文并茂幻灯片,适合学生与初创团队。 如果您有一份内容完…

    2025年12月6日 软件教程
    000
  • word表格怎么调整行高_word表格行高调整的具体操作

    手动拖动可快速调整单行行高;2. 通过表格属性精确设置指定高度,选择固定值或最小值模式;3. 全选表格批量统一行高;4. 设为自动或最小值使行高随内容自适应,确保文字显示完整。 在使用Word制作表格时,调整行高是常见的排版需求。合理的行高能让表格内容更清晰易读。下面介绍几种常用的调整Word表格行…

    2025年12月6日 软件教程
    000
  • 怎么下载安装快手极速版_快手极速版下载安装详细教程

    1、优先通过华为应用市场搜索“快手极速版”,确认开发者为北京快手科技有限公司后安装;2、若应用商店无结果,可访问快手极速版官网下载APK文件,需手动开启浏览器的未知来源安装权限;3、也可选择豌豆荚、应用宝等可信第三方平台下载官方版本,核对安全标识后完成安装。 如果您尝试在手机上安装快手极速版,但无法…

    2025年12月6日 软件教程
    000
  • Linux中如何安装Nginx服务_Linux安装Nginx服务的完整指南

    首先更新系统软件包,然后通过对应包管理器安装Nginx,启动并启用服务,开放防火墙端口,最后验证欢迎页显示以确认安装成功。 在Linux系统中安装Nginx服务是搭建Web服务器的第一步。Nginx以高性能、低资源消耗和良好的并发处理能力著称,广泛用于静态内容服务、反向代理和负载均衡。以下是在主流L…

    2025年12月6日 运维
    000
  • 当贝X5S怎样看3D

    当贝X5S观看3D影片无立体效果时,需开启3D模式并匹配格式:1. 播放3D影片时按遥控器侧边键,进入快捷设置选择3D模式;2. 根据片源类型选左右或上下3D格式;3. 可通过首页下拉进入电影专区选择3D内容播放;4. 确认片源为Side by Side或Top and Bottom格式,并使用兼容…

    2025年12月6日 软件教程
    000
  • Linux journalctl与systemctl status结合分析

    先看 systemctl status 确认服务状态,再用 journalctl 查看详细日志。例如 nginx 启动失败时,systemctl status 显示 Active: failed,journalctl -u nginx 发现端口 80 被占用,结合两者可快速定位问题根源。 在 Lin…

    2025年12月6日 运维
    000
  • Linux如何防止缓冲区溢出_Linux防止缓冲区溢出的安全措施

    缓冲区溢出可通过栈保护、ASLR、NX bit、安全编译选项和良好编码实践来防范。1. 使用-fstack-protector-strong插入canary检测栈破坏;2. 启用ASLR(kernel.randomize_va_space=2)随机化内存布局;3. 利用NX bit标记不可执行内存页…

    2025年12月6日 运维
    000
  • Linux如何优化系统性能_Linux系统性能优化的实用方法

    优化Linux性能需先监控资源使用,通过top、vmstat等命令分析负载,再调整内核参数如TCP优化与内存交换,结合关闭无用服务、选用合适文件系统与I/O调度器,持续按需调优以提升系统效率。 Linux系统性能优化的核心在于合理配置资源、监控系统状态并及时调整瓶颈环节。通过一系列实用手段,可以显著…

    2025年12月6日 运维
    000
  • Pboot插件数据库连接的配置教程_Pboot插件数据库备份的自动化脚本

    首先配置PbootCMS数据库连接参数,确保插件正常访问;接着创建auto_backup.php脚本实现备份功能;然后通过Windows任务计划程序或Linux Cron定时执行该脚本,完成自动化备份流程。 如果您正在开发或维护一个基于PbootCMS的网站,并希望实现插件对数据库的连接配置以及自动…

    2025年12月6日 软件教程
    000
  • Linux命令行中wc命令的实用技巧

    wc命令可统计文件的行数、单词数、字符数和字节数,常用-l统计行数,如wc -l /etc/passwd查看用户数量;结合grep可分析日志,如grep “error” logfile.txt | wc -l统计错误行数;-w统计单词数,-m统计字符数(含空格换行),-c统计…

    2025年12月6日 运维
    000
  • 如何在Linux中使用cron和at定时任务?

    cron用于周期性任务,at用于一次性任务。例如:0 2 * /backup.sh每天凌晨2点备份;echo “shutdown” | at 11:00 PM设置晚上11点关机。使用crontab -e编辑、atq查看、atrm删除任务,注意使用绝对路径、重定向输出并确保at…

    2025年12月6日 运维
    000
  • Linux命令行中fc命令的使用方法

    fc 是 Linux 中用于管理命令历史的工具,可查看、编辑并重新执行历史命令。输入 fc 直接编辑最近一条命令,默认调用 $EDITOR 打开编辑器修改后自动执行;通过 fc 100 110 或 fc -5 -1 可批量编辑指定范围的历史命令,保存后按序重跑;使用 fc -l 列出命令历史,支持起…

    2025年12月6日 运维
    000
  • VSCode代码:智能提示与补全优化

    合理配置语言服务器、扩展与编辑器设置可显著提升VSCode智能提示效率。首先确保启用内置IntelliSense并安装对应语言扩展(如Pylance、IntelliCode),通过jsconfig.json/tsconfig.json优化路径识别;其次开启typescript.suggest.pat…

    2025年12月6日 开发工具
    000
  • 如何在Linux中查看磁盘IO性能?

    iostat和iotop是Linux中诊断磁盘IO性能的核心工具,配合df、du和sar可全面分析IO瓶颈与空间压力。 在Linux中查看磁盘IO性能,主要依赖系统自带的命令行工具。这些工具能实时或历史性地展示磁盘读写情况、响应时间、利用率等关键指标,帮助判断是否存在IO瓶颈。 使用 iostat …

    2025年12月6日 运维
    000
  • 怎么在VSCode里管理多个项目?

    使用多根工作区可高效管理多个项目,通过“添加文件夹到工作区”整合项目并保存为.code-workspace文件,实现一键恢复;各项目可在其.vscode/settings.json中配置独立设置,工作区级设置优先于全局但低于文件夹级;利用资源管理器和Ctrl+P快速导航与搜索;每个项目可定义独立的l…

    2025年12月6日 开发工具
    000
  • Vue.js应用中配置环境变量:灵活管理后端通信地址

    在%ignore_a_1%应用中,灵活配置后端api地址等参数是开发与部署的关键。本文将详细介绍两种主要的环境变量配置方法:推荐使用的`.env`文件,以及通过`cross-env`库在命令行中设置环境变量。通过这些方法,开发者可以轻松实现开发、测试、生产等不同环境下配置的动态切换,提高应用的可维护…

    2025年12月6日 web前端
    000
  • 如何在Linux中删除文件和目录?

    使用rm命令删除文件,如rm filename;2. rmdir仅删除空目录,如rmdir dirname;3. rm -r递归删除非空目录,rm -rf强制删除且无提示,需谨慎使用。 在Linux中删除文件和目录主要使用rm和rmdir命令,根据需求选择合适的方式操作。 删除文件(rm) 使用rm…

    2025年12月6日 运维
    000
  • VSCode选择范围提供者实现

    Selection Range Provider是VSCode中用于实现层级化代码选择的API,通过注册provideSelectionRanges方法,按光标位置从内到外逐层扩展选择范围,如从变量名扩展至函数体;需结合AST解析构建准确的SelectionRange链式结构以提升选择智能性。 在 …

    2025年12月6日 开发工具
    000
  • JavaScript动态生成日历式水平日期布局的优化实践

    本教程将指导如何使用javascript高效、正确地动态生成html表格中的日历式水平日期布局。重点解决直接操作`innerhtml`时遇到的标签闭合问题,通过数组构建html字符串来避免浏览器解析错误,并利用事件委托机制优化动态生成元素的事件处理,确保生成结构清晰、功能完善的日期展示。 在前端开发…

    2025年12月6日 web前端
    000

发表回复

登录后才能评论
关注微信