gpt4 book ai didi

apache - mod_ssl 警报握手失败

转载 作者:太空宇宙 更新时间:2023-11-03 14:51:43 25 4
gpt4 key购买 nike

失败是有意的,因为 SSLv3 被禁用。 .NET 客户端默认使用 SSLv3,它不会在失败前收到警报的情况下使用受支持的 SSL 版本重试。

我已经根据 http://httpd.apache.org/docs/2.2/mod/mod_ssl.html#ssloptions 设置了 OptRenegotiate ,但我的服务器仍在返回 SSL 握手失败,而不是警告握手失败(然后发送握手失败)。

作品:

$ openssl s_client -connect my.working.server:443 -ssl3
CONNECTED(00000003)
2414208:error:14094410:SSL routines:ssl3_read_bytes:sslv3 alert handshake failure:s3_pkt.c:1472:SSL alert number 40
2414208:error:1409E0E5:SSL routines:ssl3_write_bytes:ssl handshake failure:s3_pkt.c:656:

失败:

$ openssl s_client -connect my.failing.server:443 -ssl3
CONNECTED(00000003)
2414208:error:1409E0E5:SSL routines:ssl3_write_bytes:ssl handshake failure:s3_pkt.c:656:

唯一的区别:

2414208:error:14094410:SSL routines:ssl3_read_bytes:sslv3 alert handshake failure:s3_pkt.c:1472:SSL alert number 40

问题是要发送此警报:我似乎无法在 Apache 文档中的任何地方找到对它的引用。

最佳答案

A .NET client is defaulting to using SSLv3 and it won't retry with a supported SSL version without receiving an alert before a failure.

这不是 SSL 协议(protocol)协商的工作方式。客户端宣布它愿意支持的最佳版本,然后服务器以它可以等于或低于客户端版本的最佳版本进行响应。如果此操作失败,某些客户端(主要是浏览器)会使用较低的 SSL 版本重试,因为它们假定服务器已损坏。但是他们为此使用了一个新的 TCP 连接,即在现有连接内没有任何重新协商。

没有所谓的协议(protocol)升级,这就是你在这里描述的。

关于apache - mod_ssl 警报握手失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33777399/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com