如何在 Google Container Engine 附带的默认 Google 负载均衡器上启用 HSTS?

如何在 Google Container Engine 附带的默认 Google 负载均衡器上启用 HSTS?

我很想在我的 GKE 集群中设置 HSTS,因为现在在以下位置设置后,HTTP 请求会返回 Google 损坏的机器人 404 页面ingress.yml annotationskubernetes.io/ingress.allow-http: "false"

ingress.yml显然,在(即hsts-max-age和)中有这样的选项hsts-include-subdomains,但据我所知,GKE 不支持它:https://github.com/kubernetes/ingress/blob/7c749ede0a2d88f289279d61d04005e22f002104/docs/annotations.md#tls-related

我非常希望避免使用和维护自定义 Nginx 负载均衡器,避免失去 Google 的扩展能力,坚持使用默认负载均衡器是必需的。我还希望避免让 HTTP 请求通过并处理应用中的重定向和 HSTS 标头。

如果 HSTS 不可行,我可以使用良好的重定向设置。

多谢!

答案1

Google Cloud 似乎现在支持自定义请求和响应标头用于 HTTP(S) 负载均衡器。我为我们的后端添加了自定义Strict-Transport-Security响应标头,它按预期工作。

在给定的示例中,我们使用后端存储桶,但是自定义标头选项也可用于其他后端类型。

自定义响应标头示例

答案2

目前 Google Cloud Load Balancer 无法实现 HSTS。目前已开放以下功能请求:此功能。您可以订阅功能请求以获取更新。

答案3

目前,此功能*受 GCLB 后端配置支持,但它不可用作 gce-ingress 控制器的设置。希望有一天能实现!

看:https://github.com/kubernetes/ingress-gce/issues/1106

相关内容