![](/img/trans.png)
[英]Istio 504 on ALB to EKS node other than Istio gateway is located
[英]Integrating Azure Application Gateway, AGIC and Istio
有没有人能够将主题中的三个集成起来以实现端到端 TLS? 澄清一下,我说的是应用程序网关和 Istio 入口之间的 TLS。 StackOverflow 上有一些线程, AGIC Github 存储库上有一个旧问题,但我找不到任何证据表明它确实有效。 如果有人让它工作,你能分享设置吗?
• 根据Istio 文档,任何对网关的请求都会有两个连接,即客户端下游入站连接到网关和客户端出站连接到目的地,如下图所示: -
因此,在上述场景中,将网关视为 Azure 应用程序网关,将 Istio ingress 视为目的地,因此这两个连接都是独立的 TLS 连接。
对于 TLS 连接,还有几个选项:
a) 封装了什么协议? 如果连接是HTTPS ,则服务器协议应配置为 HTTPS。否则,对于使用 TLS 封装的原始 TCP 连接,协议应设置为 TLS。
b) TLS 连接是终止还是通过? 对于直通流量,将 TLS 模式字段配置为PASSTHROUGH :-
apiVersion: networking.istio.io/v1beta1
kind: Gateway
...
servers:
- port:
number: 443
name: https
protocol: HTTPS
tls:
mode: PASSTHROUGH
在这种模式下,Istio 将根据SNI 信息进行路由,并将连接原样转发到目的地。 可以通过 TLS 模式MUTUAL配置相互 TLS。 配置后,将根据配置的caCertificates或credentialName请求并验证客户端证书:-
apiVersion: networking.istio.io/v1beta1
kind: Gateway
...
servers:
- port:
number: 443
name: https
protocol: HTTPS
tls:
mode: MUTUAL
caCertificates: ... ’
唯一的区别是您在配置时应该仔细考虑网关设置。 例如,如果 Gateway 配置了 TLS PASSTHROUGH ,而DestinationRule配置了 TLS origination,那么您将得到双重加密。 这可行,但通常不是所需的行为。
绑定到网关的VirtualService也需要小心以确保它与网关定义一致。 在这种情况下,将网关视为 Azure 应用程序网关,从这个意义上讲,TLS 设置已正确配置。 有关更多信息,请参阅下面的 Istio 文档:-
https://istio.io/latest/docs/ops/configuration/traffic-management/tls-configuration/
https://istio.io/latest/docs/tasks/traffic-management/ingress/ingress-sni-passthrough/
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.