3.3. 识别环境中的 TLS 版本
Red Hat OpenStack 平台已弃用 TLS 版本 1.0。另外,对于 NIST 批准,必须至少使用 TLS 1.2。如需更多信息,请参阅 选择、配置和使用传输层安全(TLS)实施的指南。
您可以使用 cipherscan 来决定部署提供的 TLS 版本。Cipherscan 可以从 https://github.com/mozilla/cipherscan 克隆。这个示例输出显示从 horizon 接收的结果:
从非生产环境系统运行 cipherscan,因为它可能会在第一次运行时安装其他依赖项。
$ ./cipherscan https://openstack.lab.local
..............................
Target: openstack.lab.local:443
prio ciphersuite protocols pfs curves
1 ECDHE-RSA-AES128-GCM-SHA256 TLSv1.2 ECDH,P-256,256bits prime256v1
2 ECDHE-RSA-AES256-GCM-SHA384 TLSv1.2 ECDH,P-256,256bits prime256v1
3 DHE-RSA-AES128-GCM-SHA256 TLSv1.2 DH,1024bits None
4 DHE-RSA-AES256-GCM-SHA384 TLSv1.2 DH,1024bits None
5 ECDHE-RSA-AES128-SHA256 TLSv1.2 ECDH,P-256,256bits prime256v1
6 ECDHE-RSA-AES256-SHA384 TLSv1.2 ECDH,P-256,256bits prime256v1
7 ECDHE-RSA-AES128-SHA TLSv1.2 ECDH,P-256,256bits prime256v1
8 ECDHE-RSA-AES256-SHA TLSv1.2 ECDH,P-256,256bits prime256v1
9 DHE-RSA-AES128-SHA256 TLSv1.2 DH,1024bits None
10 DHE-RSA-AES128-SHA TLSv1.2 DH,1024bits None
11 DHE-RSA-AES256-SHA256 TLSv1.2 DH,1024bits None
12 DHE-RSA-AES256-SHA TLSv1.2 DH,1024bits None
13 ECDHE-RSA-DES-CBC3-SHA TLSv1.2 ECDH,P-256,256bits prime256v1
14 EDH-RSA-DES-CBC3-SHA TLSv1.2 DH,1024bits None
15 AES128-GCM-SHA256 TLSv1.2 None None
16 AES256-GCM-SHA384 TLSv1.2 None None
17 AES128-SHA256 TLSv1.2 None None
18 AES256-SHA256 TLSv1.2 None None
19 AES128-SHA TLSv1.2 None None
20 AES256-SHA TLSv1.2 None None
21 DES-CBC3-SHA TLSv1.2 None None
Certificate: trusted, 2048 bits, sha256WithRSAEncryption signature
TLS ticket lifetime hint: None
NPN protocols: None
OCSP stapling: not supported
Cipher ordering: server
Curves ordering: server - fallback: no
Server supports secure renegotiation
Server supported compression methods: NONE
TLS Tolerance: yes
Intolerance to:
SSL 3.254 : absent
TLS 1.0 : PRESENT
TLS 1.1 : PRESENT
TLS 1.2 : absent
TLS 1.3 : absent
TLS 1.4 : absent
扫描服务器时,Cipherscan 公告对特定 TLS 版本的支持,这是将要协商的最高 TLS 版本。如果目标服务器正确遵循 TLS 协议,它将响应相互支持的最高版本,这可能低于 Cipherscan 最初发布的版本。如果服务器正在进行使用该特定版本与客户端建立连接,则它不被视为对那个协议版本的容错。如果没有建立连接(使用指定的版本或任何较低版本),则不支持该协议版本存在。例如:
Intolerance to:
SSL 3.254 : absent
TLS 1.0 : PRESENT
TLS 1.1 : PRESENT
TLS 1.2 : absent
TLS 1.3 : absent
TLS 1.4 : absent
在这个输出中,TLS 1.0 和 TLS 1.1 的容限报告为 PRESENT,这意味着无法建立连接,并且 Cipherscan 在广告对这些 TLS 版本的支持时无法连接。因此,最好认为那些在扫描的服务器上没有启用协议的版本(和任何较低)。