再会,
我在 Linux Redhat 中有一个 WAS 自由服务器,并且我启用了唯一的 TLSv1.2。
我输入以下命令来获取服务器信息:
openssl s_client -connect 10.7.5.65:9443 -msg
Run Code Online (Sandbox Code Playgroud)
部分结果如下:
No client certificate CA names sent
Peer signing digest: SHA512
Server Temp Key: DH, 1024 bits
---
SSL handshake has read 1710 bytes and written 479 bytes
---
New, TLSv1/SSLv3, Cipher is DHE-RSA-AES128-GCM-SHA256
Server public key is 2048 bit
Secure Renegotiation IS supported
Run Code Online (Sandbox Code Playgroud)
我看到Server Temp Key值是 DH,1024 位,但也看到服务器公钥是 2048 位,请问我的 Diffie-Hellman MODP 大小(位)实际上是 1024 还是 2048?
还有那部分 ServerKeyExchange
<<< TLS 1.2 Handshake [length …Run Code Online (Sandbox Code Playgroud) 我编写了一个使用 openssl 的程序,并对其进行了 dockerized。
但是当我用 python:3.7 基本图像尝试它时,出现了以下错误:
[SSL: DH_KEY_TOO_SMALL] dh 密钥太小 (_ssl.c:1108)
我设法通过降低/etc/ssl/openssl.cnf文件中的安全级别来解决这个问题。
echo "CipherString=DEFAULT@SECLEVEL=1" >> /etc/ssl/openssl.cnf
但是这个错误到底是什么意思?
这是一个服务器端问题,我无法在我的代码中处理吗?
我只是觉得通过降低安全级别来解决问题不太舒服。
更改该安全级别时应该考虑什么?
谢谢 :)