Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ssl/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google chrome ECC证书在Chrome中不起作用?_Google Chrome_Ssl_Ssl Certificate_Haproxy - Fatal编程技术网

Google chrome ECC证书在Chrome中不起作用?

Google chrome ECC证书在Chrome中不起作用?,google-chrome,ssl,ssl-certificate,haproxy,Google Chrome,Ssl,Ssl Certificate,Haproxy,我正在尝试配置HAProxy以根据客户端的浏览器提供RSA或ECC证书。我最初试图配置ECC证书,但我注意到最新版本的Chrome不支持这些证书。想知道是否还有其他人有这个问题?我将OS X 10.11.4与以下版本一起使用: [root@haproxy-server]: /etc/haproxy # haproxy -vv HA-Proxy version 1.6.4 2016/03/13 Copyright 2000-2016 Willy Tarreau <willy@haproxy.

我正在尝试配置HAProxy以根据客户端的浏览器提供RSA或ECC证书。我最初试图配置ECC证书,但我注意到最新版本的Chrome不支持这些证书。想知道是否还有其他人有这个问题?我将OS X 10.11.4与以下版本一起使用:

[root@haproxy-server]: /etc/haproxy # haproxy -vv
HA-Proxy version 1.6.4 2016/03/13
Copyright 2000-2016 Willy Tarreau <willy@haproxy.org>

Build options :
  TARGET  = linux2628
  CPU     = generic
  CC      = gcc
  CFLAGS  = -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2
  OPTIONS = USE_ZLIB=1 USE_REGPARM=1 USE_OPENSSL=1 USE_LUA=1 USE_PCRE=1

Default settings :
  maxconn = 2000, bufsize = 16384, maxrewrite = 1024, maxpollevents = 200

Encrypted password support via crypt(3): yes
Built with zlib version : 1.2.8
Compression algorithms supported : identity("identity"), deflate("deflate"), raw-deflate("deflate"), gzip("gzip")
Built with OpenSSL version : OpenSSL 1.0.2g  1 Mar 2016
Running on OpenSSL version : OpenSSL 1.0.2g-fips  1 Mar 2016
OpenSSL library supports TLS extensions : yes
OpenSSL library supports SNI : yes
OpenSSL library supports prefer-server-ciphers : yes
Built with PCRE version : 8.38 2015-11-23
PCRE library supports JIT : no (USE_PCRE_JIT not set)
Built with Lua version : Lua 5.3.1
Built with transparent proxy support using: IP_TRANSPARENT IPV6_TRANSPARENT IP_FREEBIND

Available polling systems :
      epoll : pref=300,  test result OK
       poll : pref=200,  test result OK
     select : pref=150,  test result OK
Total: 3 (3 usable), will use epoll.
  • Chrome(50.0.2661.94)(64位)[不工作]
  • Firefox(46.0)(64位)[works]
  • Safari(9.11601.5.17.1)(64位)[工作]
  • cURL(7.43.0(x86_64-apple-darwin15.0)libcurl/7.43.0 SecureTransport zlib/1.2.5)[works]
我通过
cURL--ciphers ecdhe_ecdsa_aes_128_sha--ssl--head--tlsv1.2 https://
调用cURL命令,它返回200 OK

我在服务器端使用Ubuntu Xenial 16.04 LTS,版本如下:

[root@haproxy-server]: /etc/haproxy # haproxy -vv
HA-Proxy version 1.6.4 2016/03/13
Copyright 2000-2016 Willy Tarreau <willy@haproxy.org>

Build options :
  TARGET  = linux2628
  CPU     = generic
  CC      = gcc
  CFLAGS  = -g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2
  OPTIONS = USE_ZLIB=1 USE_REGPARM=1 USE_OPENSSL=1 USE_LUA=1 USE_PCRE=1

Default settings :
  maxconn = 2000, bufsize = 16384, maxrewrite = 1024, maxpollevents = 200

Encrypted password support via crypt(3): yes
Built with zlib version : 1.2.8
Compression algorithms supported : identity("identity"), deflate("deflate"), raw-deflate("deflate"), gzip("gzip")
Built with OpenSSL version : OpenSSL 1.0.2g  1 Mar 2016
Running on OpenSSL version : OpenSSL 1.0.2g-fips  1 Mar 2016
OpenSSL library supports TLS extensions : yes
OpenSSL library supports SNI : yes
OpenSSL library supports prefer-server-ciphers : yes
Built with PCRE version : 8.38 2015-11-23
PCRE library supports JIT : no (USE_PCRE_JIT not set)
Built with Lua version : Lua 5.3.1
Built with transparent proxy support using: IP_TRANSPARENT IPV6_TRANSPARENT IP_FREEBIND

Available polling systems :
      epoll : pref=300,  test result OK
       poll : pref=200,  test result OK
     select : pref=150,  test result OK
Total: 3 (3 usable), will use epoll.

我知道这篇文章不在StackExchange的正确位置(对不起!),但我想发布一个潜在的解决方案。我认为问题在于Chrome、Firefox和Safari对椭圆曲线的支持。从SSLLabs网站:

:secp256r1、secp384r1、secp521r1

:secp256r1、secp384r1、secp521r1

:secp256r1,secp384r1

问题是我测试的ECC证书的私钥是使用
secp521r1
()生成的,而最新版本的Chrome在OS X 10.11上不支持该私钥


请参阅此问题:

您的web服务器似乎只支持以下两个密码套件:

TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA
TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA
我想您的问题是缺少一些密码套件(至少
TLS\u RSA\u和\u AES\u 128\u CBC\u SHA

TLS 1.2必须支持密码套件
TLS\u RSA\u和\u AES\u 128\u CBC\u SHA
(请参阅强制密码套件或RFC5246)。以同样的方式,我建议您向前看并包括协议

TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256
TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
那套房呢

TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384
TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256
TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256
也是严格推荐的。看见您使用Nginx web服务器,它应该支持
TLS\u ECDHE\u ECDSA\u和
TLS\u ECDHE\u RSA\u和
。我建议你把所有的密码套件都包括在内


另外,我建议您使用或至少仔细检查Mozilla SSL Configuration Generator为浏览器或web浏览器提供的Nginx设置建议。您可以阅读有关套件的更多信息。

您只配置了很少的密码,而且浏览器支持的密码不同。我建议用这个来代替。至于您当前的配置:请对照您的服务器实际显示为受支持的内容进行检查,然后对照您的Chrome浏览器进行检查。然后看看你是否发现密码重叠。如果你的服务器在线,你能将URL发布到服务器上吗?Stack Overflow是一个关于编程和开发问题的网站。这个问题似乎离题了,因为它与编程或开发无关。请参见帮助中心中的。也许或者会是一个更好的提问的地方。另请看。@jww:我相信我需要一定的声誉来解决问题?您是否有可能发起移动?私钥的算法是否也是一个因素?我知道某些Chrome不支持
secp521r1
@ScottCrooks:这是正确的,但显示当前有人使用
secp256r1
。具体的选择取决于需求。例如,如果需要,可以指定
secp521r1、secp384r1、secp256r1
。问题是
secp521r1
的速度比
secp384r1
慢得多,
secp384r1
的速度比
secp256r1
慢得多。选择
secp521r1、secp384r1、secp256r1
可能有助于测试,但我不确定它是否有助于生产。我认为您指的是CA链中的一个键。我们使用的证书实际上是
ec521位
。不管怎样,谢谢你对密码的建议:)@ScottCrooks:你是否尝试过通过添加丢失的密码站点来解决问题?EC521仅用于证书的签名。套件TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256使用另一个密码套件sec256r1当前用于TLS。可能您无法验证证书,但是可以验证证书的系统使用sec256r1进行验证TLS@ScottCrooks:顺便说一下,我建议您查看的TLS配置及其测试