Fiber v3.5.0 的 proxy 中间件默认拒绝内网上游,内网部署需显式放行
项目信息:
- Release:gofiber/fiber v3.5.0(2026-08-13 发布)
- 仓库:github.com/gofiber/fiber
- 文档:docs.gofiber.io
proxy 中间件加固(#4405)
v3.5.0 给 proxy 中间件加了 proxy.SecurityPolicy,默认值是收紧的:
- 默认拒绝 private/loopback 上游
- 拒绝非 http(s) scheme
- 拒绝 HTTPS→HTTP 的重定向降级
- 剥离 hop-by-hop 头
需要放行内网上游时,显式打开 AllowPrivateIPs:
proxy.WithSecurityPolicy(proxy.SecurityPolicy{
AllowPrivateIPs: true, // internal upstreams are blocked by default
})
安全策略文档:https://docs.gofiber.io/middleware/proxy#security
依赖升级
本次更新升级了若干依赖,包括 go-isatty、shamaton/msgpack/v3、gofiber/schema、gofiber/utils/v2、x/sys、x/text 等。
文档变更
- 说明相邻多参数捕获规则。
- 说明
Ctx是不可取消(never-cancelable)的 context。 - README 移到仓库根目录,便于 pkg.go.dev 渲染。
- logger 说明 error tag 何时填充。
运行要求
Fiber v3 使用 unsafe,可能与最新 Go 版本不完全兼容;v3 已按 Go 1.26 或更高版本测试。
安装:
go get -u github.com/gofiber/fiber/v3
升级注意
v3.3 已加入 SSE 中间件与主机认证(Host Authorization)中间件,v3.4 加入了 HTTP QUERY 方法支持。升级到 v3.5 的主要变化是 proxy 中间件行为收紧,属于可能影响现有配置的变更——原先代理到内网或 loopback 上游的配置,需要补上 AllowPrivateIPs。