我们正在运行一个节俭服务器 TThreadPoolServer,当我们将强密码设置为 TSSLSocketFactory 时出现问题。
当我们将以下内容设置为 TSSLSocketFactory::ciphers(string ciphers) 密码 = kEECDH:kEDH:kRSA:!kPSK:!aPSK:!aDSS:!aNULL:!NULL:!SEED:!3DES:!MD5:!RC4:!CAMELLIA:!SSLv3
我们可以看到 openssl 客户端总是使用以下密码与服务器协商:
AES128-SHA256 AES128-GCM-SHA256 AES256-SHA256
当我们设置如下: 密码 = ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384
并使用 openssl 客户端,握手失败并显示警报和原因 40
我们知道服务器选择密码取决于服务器上安装的 SSL 证书中定义的密钥交换算法。我们的服务器有使用 RSA 的证书,所以我们希望在上面的第二种情况下,服务器应该使用密码 ECDHE-RSA-AES256-SHA384 完成握手。但是我们没有看到这种情况正在发生。
问题:
这里的任何指示都会有所帮助。
注意:这可能不一样,但似乎与Thrift 是否支持 TLS 的 Diffie Hellman 密码有关?
我们想在 SSL 接口中设置强密码,并让 openssl 客户端连接到该密码,并与我们的服务器成功握手。