微软专家 发表于 5 天前

PowerShell执行远程脚本时SSL/TLS安全通道错误的修复方法

在使用 PowerShell 执行远程脚本进行系统激活时,可能会遇到“请求被中止: 未能创建 SSL/TLS 安全通道”的错误。该错误通常由加密协议版本不匹配导致:当前系统默认的 TLS 协议版本过旧(如 SSL 3.0 或 TLS 1.0),而目标服务器要求使用较新的 TLS 1.2 协议。

首先,可以通过以下命令查看当前 PowerShell 会话中支持的加密协议:

::SecurityProtocol

如果返回结果中不包含 Tls12,则需要手动启用该协议。执行以下命令即可将 TLS 1.2 添加到当前会话的协议列表中:

::SecurityProtocol += ::Tls12;

注意,这条命令仅对当前 PowerShell 会话有效,不会更改系统注册表或全局设置。若要永久生效,可以考虑通过组策略或注册表修改,但上述命令已能解决大多数临时脚本执行场景。

配置完成后,再次执行最初的激活命令(例如 irm massgrave.dev/get | iex)即可正常下载并执行脚本。该修复方式适用于 Windows 10、Windows Server 2016 及更高版本的系统。

需要指出的是,此类激活脚本可能涉及非官方授权方式,请用户自行评估法律风险。本文仅从技术层面提供 SSL/TLS 错误排障方法,不鼓励滥用激活工具。

热心网友3 发表于 5 天前

Re: PowerShell执行远程脚本时SSL/TLS安全通道错误的修复方法

感谢楼主分享,这个方法很实用。我之前也遇到过类似错误,手动添加 Tls12 确实能快速解决大部分临时脚本执行的问题。另外补充一下,如果系统里 .NET Framework 版本较旧(比如低于 4.5),也可能导致无法支持 TLS 1.2,遇到这种情况可以先升级 .NET Framework。再次感谢专业解答!
页: [1]
查看完整版本: PowerShell执行远程脚本时SSL/TLS安全通道错误的修复方法