【问题标题】:Can SSL offloading be configured when using the Application Gateway Ingress Controller?使用应用程序网关入口控制器时可以配置 SSL 卸载吗?
【发布时间】:2019-04-24 18:00:12
【问题描述】:

我正在为 Kubernetes 使用 Azure Application Gateway Ingress Controller。我能够成功配置控制器以通过 http 公开我的 Kubernetes 服务。但是,我希望应用程序网关执行 SSL 卸载。这样应用程序网关将处理 https 请求,然后将纯 http 请求转发到我的 Kubernetes 服务。目前Ingress Controller documentation for https 要求您为您的 Kubernetes 服务指定证书。

是否可以将 Ingress Controller 配置为执行 SSL 卸载,这样我就不必在我的 Kubernetes 服务上配置 https?

【问题讨论】:

  • 也许你正在搜索this
  • 这看起来像是有人为应用程序网关提出的功能请求。所以我不能用它来解决我的问题。
  • 应用程序网关支持在网关处终止 SSL,之后流量通常不加密地流向后端服务器。此功能允许 Web 服务器从昂贵的加密和解密开销中解脱出来。这是应用程序网关的功能。但应用网关支持端到端 SSL 加密。见this

标签: azure kubernetes azure-aks azure-application-gateway


【解决方案1】:

我认为this 是您要查找的文档。

  apiVersion: extensions/v1beta1
  kind: Ingress
  metadata:
    name: guestbook
    annotations:
      kubernetes.io/ingress.class: azure/application-gateway
  spec:
    tls:
      - secretName: <guestbook-secret-name>
    rules:
    - http:
        paths:
        - backend:
            serviceName: frontend
            servicePort: 80

ps。不知道为什么要将应用程序网关与 k8s 一起使用。它的垃圾。

【讨论】:

  • 我在我的问题中引用了该文档。该配置要求 Kubernetes 服务拥有证书并通过 https 接收请求。这是我试图避免的。我只希望应用程序网关通过 https 接收请求,为我处理 SSL,然后将纯 http 请求转发到我的 Kubernetes 服务。
  • 你为什么认为这是真的?您经常在端口 80 上看到 ssl 吗?还是入口端的端到端ssl?另外,这不是服务,这是入口配置,所以你错了。服务不能有 ssl,这是应用程序网关的证书
  • 谢谢,你是对的,我混淆了服务和入口的概念,你也对,证书是用于应用程序网关的。我的困惑部分来自于我们必须将应用程序网关的证书保存在 Kubernetes 中,这对我来说似乎很奇怪。但看起来已经完成了,因为入口控制器在更新应用程序网关的配置时需要访问证书。按照您引用的说明对我有用。
【解决方案2】:

在入口添加 appgw.ingress.kubernetes.io/ssl-redirect: "true" 注释和正确配置的 TLS 证书使我们能够将应用程序网关配置为自动将 HTTP URL 重定向到其对应的 HTTPS。即它在应用程序网关上创建 https 和 http 侦听器

【讨论】:

    猜你喜欢
    • 2018-03-11
    • 2019-09-12
    • 2020-12-20
    • 1970-01-01
    • 2020-12-03
    • 1970-01-01
    • 2011-07-05
    • 2021-01-29
    • 1970-01-01
    相关资源
    最近更新 更多