• 本站招聘各个版块版主共同发展,有意可私聊站长

关于nginx1.28和1.29我需要解释一下

Telegram账号购买找【ITCRY】-顶级号商 https://itcry.com/

bobobo

Member
Lv0
Lv1
Lv2
9
消息得分
注册
2025-07-19
消息
998
反馈评分
1
1.28是稳定版本,一开始我wnmp.org也只集成1.28。但稳定版本不是主线版本,1.29才是主线版本。意思是官方主要在继续更新的版本就是1.29版本。而稳定版本只会修复BUG。

SL upstream injection

Severity: medium

Advisory

CVE-2026-1642

Not vulnerable: 1.29.5+, 1.28.2+

Vulnerable: 1.3.0-1.29.4

这是最新官方的通告,SSL出现一个中等级别的漏洞。只有1.29.5和1.28.2不受影响,而之前脚本集成的是1.28.1所以必须更新。。。需要注意的是,高危漏洞是需要立即更新。而中等级别的漏洞,原则上应该更新,低等级别的,才是可选更新,所以为了保证我们的服务器安全,请尽快更新。



而1.29支持http3协议,这是主线版本特有的,http3协议是走的udp,而不是tcp,算是客户端与服务端第一次链接的优化。当然,1.28的h2,是http2,其实已经很快,但基于tcp就必须3次握手,这是无法避免的。但1.29的http3是udp协议,本身没有握手要求,但既然提供给类似tcp的功能,其中包括加密证书,肯定就被改造优化了。你只需要立即为http3会比http2更快就行了。



特别需要注意的是,nginx在内网转发proxy时,一般是反向代理,或者负载均衡时,1.28只能支持http:// 1.01版本的协议。这是明文的。虽然只是内部代理,但为了保证安全性,1.29已经支持https:// 这是为更需要安全需求的用户设计的。



这都不是重点,重点是这个:

翻译过来:加密客户端 Hello (ECH) 支持



NGINX 1.29.4 新增了对 加密客户端 Hello (ECH) 的支持。ECH 是 TLS 1.3 的一项扩展,它会在 TLS 握手期间加密服务器名称指示 (SNI) 字段。如果没有 ECH,SNI 将以明文形式发送,即使连接的其余部分都已加密,也会泄露用户正在连接的网站。ECH 通过加密整个 ClientHello 消息(包括 SNI)来解决这一隐私漏洞。



例子:



server {

ssl_ech_file /path/to/ech-keys.pem;

# ... other SSL configuration

}

该 ssl_ech_file 指令指定一个包含 ECH 配置和私钥的 PEM 文件。可以指定多个文件以支持密钥轮换,这是一种常见的操作模式。例如,Cloudflare 每小时轮换一次 ECH 密钥。



重要性: ECH 是互联网隐私保护方面的一项重大进步。它能防止被动观察者根据 TLS 握手元数据来确定用户访问的网站。这对于注重隐私的部署以及存在元数据泄露风险的环境尤为重要。



它对哪些人有帮助:



注重隐私的组织和服务

在可能监控连接元数据的地区,运营商需要进行监控。

任何部署以用户隐私为首要任务的服务的机构或个人

平台要求: 要支持 ECH,需要使用 OpenSSL 的 ECH 特性分支构建 NGINX。ECH 预计将包含在 OpenSSL 4.0 中(预计 2026 年 4 月发布)。该特性适用于 HTTP 和 Stream 模块,NGINX 会公开$ssl_ech_status 用于$ssl_ech_outer_server_name 日志记录和条件逻辑的变量。







其中:(预计 2026 年 4 月发布)





所以wnmp.org直接默认使用nginx1.29版本的最主要原因,是在2026年4月以后,支持SNI加密



也就是说,虽然https协议,是加密,但却只是内容加密。第三方是可以看到你的IP,和链接了哪个网站地址IP的,这就是SNI.



但2026年4月以后,就可以全数据加密了,包括链接时的元信息.



当然,只是你遵循升级到nginx1.29意义不大,要全网所有网站都知道去升级,才能真正做到防止第三方探测获取SNI信息。。但我们的脚本第一时间支持SNI加密,也是为互联网安全提供一份合格的部署软件!
 
后退
顶部