Win11通过PowerShell新版命令New-SelfSignedCertificate生成SSL

冬枫小哥_1258

冬枫小哥_1258

2026-10-22

534人浏览

原创

必须以管理员身份运行powershell,用new-selfsignedcertificate命令生成含localhost、ip和域名的san证书,并导入root存储后执行certutil -generatesstfromwu刷新缓存,才能使windows信任该证书。

win11通过powershell新版命令new-selfsignedcertificate生成ssl

在Windows 11中为本地Web服务、测试API或内部HTTPS站点快速生成可信任的SSL证书,必须使用PowerShell内置的New-SelfSignedCertificate命令——它无需安装OpenSSL,不依赖外部工具,且原生支持Subject Alternative Name(SAN)扩展,避免浏览器提示“您的连接不是私密连接”。

生成带IP和域名的自签名SSL证书

这一步必须以管理员身份运行PowerShell,否则证书无法写入LocalMachine\My存储,后续IIS或WinRM绑定将失败。

执行以下命令:

New-SelfSignedCertificate -DnsName "localhost", "192.168.1.100", "dev.internal" -KeyAlgorithm RSA -KeyLength 2048 -CertStoreLocation "Cert:\LocalMachine\My" -NotAfter (Get-Date).AddYears(2) -HashAlgorithm SHA256

命令中-DnsName参数同时指定多个标识:localhost用于开发调试,IP地址用于局域网设备访问,自定义域名如dev.internal便于模拟真实环境。若只填一个值(如仅"192.168.1.100"),Chrome/Firefox新版会直接拒绝建立HTTPS连接,【必须包含localhost或DNS可解析名】。

执行后记下控制台输出的Thumbprint(指纹),形如A1B2C3...F9,后续绑定和导出都依赖它。

将证书导出为PFX文件供Nginx/Apache使用

方法一:用证书指纹精确导出(推荐)

先获取证书对象:
$cert = Get-ChildItem -Path Cert:\LocalMachine\My | Where-Object {$_.Thumbprint -eq "A1B2C3...F9"}

再导出为带密码的PFX:
$pwd = ConvertTo-SecureString -String "MyPass123!" -Force -AsPlainText
Export-PfxCertificate -Cert $cert -FilePath "C:\ssl\server.pfx" -Password $pwd

SSL Certificate Monitor
SSL Certificate Monitor

检查一个或多个域名的 SSL/TLS 证书到期时间、颁发者、协议及 SAN 信息,用于应要求检查证书、监控到期或验证 HTTPS 等场景。

下载

方法二:按时间筛选最新证书(适合批量脚本)
Get-ChildItem Cert:\LocalMachine\My \| Where-Object {$_.FriendlyName -eq "" -and $_.NotAfter -gt (Get-Date)} \| Sort-Object NotAfter -Descending \| Select-Object -First 1 \| Export-PfxCertificate -FilePath "C:\ssl\latest.pfx" -Password (ConvertTo-SecureString "temp" -Force -AsPlainText)

注意:导出路径C:\ssl\需提前手动创建,否则报错“找不到路径”。PFX密码必须用SecureString传递,明文写入脚本会触发PowerShell执行策略拦截。

让Windows系统信任该证书(客户端免警告)

第一步:复制证书到受信任的根证书颁发机构

$cert = Get-ChildItem Cert:\LocalMachine\My \| Where-Object {$_.Thumbprint -eq "A1B2C3...F9"}
$destStore = New-Object System.Security.Cryptography.X509Certificates.X509Store "Root", "LocalMachine"
$destStore.Open("ReadWrite")
$destStore.Add($cert)
$destStore.Close()

第二步:强制刷新证书信任状态(关键)

certutil -generateSSTFromWU

这一步不能跳过。仅导入Root存储后,部分应用(如Edge 129+、curl 8.10+)仍会校验Windows Update根证书列表缓存,不执行certutil命令会导致“NET::ERR_CERT_AUTHORITY_INVALID”错误持续存在。

第三步:验证是否生效

在浏览器中访问https://192.168.1.100:8443,不再弹出“不安全”警告即成功。

相关专题

更多
SSL检测工具介绍
SSL检测工具介绍

SSL检测工具有SSL Labs、SSL Check、SSL Server Test、SSLMate、SSL/TLS Analyzer等。详细介绍:1、SSL Labs是一个由Qualys提供的在线SSL检测工具,可以评估服务器证书的部署情况、加密套件、协议支持等方面的安全性,它提供了一个详细的报告,包括证书的颁发者、有效期、安全性配置等;2、SSL Check等等。

2023.10.20

770

3

Golangci-lint安装与入门教程
Golangci-lint安装与入门教程

本专题讲解Golangci-lint的安装、初始化、基础命令和首次代码检查,覆盖本地环境、Docker及多平台用法,帮助Go开发者快速上手。

2026.10.22

0

15

PHP2Shell高危漏洞修复教程
PHP2Shell高危漏洞修复教程

PHP2Shell漏洞是什么,哪些PHP版本和运行环境会受到影响,服务器应该如何检测与修复?本专题提供版本自查脚本、Linux与Docker升级命令、PHP-FPM和Apache排查步骤,以及修复验证、临时缓解和应急响应方案。

2026.10.22

0

12

剧云人物设定与关系管理教程
剧云人物设定与关系管理教程

本专题介绍剧云人物设定与关系管理,讲解角色小传、性格职业、人物目标、背景资料和关系网络的创建及维护方法。

2026.10.22

0

16

剧云故事大纲与分场规划教程
剧云故事大纲与分场规划教程

本专题讲解剧云梗概与多级大纲功能,覆盖全局、分集、分场结构生成,以及主线冲突、剧情节点和场次顺序调整。

2026.10.22

0

15

VibeKnow PPT讲解视频教程汇总
VibeKnow PPT讲解视频教程汇总

本专题介绍VibeKnow PPT讲解模式的素材准备、旁白生成、页面节奏、画面呈现与导出设置,适合课程和培训场景。

2026.10.22

0

16

VibeKnow PDF转视频教程合集
VibeKnow PDF转视频教程合集

本专题围绕VibeKnow的PDF转视频功能,讲解文件准备、内容解析、脚本生成、重点可视化及配音字幕检查方法。

2026.10.22

0

12

二狗PPT模板与视觉设计
二狗PPT模板与视觉设计

本专题介绍二狗PPT的职场模板、主题风格与页面版式,覆盖模板切换、色彩选择、内容匹配和正式汇报场景下的视觉优化方法。

2026.10.22

0

13

php漏洞修复方法
php漏洞修复方法

PHP漏洞聚合专题,持续整理PHP最新高危漏洞、CVE安全预警、受影响版本、自查命令及修复方案,覆盖PHP-FPM、Docker、Ubuntu与Linux服务器环境,帮助开发者快速完成漏洞排查、版本升级和安全加固。

2026.10.22

20

31

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
简单聊聊mysql8与网络通信
简单聊聊mysql8与网络通信

共1课时 | 0.1万人学习