ssl网站无法在Windows XP上运行

时间:2013-05-29 09:38:10

标签: apache internet-explorer ssl windows-xp

我有一个为SSL配置的apache webserver,以及我希望在该服务器上访问的页面。我无法从Windows XP和Inernet Explorer 6-7-8访问该SSL网页。同一页面适用于其他操作系统(包括IE)中的所有浏览器以及Windows XP上的其他浏览器。 XP-IE中的其他互联网SSL网站也很好用。 我试图在服务器上运行ssldump,并在SSL握手期间关闭连接。

New TCP connection #1: XP_HOST(62044) <-> WEBSERVER(443)
1 1  0.2040 (0.2040)  C>S  Handshake
      ClientHello
        Version 3.1
        cipher suites
        TLS_RSA_WITH_RC4_128_MD5
        TLS_RSA_WITH_RC4_128_SHA
        TLS_RSA_WITH_3DES_EDE_CBC_SHA
        TLS_RSA_WITH_DES_CBC_SHA
        TLS_RSA_EXPORT1024_WITH_RC4_56_SHA
        TLS_RSA_EXPORT1024_WITH_DES_CBC_SHA
        TLS_RSA_EXPORT_WITH_RC4_40_MD5
        TLS_RSA_EXPORT_WITH_RC2_CBC_40_MD5
        TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA
        TLS_DHE_DSS_WITH_DES_CBC_SHA
        TLS_DHE_DSS_EXPORT1024_WITH_DES_CBC_SHA
        compression methods
                  NULL
ERROR: Length mismatch

我还试图强制客户端和服务器使用特定的SSL版本(2或3),但这似乎都不起作用。 我认为问题可能是apache上的一些SSL配置,但我找不到我的错误。

这是我关于密码套件的SSL配置:

SSLCipherSuite HIGH:MEDIUM:!aNULL:!MD5
SSLProtocol all -SSLv2

如果还有其他需要,请告诉我,我会在此处添加。

在apache上禁用SNI和NameServer。

有人有什么建议吗? 提前谢谢。

2 个答案:

答案 0 :(得分:4)

好的,我解决了。 我发现Windows XP存在碎片化SSL / TLS握手消息的问题。通过Microsoft知识库搜索,我发现“TLS / SSL协议的Microsoft实现无法解析碎片消息”(请参阅​​Microsoft KB Article)。

Microsoft Update KB2541763(在链接页面上提供)解决了这个问题,允许Windows XP(以及Windows Server 2008和Windows Vista)接受来自Web服务器的碎片化握手消息。

最诚挚的问候。

答案 1 :(得分:0)

该操作系统不适用于SNI,当您想在同一IP上运行多个SSL VH时,这是必需的。

将您的SSL VirtualHost从<VirtualHost *:443>编辑为<VirtualHost IP.Address:443>,并且不要在该IP上运行任何其他SSL VirtualHost。