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

哈哈,成功开启 TLSv1.3!

  •  
  •   ddid · 2019-01-18 12:32:31 +08:00 · 9801 次点击
    这是一个创建于 2137 天前的主题,其中的信息可能已经有所发展或是发生改变。

    上网查资料的时候看到了 TLSv1.3 这个东西,简单的说,就是 HTTPS 站点用了这玩意,更安全,更快速。
    看了下我的站,是 1.2 版,新版强迫症不能忍!马上放下一切工作,准备升级到 TLSv1.3 !
    可是在实际操作中发现,这货去年的 8 分才刚刚发布正式版本,网上的关于此的教程是少之又少,跟着他们的教程走,根本行不通!,没办法,那就广撒网!加了几十个 IT 类 QQ 群,各种 IT 类网站提问,这在也问了 https://www.v2ex.com/t/527877 可是一天一夜下来,没有得到一点有帮助的信息……
    我是即绝望又无奈,但是不甘心,我想目前可以确定浏览器是绝对支持的,所以我这个问题应该是我服务器这边的问题,而我服务器这边和 TLSv1.3 有关,就 Nginx 和 OpenSSL 这俩,好,那我去看文档!
    天助我也,在查看 Nginx 文档的时候,我就一看发现奥妙所在,正如我那个提问帖子的一楼所说,问题所在就是因为:Nginx 配置文件少写了东西!
    哎,你们永远都不知道,靠着自己那股执念,独立解决问题后的那种快感!

    第 1 条附言  ·  2019-01-18 13:58:38 +08:00
    又知道了 QUIC 和 Brotli,新东西真多,哈哈已经开始折腾了!
    都是谷歌的,真牛逼,以后根本不能拿谷歌和某搜索引擎比较,一个无良广告公司,一个 IT 高科技公司,根本不是一个档次。
    第 2 条附言  ·  2019-01-18 14:19:44 +08:00
    是,谷歌也是广告公司,但是本质区别是:
    谷歌用符合法律和道德的广告去盈利,然后去推动互联网技术的发展。
    第 3 条附言  ·  2019-01-18 18:38:39 +08:00
    趁着帖子有点热度,顺便再问下:
    DDNS 站点,没有固定的公网 IP,有没有办法接入 Cloudflare 呢?
    74 条回复    2019-01-19 13:05:27 +08:00
    Vegetable
        1
    Vegetable  
       2019-01-18 12:45:57 +08:00
    我觉得很多人都知道吧..
    Archeb
        2
    Archeb  
       2019-01-18 13:28:56 +08:00
    我在某旧版本的 CentOS 下启用,也就是重新带 openssh 编译了下 nginx...

    如果是足够新的发行版 估计升级下 nginx 直接 ssl_protocols 加上 TLSv1.3 就好了吧...
    Archeb
        3
    Archeb  
       2019-01-18 13:29:16 +08:00
    *openssh -> OpenSSL
    goodryb
        4
    goodryb  
       2019-01-18 13:31:29 +08:00   ❤️ 1
    “网上的关于此的教程是少之又少” 楼主你不要骗我,两个月前我搞的时候网上就很多资料了吧
    trafficMGR
        5
    trafficMGR  
       2019-01-18 13:33:13 +08:00
    折腾完 TLSv1.3 还可以继续试试 QUIC,嘻嘻😁
    ladypxy
        6
    ladypxy  
       2019-01-18 13:38:03 +08:00 via iPhone
    这玩意一年前就大把教程好吧……
    ech0x
        7
    ech0x  
       2019-01-18 13:43:05 +08:00 via iPhone
    问 QQ 群这步根本不需要吧,直接看文档不行吗?
    hilbertz
        8
    hilbertz  
       2019-01-18 13:44:03 +08:00
    感觉挺可怜的,现在才知道
    xiaoz
        9
    xiaoz  
       2019-01-18 13:55:17 +08:00
    分享下思路和配置呗,我同样的环境同样的配置,一台开启成功,一台死活不生效。
    Windy00
        10
    Windy00  
       2019-01-18 13:58:33 +08:00
    tls1.3 测试时,博客就启用了支持,看看 ququ 的博客吧,教程很详细
    mydns
        11
    mydns  
       2019-01-18 14:06:35 +08:00
    那么奥妙是?
    julyclyde
        12
    julyclyde  
       2019-01-18 14:07:27 +08:00
    加了几十个 IT 类 QQ 群,各种 IT 类网站提问,没有得到一点有帮助的信息

    这简直就是理所当然的啊
    pathbox
        13
    pathbox  
       2019-01-18 14:09:23 +08:00 via iPhone
    谷歌应该是世界上最大的广告公司了,哈哈
    a22271001
        14
    a22271001  
       2019-01-18 14:10:20 +08:00 via Android
    caddy 秒配置完成
    maojy1989
        15
    maojy1989  
       2019-01-18 14:11:33 +08:00
    上半年看过 TLSv1.3 chrome 默认是不开启的,需要自己改 chrome 的设置来开启,还有如果服务器只设置 TLSv1.3 的话好像不支持的浏览器就不能访问了
    29EtwXn6t5wgM3fD
        16
    29EtwXn6t5wgM3fD  
       2019-01-18 14:16:35 +08:00
    @a22271001 #14 Caddy 目前支持到 TLS1.2 TLS1.3 需要等待上游 Go 1.12 release
    littlewing
        17
    littlewing  
       2019-01-18 14:20:50 +08:00
    所以说,楼主测试之后 TLSv1.3 比 1.2 安全多少,块多少?
    ddid
        18
    ddid  
    OP
       2019-01-18 14:27:08 +08:00   ❤️ 1
    @littlewing 这不是重点,我用它不是为了安全多少,快多少,因为他是最新版,我只用最新版的东西。
    yexm0
        19
    yexm0  
       2019-01-18 14:28:17 +08:00 via Android
    @littlewing 单就隐藏域名这一点就能艹翻 1.2 了
    https://blog.cloudflare.com/encrypted-sni/
    yzc27
        20
    yzc27  
       2019-01-18 14:31:01 +08:00 via iPhone
    @Archeb 現在發行版的 nginx 支持 tls1.3 了嗎?我的 nginx 是在 debian 系用 apt-get nginx 官方源安裝的。
    frylkrttj
        21
    frylkrttj  
       2019-01-18 14:33:56 +08:00
    https://www.wwc.ren
    试了下,比打开百度还快。
    jhdxr
        22
    jhdxr  
       2019-01-18 14:34:30 +08:00   ❤️ 3
    谷歌用符合法律和道德的广告去盈利???

    你怕是不知道谷歌被罚了 5 亿美金,就因为谷歌**在知情的情况下依然主动帮助出售非法药物的人打广告** ( https://www.wired.com/2013/05/google-pharma-whitaker-sting/)

    没有谁比谁高尚,只是中国罚的不够狠而已
    masker
        23
    masker  
       2019-01-18 14:34:48 +08:00 via Android
    谷歌一搜不是大把大把的资料?
    frylkrttj
        24
    frylkrttj  
       2019-01-18 14:35:05 +08:00
    www. 可以省掉了
    ddid
        25
    ddid  
    OP
       2019-01-18 14:39:06 +08:00
    @frylkrttj 我也在要不要保留 www 上纠结了好久,最终还是决定保留,一是情怀,二是去掉的话,怕以后在解析方面上有不可预知的麻烦……
    ddid
        26
    ddid  
    OP
       2019-01-18 14:40:47 +08:00
    @jhdxr 哎,不纠结这个了,总体来说,谷歌比那谁强很多,这个是无可争议的吧。
    egen
        27
    egen  
       2019-01-18 14:44:37 +08:00
    https://36kr.com/p/5151805.html
    如果按照中国标准,谷歌的医疗广告是否合规?
    xuminzhong
        28
    xuminzhong  
       2019-01-18 14:57:49 +08:00
    这有什么难的啊,不就一句的话的事吗,30 秒搞定的。
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2 TLSv1.3;
    xuminzhong
        29
    xuminzhong  
       2019-01-18 14:59:54 +08:00
    @maojy1989 现在默认是开启的。

    ![2019-01-18_145853.png]( https://pic.xumz.me/imgs/1901/Other/2344974660953.png "2019-01-18_145853.png")
    Librazy
        30
    Librazy  
       2019-01-18 15:17:12 +08:00
    @yexm0 #20 esni 现在只有 Chrome 和 Firefox 浏览器最新版支持和 Cloudflare 支持,nginx 现在在等 openssl,所以真正服务器用上估计还要等几个月。
    wszgrcy
        31
    wszgrcy  
       2019-01-18 15:27:43 +08:00 via Android
    。。。。我记得去年年初刚接触后端,nginx+caddy+免费证书搞的很有成就感,后来发现没人关心这个。。。
    gaby2018
        32
    gaby2018  
       2019-01-18 15:33:56 +08:00
    @ddid 楼主这追新的习惯怕是要吃亏。
    RqPS6rhmP3Nyn3Tm
        33
    RqPS6rhmP3Nyn3Tm  
       2019-01-18 15:43:23 +08:00 via iPhone
    这是常识吧
    bumz
        34
    bumz  
       2019-01-18 15:43:24 +08:00
    https://www.linuxbabe.com/ubuntu/enable-tls1-3-nginx-ubuntu-18-04-16-04

    Google 英文搜索随便一搜就搜到了

    觉得网上资料少可能因为你不会搜索吧……
    bumz
        35
    bumz  
       2019-01-18 15:44:00 +08:00
    @xuminzhong #29 得用 openssl 1.1 编译且 nginx >= 1.13
    Archeb
        36
    Archeb  
       2019-01-18 16:17:51 +08:00
    @yzc27 没用过 debian,不过 archlinux 的肯定支持了(逃
    xuminzhong
        37
    xuminzhong  
       2019-01-18 16:19:09 +08:00
    @bumz Debian 8 和 9 自带的 openssl 和 nginx 都满足,所以添加一句配置就搞定。
    aloyuu
        38
    aloyuu  
       2019-01-18 16:21:59 +08:00
    这个比较好开启.教程较多
    luminous
        39
    luminous  
       2019-01-18 16:21:59 +08:00 via Android
    去年网上的中英文资料都不少了 而且那时候 final 还没出 final 出了资料更多了 也不难搜到
    anguiao
        40
    anguiao  
       2019-01-18 16:34:13 +08:00
    ququ 的博客写得很清楚,照做就 OK 了
    youthfire
        41
    youthfire  
       2019-01-18 16:34:30 +08:00
    想到了我去支持 WebP 图像格式,最后发现虽然载入速度快了,但损失了 Safari 和其他老浏览器的访问量,然而速度又不是质的提高,又折腾回 jpeg/png。就当学习过程了。
    Love4Taylor
        42
    Love4Taylor  
       2019-01-18 16:37:30 +08:00
    @Librazy #31 啊? Chrome 支持 ESNI 了?

    哦对了 楼主啊 记得开 0-rtt 也就是 ssl_early_data on;
    anguiao
        43
    anguiao  
       2019-01-18 16:37:30 +08:00
    QUIC 现在比较流行的 web server 里面只有 caddy 是支持的,但是 caddy 又没什么好办法开启 brotli。
    其实折腾这些都没啥大意义,弄了一大堆配置,结果博客写不了几篇。
    liuwei666666
        44
    liuwei666666  
       2019-01-18 16:37:36 +08:00
    我也开启了 HTTPS
    www.sphard.com
    Love4Taylor
        45
    Love4Taylor  
       2019-01-18 16:38:34 +08:00
    @youthfire #42 根据 Accept 来判断浏览器是否支持不就行了
    wysnylc
        46
    wysnylc  
       2019-01-18 17:09:58 +08:00
    HTTP3 使用 QUIC 协议,研究 HTTPS 还不如研究 HTTP2
    Librazy
        47
    Librazy  
       2019-01-18 17:25:13 +08:00
    @Love4Taylor #43 抱歉搞错了,似乎只有 Firefox
    RobertYang
        48
    RobertYang  
       2019-01-18 17:41:58 +08:00 via Android
    “少之又少” 你可把大家伙儿逗乐了
    markgor
        49
    markgor  
       2019-01-18 17:42:18 +08:00
    那个...
    其实我觉得二楼总结的很对...

    只要 openssl 更新后,重新 make 下 Nginx,protocol 加上 TLSv1.3 就可以了...不会很难找资料吧.....
    不过 QQ 群肯定问不到人的。


    还有,想问问有多少浏览器支持?
    我觉得有个很尬的地方就是浏览器的支持,
    之前有个合作单位的技术科找我们,非要我们把他们的系统改为 http2,
    然后我们帮忙弄证书,改配置,终于弄好了,一周后他们说更换了 http2 加载快了很多。
    两周后我们到他们现场开会,发现他们用的都是 IE8.0............
    laucenmi
        50
    laucenmi  
       2019-01-18 17:43:27 +08:00
    @xuminzhong 准确的说是 openssl 1.1.1, 目前 debian 9 源里面是 1.1.0j ,不能直接支持的。
    WhoMercy
        51
    WhoMercy  
       2019-01-18 18:12:50 +08:00 via Android
    @egen 按照中国的法规,就不应该看到谷歌
    A3
        52
    A3  
       2019-01-18 18:46:19 +08:00 via Android
    ddns
    cf 有 API 可以修改,后端拿到新的 IP 就可以修改
    ddid
        53
    ddid  
    OP
       2019-01-18 19:15:31 +08:00
    @Archeb 突然想起有一次升级 SSH 后,死活启动不成功,最后检查配置文件才发现启动路径写成了 openssl ……
    shiny
        54
    shiny  
       2019-01-18 19:21:39 +08:00
    还有 tcp fastopen 和 tcp bbr, OCSP Stapling,ecc 和 rsa 双证书。折腾永无止境。
    ddid
        55
    ddid  
    OP
       2019-01-18 19:27:22 +08:00
    @shiny tcp fastopen 和 tcp bbr 之前已经折腾完毕,我再研究研究后面的
    29EtwXn6t5wgM3fD
        56
    29EtwXn6t5wgM3fD  
       2019-01-18 19:38:40 +08:00
    既然国内了为啥要上 cloudflare 呢 比如腾讯云 cdn 可以指定回源域名和端口
    oyosc
        57
    oyosc  
       2019-01-18 19:45:05 +08:00
    资料记得一大把吧,楼主莫非你是用的某搜索引擎?
    ddid
        58
    ddid  
    OP
       2019-01-18 19:49:32 +08:00
    @shengyu 未来会有这个需求,知识储备
    iwtbauh
        59
    iwtbauh  
       2019-01-18 21:05:22 +08:00 via Android
    @littlewing

    别的不说,1.3 强制支持前向保密,服务器私钥泄漏都不会影响历史数据的。
    1.2 仍支持不支持前向保密的密码套件
    dalieba
        60
    dalieba  
       2019-01-18 21:15:59 +08:00 via Android
    @youthfire 过几天 Firefox 65 来了你就可以放心大胆的用 WebP 了,另外推荐一个库: /t/453052
    zi
        61
    zi  
       2019-01-18 22:19:55 +08:00
    Cloudflare 支持 cname 记录加速
    S9Yh4wIFsBG7jnE4
        62
    S9Yh4wIFsBG7jnE4  
       2019-01-18 22:36:54 +08:00
    google.com 都是 TLS1.2
    msg7086
        63
    msg7086  
       2019-01-19 00:31:13 +08:00
    SB 维护的 Nginx Debian 9 Repo 就支持 TLSv1.3 和 Brotli。安装以后,开启功能都只要改 Nginx 配置文件就行。

    https://mirror.xtom.com/sb/nginx/
    yexm0
        64
    yexm0  
       2019-01-19 01:16:19 +08:00
    @shayang888 总得有个过程吧...
    nlzy
        65
    nlzy  
       2019-01-19 01:52:09 +08:00 via Android
    刚刚在 Debian Testing 试了下,改一下配置文件就能开 TLSv1.3

    话说自己编译新版 OpenSSL 安装到系统上,真的不怕把依赖关系弄炸么?
    nlzy
        66
    nlzy  
       2019-01-19 01:53:19 +08:00 via Android
    @iwtbauh 连 TLSv1.0 都支持前向保密...
    janxin
        67
    janxin  
       2019-01-19 07:39:22 +08:00 via iPad
    @yexm0 1.3 不支持域名加密的,而且只有 Firefox 支持这功能…
    janxin
        68
    janxin  
       2019-01-19 07:42:22 +08:00 via iPad
    @nlzy 不替换默认没问题的呀
    Yuicon
        69
    Yuicon  
       2019-01-19 08:51:44 +08:00
    我只是看了个帖子 就永远都不知道,靠着自己那股执念,独立解决问题后的那种快感了! 楼主优越感有点强
    Servo
        70
    Servo  
       2019-01-19 09:53:28 +08:00
    我如果说 Chrome 还未支持 0-RTT HTTP Too Early,你会不会觉得难过?
    iwtbauh
        71
    iwtbauh  
       2019-01-19 10:16:09 +08:00 via Android
    @nlzy

    可能我说的有歧义,我说的是“强制支持”。我没说旧版本没有支持前向保密的密码套件啊。意思是 1。3 没有不支持前向保密的套件了。
    luvmhx
        72
    luvmhx  
       2019-01-19 11:42:44 +08:00 via iPhone
    @jhdxr 至少谷歌是有人能罚的 你看看百度的嚣张程度谷歌能比吗
    BOYPT
        73
    BOYPT  
       2019-01-19 12:24:12 +08:00
    “教程是少之又少” 大概是因为英文不好。
    picone
        74
    picone  
       2019-01-19 13:05:27 +08:00
    真厉害,讨论个 TLS 竟然还能上升到谷歌和某搜索引擎的对比,反正外国的空气特别香。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   935 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 29ms · UTC 22:20 · PVG 06:20 · LAX 14:20 · JFK 17:20
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.