无聊更新着玩,OpenSSL 1.1.1-pre5-dev (即 Draft 26 ),密码套件把 ChaCha20 放最前面,但不管是浏览器(每夜版)还是 testssl 测试 TLS1.3 时都是 TLS_AES_256_GCM_SHA384
。印象中在 Draft 23 的时候貌似还是 CHACHA20 的 emmm
ssl_ciphers TLS13-CHACHA20-POLY1305-SHA256:TLS13-AES-256-GCM-SHA384:TLS13-AES-128-GCM-SHA256:TLS13-AES-128-CCM-8-SHA256:TLS13-AES-128-CCM-SHA256 ……
个人初步判定,应该是 OpenSSL 改变了相关 API ,Nginx 还没跟进的样子。 emmm 不折腾了 …
感谢大家回复。
补充:受制于 Nginx 的 Bug /feature ?暂不支持新的 TLS1.3 密码套件指定选项,TLSv1.3 ciphersuite 将会与 1.1/1.2 分开配置,所以暂不支持 CHACHA20-POLY1305-SHA256
密码套件。
1
msg7086 2018-04-09 01:07:56 +08:00
哦?有夜夜版浏览器支持 26 了么?搭了个服务器正愁没浏览器用……
|
2
Love4Taylor 2018-04-09 02:55:02 +08:00 via Android
FF ?目前 Chrome 全线都是 23, 我还是依旧 pre2 得了 23333
|
3
kn007 2018-04-09 07:40:01 +08:00
|
4
winterbells 2018-04-09 08:10:04 +08:00 via Android
beta2 是可以的
|
5
Servo OP @msg7086 FF Nightly 上个月就更新 26 了。
@Love4Taylor 嗯,顺带一提,Nginx 把那个编译错误修复了。 @kn007 多谢,不知大佬能否测试下 Openssl 主分支默认情况下是否真的暂不支持 CHACHA,说不定是我自己的问题,下午我会试试这个补丁的,多谢。 |
7
kn007 2018-04-09 08:14:20 +08:00 via Android
FF 动作真快,优化得还好,chrome 真该学习一下。
|
8
Servo OP @winterbells beta2 应该就是 pre-4,我之前测试貌似也不行,尴尬了。
|
10
msg7086 2018-04-09 09:22:22 +08:00
我来回测试了一下,感觉是 nginx 的锅,因为我用 openssl s_client 连上去也有 cipher 问题。
ssl_protocols TLSv1.3; ssl_ciphers TLS13-AES-128-GCM-SHA256; New, TLSv1.3, Cipher is TLS_AES_256_GCM_SHA384 Server public key is 256 bit Secure Renegotiation IS NOT supported Compression: NONE Expansion: NONE No ALPN negotiated Early data was not sent SSL-Session: Protocol : TLSv1.3 Cipher : TLS_AES_256_GCM_SHA384 Session-ID: Session-ID-ctx: Master-Key: PSK identity: None PSK identity hint: None SRP username: None Start Time: 1523236776 Timeout : 7200 (sec) Verify return code: 20 (unable to get local issuer certificate) Extended master secret: no |
11
msg7086 2018-04-09 09:23:18 +08:00
目测是 nginx 调用 openssl 设置 ciphers 时候出了问题,没设对。
|
13
winterbells 2018-04-09 09:48:03 +08:00 via Android
@Servo 编译 nginx 的时候是用 openssl 1.1.1 吗🤔
|
15
Servo OP |
16
winterbells 2018-04-09 10:54:13 +08:00 via Android
那这个呢🤐
ssl_ciphers TLS13-AES-256-GCM-SHA384:TLS13-CHACHA20-POLY1305-SHA256:TLS13-AES-128-GCM-SHA256:TLS13-AES-128-CCM-8-SHA256:TLS13-AES-128-CCM-SHA256:EECDH+CHACHA20:EECDH+CHACHA20-draft:EECDH+ECDSA+AES128:EECDH+aRSA+AES128:RSA+AES128:EECDH+ECDSA+AES256:EECDH+aRSA+AES256:RSA+AES256:!MD5; ssl_prefer_server_ciphers on; |
17
Servo OP @winterbells 问题主要是无视 prefer,无论如何设置首选套件都是 TLS_AES_256_GCM_SHA384。
|
18
winterbells 2018-04-09 11:06:26 +08:00 via Android
@Servo 额。不清楚了
|
19
msg7086 2018-04-09 11:22:22 +08:00
|
20
msg7086 2018-04-09 11:23:35 +08:00
# nginx -V
nginx version: nginx/1.13.12 built with OpenSSL 1.1.1-pre4-dev 28 Mar 2018 ssl_protocols TLSv1.3; ssl_ciphers TLS_CHACHA20_POLY1305_SHA256; New, TLSv1.3, Cipher is TLS_CHACHA20_POLY1305_SHA256 Server public key is 256 bit Secure Renegotiation IS NOT supported Compression: NONE Expansion: NONE No ALPN negotiated Early data was not sent SSL-Session: Protocol : TLSv1.3 Cipher : TLS_CHACHA20_POLY1305_SHA256 |
21
winterbells 2018-04-09 11:58:15 +08:00
Σ(っ °Д °;)っ
原来你说的是 tls1.3 下不能用 chacha 眼瞎了(°ー°〃) |
23
Servo OP |
26
msg7086 2018-04-09 15:16:20 +08:00
Debian Stretch Docker 编译脚本,给想要测试的朋友:
https://g.x86.men/root/nginx-compiler ./build.sh stretch-tls13 # nginx -V nginx version: nginx/1.13.12 built with OpenSSL 1.1.1-pre5-dev 8 Apr 2018 |
27
kn007 2018-04-09 21:43:58 +08:00
|
28
msg7086 2018-04-09 23:10:43 +08:00
@kn007
ssl_protocols TLSv1.3; ssl_ciphers TLS_CHACHA20_POLY1305_SHA256:TLS_AES_256_GCM_SHA384; #apps/openssl s_client -connect x:443 SSL-Session: Protocol : TLSv1.3 Cipher : TLS_CHACHA20_POLY1305_SHA256 ===== ssl_protocols TLSv1.3; ssl_ciphers TLS_AES_128_GCM_SHA256:TLS_CHACHA20_POLY1305_SHA256:TLS_AES_256_GCM_SHA384; #apps/openssl s_client -connect x:443 SSL-Session: Protocol : TLSv1.3 Cipher : TLS_AES_128_GCM_SHA256 无法复现你的结果。 |