转译自:Kevin Attard Compagno,3CX 合作伙伴沟通经理

加固 Windows 服务器的出站连接

通过配置,使您的 Windows 服务器在进行出站 HTTPS 连接时使用更安全的密码套件和协议。如果您的 Windows 服务器保持默认的 TLS 客户端设置,它可能会优先发起 TLS 1.0 客户端连接,而非 TLS 1.3。

 

为什么 TLS 1.0 是不安全的?

这一点至关重要,因为 TLS 1.0 可能会协商一些在密码学上被认为虚弱的协议(例如 SHA1)。此外,如果某些远程服务强制要求更安全的连接,它们可能会拒绝来自您服务器的此类连接。

 

如何禁用 TLS 1.0

您可以使用具有注册表编辑权限的用户运行以下 PowerShell 命令:

# 创建注册表路径
$registryPath = "HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Client"
if (!(Test-Path $registryPath)) {
    New-Item -Path $registryPath -Force
}

# 针对出站客户端连接禁用 TLS 1.0
New-ItemProperty -Path $registryPath -Name "Enabled" -Value 0 -PropertyType DWORD -Force
New-ItemProperty -Path $registryPath -Name "DisabledByDefault" -Value 1 -PropertyType DWORD -Force

运行上述脚本可以使 Windows 服务器的出站连接更符合现代安全标准。

您可能需要重启 Windows 服务器才能使这些设置生效。

 

⚠️ 修改注册表 – 注意事项

修改 Windows 注册表可能会导致严重且不可逆的系统错误,或导致服务器无法启动。这些步骤仅供高级用户参考,风险自担

建议的预防措施:

  • 备份: 在编辑之前,请导出注册表项或进行虚拟机(VM)快照。

  • 测试: 在应用于生产环境之前,请先在分段(Staging)环境中验证更改。