Telegram 从电报到我的服务器的传入流量握手失败40
我的电报机器人不再接收更新,因为上次的api更新只适用于tls 1.2 我尝试使用wireshark侦听check,发现传出的请求通过tls1.2成功发送,但传入的请求(更新、发送到我的机器人的命令)由于握手失败而失败Telegram 从电报到我的服务器的传入流量握手失败40,telegram,tls1.2,windows-server-2012,Telegram,Tls1.2,Windows Server 2012,我的电报机器人不再接收更新,因为上次的api更新只适用于tls 1.2 我尝试使用wireshark侦听check,发现传出的请求通过tls1.2成功发送,但传入的请求(更新、发送到我的机器人的命令)由于握手失败而失败 Transport Layer Security TLSv1.2 Record Layer: Alert (Level: Fatal, Description: Handshake Failure) Content Type: Alert (21)
Transport Layer Security
TLSv1.2 Record Layer: Alert (Level: Fatal, Description: Handshake Failure)
Content Type: Alert (21)
Version: TLS 1.2 (0x0303)
Length: 2
Alert Message
Level: Fatal (2)
Description: Handshake Failure (40)
知道我试过:
谢谢您的时间。注意:这是我原始答案的编辑转载,因为它因质量低而被删除 问题在于,在
TLS1.2
密码套件集中,电报API只接受有限的一组密码。Windows 2012仅支持TLS\u DHE\u RSA\u WITH_AES\u 128\u GCM\u SHA256(0x9e)
和TLS\u DHE\u RSA\u WITH_AES\u 256\u GCM\u SHA384(0x9f)
但是,作为远程代码执行修补程序的一部分,微软已经在2014年禁用了在Windows 2012上实现这些密码:
Qualys SSL实验室和NARTAC等机构认为它们是不安全的密码
请注意,电报API支持许多其他更安全的密码,甚至TLS 1.3,但这些密码都不受任何Windows 2012版本的支持。编写本文时,任何Windows版本都不支持TLS 1.3
总之,这解释了问题发生的原因。坏消息是在Windows Server 2012上没有好的解决方案。目前最早支持电报机器人程序的Windows Server版本是Windows Server 2016。我正在将我的机器人移动到Ubuntu 19.10服务器上