> 技术文档 > 检查你的服务是否支持 TLS 1.2 的几种常用方式,适用于 Windows 系统和基于 OpenSSL 的环境_验证使用tlsv1.2

检查你的服务是否支持 TLS 1.2 的几种常用方式,适用于 Windows 系统和基于 OpenSSL 的环境_验证使用tlsv1.2

以下是检查你的服务是否支持 TLS 1.2 的几种常用方式,适用于 Windows 系统和基于 OpenSSL 的环境:
检查你的服务是否支持 TLS 1.2 的几种常用方式,适用于 Windows 系统和基于 OpenSSL 的环境_验证使用tlsv1.2


✅ 一、使用 openssl s_client 命令测试

🔧 命令:

openssl s_client -connect <host>:<port> -tls1_2

📌 示例:

openssl s_client -connect www.google.com:443 -tls1_2

✅ 判断依据:

  • 如果连接成功,并在输出中看到类似以下内容,则表示支持 TLS 1.2:
    Protocol : TLSv1.2

✅ 二、查看服务支持的协议版本(通过 openssl

🔧 命令:

openssl ciphers -v \'DEFAULT\'

✅ 判断依据:

  • 输出中包含 TLSv1.2 字样,说明默认配置支持 TLS 1.2。

✅ 三、使用 PowerShell 测试(Windows 原生)

🔧 命令:

$tcp = New-Object Net.Sockets.TcpClient(\"www.google.com\", 443)$ssl = New-Object Net.Security.SslStream($tcp.GetStream(), $false, { param($sender, $cert, $chain, $errors) return $true }, $null)$ssl.AuthenticateAsClient(\"www.google.com\", $null, [System.Security.Authentication.SslProtocols]::Tls12, $false)$ssl.SslProtocol

✅ 判断依据:

  • 若输出为 Tls12,则表示成功协商使用 TLS 1.2。

✅ 四、使用浏览器开发者工具(适用于 Web 服务)

操作步骤:

  1. 打开浏览器(如 Chrome)。
  2. 访问目标 HTTPS 站点。
  3. 打开 开发者工具(F12) > Security 标签页。
  4. 查看页面使用的协议版本。

✅ 判断依据:

  • 显示 “TLS 1.2” 或更高版本。

✅ 五、使用网络抓包工具(Wireshark)

操作步骤:

  1. 使用 Wireshark 抓取与目标服务的 HTTPS 连接流量。
  2. 查看 ClientHello 和 ServerHello 握手过程中的协议版本字段。

✅ 判断依据:

  • 协议版本为 TLS 1.2 (0x0303) 表示支持。

✅ 六、服务器端配置检查(适用于本地服务)

检查注册表(Windows Server):

路径:
HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\SecurityProviders\\SCHANNEL\\Protocols
检查项:
  • 是否启用了 TLS 1.2 子项,并且其下的 Enabled 值为 1

📋 总结表格

方法 工具/命令 是否需安装 OpenSSL 支持平台 适用场景 openssl s_client openssl s_client -connect host:port -tls1_2 是 Windows/Linux/macOS 快速验证远程服务是否支持 TLS 1.2 openssl ciphers openssl ciphers -v \'DEFAULT\' 是 Windows/Linux/macOS 查看当前系统或 OpenSSL 默认支持的协议 PowerShell .NET SslStream 否 Windows 无需安装 OpenSSL,原生验证 浏览器开发者工具 F12 > Security 否 Windows Web 应用快速验证 Wireshark 网络抓包分析 否 Windows/Linux 精确分析协议版本 注册表检查 SCHANNEL\\Protocols 否 Windows Server 本地服务协议启用状态检查

如你有特定服务类型(如 Apache、IIS、Nginx、Java 应用等),可提供详细信息,我可以给出更针对性的检测方法。