更新到 Mozilla Firefox 38 后,我们可以在一些 HTTPS 网站上看到“安全连接失败”消息。
如果我们使用“security.tls.insecure_fallback_hosts”将网站放在排除列表中 - 那么我们可以看到它可以通过 TLSv1.2 连接(使用https://addons.mozilla.org/en-us/firefox/addon/calomel -ssl-验证/ )
我们怀疑服务器的问题是因为 TLS 版本不容忍。
问题:是否有任何脚本和解决方案来测试给定端口上的给定网络服务器是否具有 TLS 版本不容忍?服务器不在互联网上公开。
您可以使用 OpenSSL 命令行工具进行测试,例如作为起点:
$ openssl s_client -connect example.com:443 -verify 1 -tls1_2
Run Code Online (Sandbox Code Playgroud)
在哪里:
-tls1_2 - 仅使用 TLSv1.2
帮助(openssl s_client -h或man s_client)描述了许多其他选项 - 例如,您可以指定密码列表 - 也是限制性/现代客户端/服务器可能显式设置的内容,因此可能会产生失败的连接 - 特别是当连接到旧服务器/客户端时或从旧服务器/客户端连接时。
显示不同结果的示例:
$ echo | openssl s_client -verify 1 -connect www.cebitec.uni-bielefeld.de:443
[..]
verify return:1
[..]
SSL-Session:
Protocol : TLSv1
Cipher : AES128-SHA
Session-ID: [non-empty]
[..]
---
DONE
$ echo $?
0
Run Code Online (Sandbox Code Playgroud)
这是没有强制执行最低版本的情况,现在有 TLS 1.2 要求:
$ echo \
| openssl s_client -verify 1 -tls1_2 -connect www.cebitec.uni-bielefeld.de:443
[..]
[..]:SSL routines:SSL3_GET_RECORD:wrong version number:s3_pkt.c:347:
--
no peer certificate available
[..]
SSL-Session:
Protocol : TLSv1.2
Cipher : 0000
Session-ID:
Session-ID-ctx:
Master-Key:
[..]
---
$ echo $?
1
Run Code Online (Sandbox Code Playgroud)
意味着服务器不支持 TLS 1.2。
可能是因为它使用了相当旧版本的 openssl。
| 归档时间: |
|
| 查看次数: |
2167 次 |
| 最近记录: |