【发布时间】:2016-02-20 00:45:43
【问题描述】:
失败是故意的,因为 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 文档的任何地方都找不到对它的引用。
【问题讨论】: