首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何跟踪“SSL握手过程中连接超时”和“ssl握手过程中连接关闭”错误

如何跟踪“SSL握手过程中连接超时”和“ssl握手过程中连接关闭”错误
EN

Stack Overflow用户
提问于 2013-07-07 20:43:08
回答 3查看 27.3K关注 0票数 8

我最近从AWS ELB切换到了HAProxy。我在负载均衡器(HAProxy 1.5dev19)上终止SSL。

自切换以来,我不断在HAProxy日志中收到一些SSL连接错误(占总请求数的5-10%)。有三种类型的错误重复出现:连接在SSL握手期间关闭,SSL握手期间超时SSL握手失败(这种情况很少发生)

我使用的是一个免费的StartSSL证书,所以我的第一个想法是一些主机在接受这个证书时遇到了问题,我在过去没有看到这些错误,因为ELB不提供日志记录。唯一的问题是有些主机最终确实有成功的连接。

我可以连接到服务器而不会出现任何错误,所以我不确定如何在我这一端复制这些错误。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2013-07-11 23:41:52

这听起来像是客户端在握手过程中离开(TCP RST或超时)。这在某种程度上是正常的,但5-10%听起来太高了。这可能是一个证书问题;我不确定这是如何表现出来的

发生在我身上的事情:

  • 如果协商非常慢,则会有更多的客户端丢弃。
  • 您可能会遇到潜在的TCP问题,直到新的SSL端点代理开始报告这些问题时,您才意识到这些问题。

您是否看到个别主机时而成功,时而失败?如果是这样,这不太可能是证书问题。当用户拒绝不受信任的证书时,我不确定连接是如何断开的。

您可以在HAProxy机器上使用Wireshark来捕获SSL握手并解析它们(您不需要解密会话以进行握手分析,尽管您可以,因为您有服务器私钥)。

票数 8
EN

Stack Overflow用户

发布于 2016-09-23 02:15:23

我也有过这样的经历。下面这段代码首先出现在SSL handshake failure上,然后在关闭option dontlognull之后,我们在haproxy日志中也看到了Timeout during SSL handshake

首先,我确保所有的defaults超时都是正确的。

代码语言:javascript
运行
复制
timeout connect 30s
timeout client  30s
timeout server  60s

不幸的是,这个问题出现在frontend部分

有一行是timeout client 60,我只是假设它的意思是60ms而不是60s

似乎某些客户端连接速度很慢,并且在SSL握手期间被踢出。检查您的前端客户端是否超时。

票数 1
EN

Stack Overflow用户

发布于 2014-03-04 21:05:14

您的haproxy ssl前端是如何配置的?

例如,我使用以下内容来减轻BEAST攻击:绑定SSLv3crt /etc/haproxy/ ssl /XXXX.pem no-sslv3 ciphers RC4-SHA:AES128-SHA:AES256-SHA

但一些客户端似乎会生成相同的"SSL握手失败“错误。我认为这是因为配置太严格了。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17512247

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档