相关疑难解决方法(0)

SSL 例程:SSL23_WRITE:ssl 握手失败

我正在尝试使用 OpenSSL 连接到 SSL 服务器。

当我运行时:

openssl s_client -connect myhost.com:443
Run Code Online (Sandbox Code Playgroud)

以下 SSL 客户端配置工作正常:

  • 窗户 ( OpenSSL 0.9.83e 23 Feb 2007)
  • Linux ( OpenSSL 0.9.8o 01 Jun 2010)
  • Linux ( OpenSSL 1.0.0-fips 29 Mar 2010)

任何成功连接的输出如下所示:

New, TLSv1/SSLv3, Cipher is DES-CBC3-SHA
Server public key is 2048 bit
Secure Renegotiation IS NOT supported
Compression: NONE
Expansion: NONE
SSL-Session:
    Protocol  : TLSv1
    Cipher    : DES-CBC3-SHA
    Session-ID: (hidden)
    Session-ID-ctx:
    Master-Key: (hidden)
    Key-Arg   : None
    Krb5 Principal: None
    PSK identity: None
    PSK …
Run Code Online (Sandbox Code Playgroud)

ssl openssl

34
推荐指数
1
解决办法
9万
查看次数

OpenSSL 握手失败

我们最近被迫将我们的生产云服务器从 GoDaddy 迁移到 Azure,因为 GoDaddy 正在终止他们的云服务器服务。

我们的一台服务器是运行 JasperReports Bitnami 堆栈的 CentOS 5.7。在迁移过程中,我将所有服务器升级到最新的发行版,并从 Ubuntu 12.04LTS 上的 Azure Bitnami Jasper 映像重建 Jasper

A 在 JasperServer 上安装了 SSL 证书并正常工作

所有新服务器都运行良好,现在问题出在哪里。

我们还在 GoDaddy 上有一个专用的 CentOS 5.8 虚拟服务器(目前),该服务器上有一系列站点,它们通过 Soap 提供来自 Jasper 的报告。

但是,尝试连接时出现握手失败

#openssl s_client -connect newjasperserver.com:443
CONNECTED(00000003)
9092:error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure:s23_clnt.c:583:
Run Code Online (Sandbox Code Playgroud)

和:

#openssl version
OpenSSL 0.9.8e-fips-rhel5 01 Jul 2008
Run Code Online (Sandbox Code Playgroud)

新服务器正在运行:

#openssl version
OpenSSL 1.0.1c 10 May 2012
Run Code Online (Sandbox Code Playgroud)

现在经过大量研究,似乎 OpenSSL < 0.9.8k 和 OpenSSL 1.0.1 之间存在不兼容。

我确定的选项是:

  1. 将服务器迁移到Azure上的CentOS 6.4服务器(理想,但政治上困难,不要问为什么)

  2. 就地升级服务器(不支持,我不想在生产服务器上尝试)

  3. 擦除服务器并使用 6.4 重建它(可能性,但如果我这样做,我将强制选项 1) …

linux openssl centos5

3
推荐指数
1
解决办法
1万
查看次数

标签 统计

openssl ×2

centos5 ×1

linux ×1

ssl ×1