V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Servo
V2EX  ›  分享发现

火星救援: Nginx 开启 0-RTT 支持。

  •  1
     
  •   Servo · 2018-10-21 12:13:34 +08:00 · 7252 次点击
    这是一个创建于 2230 天前的主题,其中的信息可能已经有所发展或是发生改变。

    0-RTT 有什么用

    “简单来说就是,减少握手次数,除首次访问外,让 HTTPS 和 HTTP 几乎一样快。”

    可以到 https://ssl.hakase.io 测试自己的浏览器是否支持 0-RTT,记得多 Ctrl F5。不支持也没关系,先开启,浏览器迟早会支持的。 0-RTT

    配置

    Nginx 加入下列配置。( Openssl 1.1.1、Nginx 1.15.3+)

    ssl_early_data on

    重放攻击

    “上面说过的这种好处是以安全性为代价换来的,有遭受重放攻击的风险。” 这也是 Nginx 未默认开启 0-RTT 的原因。

    对于动态网站,“ 0-RTT 有重放攻击的风险,如果启用了 TLS 1.3 0-RTT,最好就告知后端,后端就可以采取措施避免重放攻击造成损害。( RFC-8470 “推荐”)对于使用 Nginx 反代的案例,就可以通过 Early-Data 头告知后端服务器。”

    proxy_set_header Early-Data $ssl_early_data;

    12 条回复    2019-01-20 09:10:25 +08:00
    lhx2008
        1
    lhx2008  
       2018-10-21 12:27:17 +08:00 via Android
    TLS1.3 正式版好像大部分浏览器还不支持吧
    Servo
        2
    Servo  
    OP
       2018-10-21 12:28:54 +08:00
    @lhx2008 Cr 70 (已发布) FF 63 (后天推送)
    ptsa
        3
    ptsa  
       2018-10-21 12:47:08 +08:00
    版本 70.0.3538.67 (正式版本) ( 64 位)
    不支持?
    Not used TLS 1.3 0-RTT (Experimental)
    Servo
        4
    Servo  
    OP
       2018-10-21 12:51:09 +08:00
    @ptsa https://www.chromestatus.com/feature/5866220553240576 ( Proposed )

    可以预见的是一定会支持的。
    shansing
        5
    shansing  
       2018-10-21 13:11:32 +08:00   ❤️ 1
    后端配合 425 Too Early 状态码食用,风味更佳。
    Cipool
        6
    Cipool  
       2018-10-22 01:16:48 +08:00 via Android
    有时候显示支持 有时候不支持,总觉得是网站实现有些问题。。
    Love4Taylor
        7
    Love4Taylor  
       2018-10-22 04:50:46 +08:00 via Android
    Chrome 还没支持, Firefox 看到有选项, 但是开启后依旧没显示 很迷
    Servo
        8
    Servo  
    OP
       2018-10-22 07:41:51 +08:00
    @Love4Taylor Ctrl F5
    Love4Taylor
        9
    Love4Taylor  
       2018-10-22 08:05:17 +08:00
    @Servo #8 绝了 昨天还不行的 233333
    cominghome
        10
    cominghome  
       2018-10-22 19:51:49 +08:00
    神他妈"不支持也没关系,先开启,浏览器迟早会支持的"

    老板看了想打人
    xmlf
        11
    xmlf  
       2019-01-19 23:03:58 +08:00 via Android
    @shansing 怎么配合?能具体教练吗?网上文章太少
    shansing
        12
    shansing  
       2019-01-20 09:10:25 +08:00   ❤️ 1
    @xmlf 啊,如果你能看英文的话,直接看 RFC 8470 就行。大意是如果你判断某个请求可能会受重放攻击影响,就返回 HTTP 425 状态码,告诉浏览器现在太早了,请进行完整 TLS 握手后再发送该请求。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2742 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 00:22 · PVG 08:22 · LAX 16:22 · JFK 19:22
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.