Amazon Linux 2 OpenSSL 错误签名类型

Amazon Linux 2 OpenSSL 错误签名类型

我正在用 Python 编写一个 discord 机器人。每当我尝试连接到特定站点时,在运行 Amazon Linux 2 的 EC2 实例上,脚本都会返回以下错误:

discord.ext.commands.errors.CommandInvokeError: Command raised an exception: ClientConnectorSSLError: Cannot connect to host secure.site.here:443 ssl:None [[SSL: WRONG_SIGNATURE_TYPE] wrong signature type (_ssl.c:1076)]

(实际网址已被截取。)

机器人本身已 dockerized,正在运行python:3.7.4-slim-buster。使用镜像构建时不存在该错误python:3.7.4-slim-stretch

我还测试了在 MacOS 上使用基本映像构建的相同脚本-buster以及 GCP Compute Engine 实例,两者都没有错误。

我遗漏了什么?欢迎提供任何建议。

答案1

如果您不提供出现错误的网站名称,我最好的猜测是该网站不支持 TLSv1.2,因此 OpenSSL 无法协商连接。Debian从 Buster 版本开始,OpenSSL 已禁用对 TLSv1.1 及更早版本的支持,尽管有建议称可以根据每个应用程序重新启用它如果你愿意的话。

相关内容