【问题标题】:SSL23_GET_SERVER_HELLO:sslv3 alert handshake failureSSL23_GET_SERVER_HELLO:sslv3 警报握手失败
【发布时间】:2015-06-29 10:14:06
【问题描述】:

我刚刚安装了新版本的 gitlab,新安装后 ssl 无法正常工作......它抛出 SSL23_GET_SERVER_HELLO:sslv3 警报握手错误。 ssh 工作正常。我看到的唯一区别是旧浏览器说它使用的是 TLS 1.0,而在新版本中它说的是 1.2。由于这与 gitlab 无关,我将问题发布在 stackoverflow 中......

$ git clone https://gitlabserver/group/project.git
Cloning into 'project'...
* Couldn't find host gitlabserver in the _netrc file; using defaults
* Adding handle: conn: 0x282d6f8
* Adding handle: send: 0
* Adding handle: recv: 0
* Curl_addHandleToPipeline: length: 1
* - Conn 0 (0x282d6f8) send_pipe: 1, recv_pipe: 0
* About to connect() to gitlabserver port 443 (#0)
*   Trying gitlabserver...
* Connected to gitlabserver port 443 (#0)
* successfully set certificate verify locations:
*   CAfile: c:/Users/lanid/curl-ca-bundle.crt
  CApath: none
* error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure

* Closing connection 0
fatal: unable to access 'https://gitlabserver/group/project.git/': error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure

这是使用 TLS 1.0 和 SNI 进行测试时的 OpenSSL s_client 输出:

openssl s_client -connect <hostname>:<port> -tls1 -servername <hostname>

Loading 'screen' into random state - done
CONNECTED(00000208)
8008:error:14094410:SSL routines:SSL3_READ_BYTES:sslv3 alert handshake failure:.\ssl\s3_pkt.c:1126:SSL alert number 40
8008:error:1409E0E5:SSL routines:SSL3_WRITE_BYTES:ssl handshake failure:.\ssl\s3_pkt.c:547:

另一台服务器的命令相同,但设置相同,但旧版本的工作文件...

【问题讨论】:

  • @jww,完成,谢谢...
  • Alert 40 是我一直在寻找的......最后一个测试......用-tls1_2 选项而不是-tls1 重试。
  • @jww,我从客户端机器获得了未知选项 -tls1_2.... $ openssl version OpenSSL 0.9.8zb 2014 年 8 月 6 日
  • 哦,我的...你在 OS X 上吗? (也许不是因为我使用的是 OS X 10.8 及其版本OpenSSL 0.9.8zd 8 Jan 2015)。您可以使用 Brew 或 MacPorts 安装更新版本进行这样的测试吗?或者查看OpenSSL的Compilation and Installation,然后使用/usr/local/ssl/bin中的那个。
  • 您应该提供一个答案,并接受您自己的答案。这就是 Stack Overflow 的工作原理。

标签: git ssl openssl gitlab


【解决方案1】:

如果您在 Git 客户端上遇到此问题。

然后安装最新版本的 Git bash。

我遇到了同样的问题并解决了安装新的 Git 客户端的问题。

【讨论】:

    【解决方案2】:

    升级 openssl 解决了这个问题...

    【讨论】:

    • 如何在 Windows 10 中升级?
    【解决方案3】:

    OpenSSL 的升级应该可以解决您的问题。

    OpenSSL 最近暴露了一些严重的漏洞。此外,网络上的许多网络服务器都加强了安全性,以阻止那些易受攻击的协议和密码。

    【讨论】:

      猜你喜欢
      • 2018-07-11
      • 2015-04-21
      • 2023-03-22
      • 2016-05-02
      • 2016-04-27
      • 2023-03-11
      • 2016-12-12
      • 2015-08-09
      相关资源
      最近更新 更多