2016-12-04 183 views
0

在类似的问题当前正在运行,但没有解决方案的帮助SSL23_GET_SERVER_HELLO:使用TLSv1警告内部错误

我没有访问服务器CONFIGS,因为这是只是一个普通的Cloudfront + S3设置。

[email protected]:~# 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) 
--- 

卷曲返回类似的错误

[email protected]:~# 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) 

有趣的是,有时它适用于也许一个小时,然后失败一个小时。

+0

您应该使用TLS 1.0及更高版本的OpenSSL命令。尝试'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功能。 – jww

+0

Stack Overflow是编程和开发问题的网站。这个问题似乎与题目无关,因为它不涉及编程或开发。请参阅帮助中心的[我可以询问哪些主题](http://stackoverflow.com/help/on-topic)。也许[超级用户](http://superuser.com/)或[Unix&Linux堆栈交换](http://unix.stackexchange.com/)会是一个更好的地方。另请参阅[我在哪里发布关于Dev Ops的问题?](http://meta.stackexchange.com/q/134306) – jww

+0

这个问题的确是关于开发,或者你忘记了我们大多数人会在编写代码时进行命令行测试代码? – AlexD

回答

0

今天发现这个问题,涉及到cloudflare。

由于我禁用了该子域的cloudflare,所以它没有任何问题。

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