我正在处理从Azure Web应用程序防火墙通过ISTIO到Kubernetes群集的SSL连接。
从客户端到Azure WAF的连接已进行TLS加密。
据我了解,我必须在WAF中再次加密数据。我可以使用与WAF连接相同的证书吗?
在这里,我将按照本文中的描述进行操作: application-gateway-end-to-end-ssl-powershell
然后,我必须将相同的证书存放在Istios Ingress Gateway中。 如此处所述: Configure a TLS ingress gateway
> cat <<EOF | kubectl apply -f -
>
>
> apiVersion: networking.istio.io/v1alpha3
> kind: Gateway
> metadata:
> name: mygateway
> spec:
> selector:
> istio: ingressgateway # use istio default ingress gateway
> servers:
> - port:
> number: 443
> name: https
> protocol: HTTPS
> tls:
> mode: SIMPLE
> serverCertificate: /etc/istio/ingressgateway-certs/tls.crt
> privateKey: /etc/istio/ingressgateway-certs/tls.key
> hosts:
> - "httpbin.example.com"
> EOF
到目前为止,对吗?
答案 0 :(得分:0)
您需要使用在istio网关中的应用程序网关中指定的相同证书(因此,应用程序网关需要该证书)。只要证书相同且主机相同,您的网关配置就看起来有效。
答案 1 :(得分:0)
对我来说,终于奏效了。 我遇到的情况是,Application Gateway部署了自己的VirtualNetwork和Subnet。 因此,我进行了Vnet Peering,并认为就足够了。但事实并非如此。 经过几天的努力,我发现我的VirtualNetwork子网与AKS中的docker网络相同。 当我用新子网重新创建ApplicationGateway时,它不覆盖Docker子网的任何部分,因此可以正常工作。