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

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

内容简介:今天正好周末有时间,就将使用的生产环境 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 测试一下 确认无问题


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

查看所有标签

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

算法之美

算法之美

[美]布莱恩·克里斯汀、[美]汤姆·格里菲思 / 万慧、胡小锐 / 中信出版集团 / 2018-5-20 / 59.00

我们所有人的生活都受到有限空间和有限时间的限制,因此常常面临一系列难以抉择的问题。在一天或者一生的时光里,哪些事是我们应该做的,哪些是应该放弃的?我们对杂乱无序的容忍底线是什么?新的活动与熟悉并喜爱的活动之间如何平衡,才能取得令人愉快的结果?这些看似是人类特有的难题,其实不然,因为计算机也面临同样的问题,计算机科学家几十年来也一直在努力解决这些问题,而他们找到的解决方案可以给我们很多启发。 ......一起来看看 《算法之美》 这本书的介绍吧!

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

UNIX 时间戳转换

HEX HSV 转换工具
HEX HSV 转换工具

HEX HSV 互换工具