开始使用 lnmp 1.6 测试版 支持TLSv1.3 的 Early data

栏目: 后端 · 发布时间: 6年前

内容简介:今天正好周末有时间,就将使用的生产环境 lnmp1.5 给升级到了 lnmp1.6 测试版,对于 TLSv1.3 明月其实没有刚需的,以前就玩儿过(可参考「TLS 1.3 改进增加了“不额外增加网络延时”模式(0-RTT)。对于近期访问过的站点,可以直接发送有用的数据,而不需要经过握手。

今天正好周末有时间,就将使用的生产环境 lnmp1.5 给升级到了 lnmp1.6 测试版,对于 TLSv1.3 明月其实没有刚需的,以前就玩儿过(可参考「 纯自嗨,LNMP下启用TLSv1.3支持过程全记录 」一文),但是当时有个问题就是编译 Nginx 的 Lua 模块的时候就会出错,应该是跟 openssl 有冲突造成的,所以当时就必须做出取舍了,这次 lnmp 1.6 测试版里军哥已经修复了这个问题了,并且 OpenSSL 1.1.1a 对 TLSv1.3 的支持好像在Chrome浏览器里更完美了,所以就有了今天折腾的这个打算了。

开始使用 lnmp 1.6 测试版 支持TLSv1.3 的 Early data

TLS 1.3 改进增加了“不额外增加网络延时”模式(0-RTT)。对于近期访问过的站点,可以直接发送有用的数据,而不需要经过握手。

针对0-RTT及其他相关的扩展性,早在2016年5月之前,微信就基于TLS1.3草案标准,设计实现了一套安全通信协议mmtls。基于TLS1.3的微信安全通信协议mmtls介绍。

开始使用 lnmp 1.6 测试版 支持TLSv1.3 的 Early data

因此,加上 HTTP/2 对多资源加载的优化,通过 HTTPS + HTTP/2 完全有希望使得速度比传统 HTTP 协议更快更安全。

  • 对于 TLS 1.2,每次请求需要2次消息往来,才能完成握手。
  • 对于 TLS 1.3,首次握手只需要1次消息往来,可以节约几十到上百ms不等。

开始使用 lnmp 1.6 测试版 支持TLSv1.3 的 Early data

所以配置 Nginx 支持 TLS 1.3 需要注意一点:默认情况下 Nginx 因为安全原因,没有开启 TLS 1.3 0-RTT,可以通过添加 ssl_early_data on; 指令开启 0-RTT。

ssl_early_data on; #Early data (0-RTT) (推荐开启)

另外请添加 Early-Data 头告知后端, 防止重放攻击

proxy_set_header Early-Data $ssl_early_data;

其他的基本就是参考「 纯自嗨,LNMP下启用TLSv1.3支持过程全记录 」一文的就可以了。

最后 使用 nginx -t 测试一下 确认无问题


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

JavaScript王者归来

JavaScript王者归来

月影 / 清华大学出版社 / 2008-7 / 86.00元

你手中的这本《JavaScript王者归来》不仅是一本传播知识的书,更是一本求道的书。 本书分为五个部分循序渐进地与读者讨论了JavaScript的方方面面,从简单的语言基础到丰富的实际应用再到深入剖析语言本质的高级话题,字里行间包含着作者多年工作中对JavaScript实践乃至程序设计思想的深入思考和总结。 本书揭开了JavaScript的面纱,绕过误解和虚幻的表象,引领你探索程序王......一起来看看 《JavaScript王者归来》 这本书的介绍吧!

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试