【问题标题】:SSL23_GET_SERVER_HELLO:tlsv1 alert internal errorSSL23_GET_SERVER_HELLO:tlsv1 警报内部错误
【发布时间】:2016-12-04 14:31:46
【问题描述】:

目前遇到类似问题,但没有任何解决方案有帮助

我无权访问服务器配置,因为这只是简单的 Cloudfront+S3 设置。

root@xxx:~# openssl s_client -connect tracking.kairion.de:443 -servername tracking.kairion.de
CONNECTED(00000003)
140336648943272:error:14077438:SSL routines:SSL23_GET_SERVER_HELLO:tlsv1 alert internal error:s23_clnt.c:757:
---
no peer certificate available
---
No client certificate CA names sent
---
SSL handshake has read 7 bytes and written 318 bytes
---
New, (NONE), Cipher is (NONE)
Secure Renegotiation IS NOT supported
Compression: NONE
Expansion: NONE
SSL-Session:
    Protocol  : TLSv1.2
    Cipher    : 0000
    Session-ID: 
    Session-ID-ctx: 
    Master-Key: 
    Key-Arg   : None
    PSK identity: None
    PSK identity hint: None
    SRP username: None
    Start Time: 1480860654
    Timeout   : 300 (sec)
    Verify return code: 0 (ok)
---

Curl 返回类似的错误

root@xxx:~# curl 'https://tracking.kairion.de/kairion.gif' -v
* Hostname was NOT found in DNS cache
*   Trying 2400:cb00:2048:1::6818:72f8...
* Connected to tracking.kairion.de (2400:cb00:2048:1::6818:72f8) port 443 (#0)
* successfully set certificate verify locations:
*   CAfile: none
  CApath: /etc/ssl/certs
* SSLv3, TLS handshake, Client hello (1):
* SSLv3, TLS alert, Server hello (2):
* error:14077438:SSL routines:SSL23_GET_SERVER_HELLO:tlsv1 alert internal error
* Closing connection 0
curl: (35) error:14077438:SSL routines:SSL23_GET_SERVER_HELLO:tlsv1 alert internal error

至少在两台服务器上可以重现错误:

openssl 1.0.1t-1+deb8u5 (jessie)
openssl 1.0.1t-1+deb7u1 (wheezy)

但适用于

openssl 1.0.2j-1 (stretch)

有趣的部分是有时它可能工作一个小时,然后又失败了一个小时。

【问题讨论】:

  • 对于 OpenSSL 命令,您可能应该使用 TLS 1.0 及更高版本。试试openssl s_client -connect tracking.kairion.de:443 -servername tracking.kairion.de -tls1。您也可以使用-tls1_1-tls1_2。我的 OpenSSL 是 1.1.0,所以我不能复制。 OpenSSL 1.0.2 也是一个不错的选择。 OpenSSL 1.1.0 和 0.9.8 是糟糕的选择,因为它们缺少过去几年的许多 TLS 功能。
  • Stack Overflow 是一个编程和开发问题的网站。这个问题似乎离题了,因为它与编程或开发无关。请参阅帮助中心的What topics can I ask about here。也许Super UserUnix & Linux Stack Exchange 会是一个更好的提问地方。另见Where do I post questions about Dev Ops?
  • 这个问题确实是关于开发的,还是你忘了我们大多数人在写代码的时候都会做命令行测试?

标签: amazon-web-services ssl amazon-s3 openssl amazon-cloudfront


【解决方案1】:

今天发现问题,和cloudflare有关。

由于我为此子域禁用了 cloudflare,因此它可以正常工作。

似乎 cloudflare 有时会从云端返回正确的 CNAME,有时会返回一个 cloudflare IP。只要它直接返回cloudfront,SSL就可以工作,当它返回cloudflare IP时,SSL就会失败。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-12-15
    • 1970-01-01
    • 2018-02-23
    • 2022-08-02
    • 1970-01-01
    • 2017-02-28
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多