对于已经选择企业 CONNECT 代理的工作负载,sidecar 会看到指向该监听器的连接。按照文档中的 sidecar 外部代理模式,把第一跳路由注册为 TCP:

apiVersion: networking.istio.io/v1
kind: ServiceEntry
metadata:
  name: corporate-forward-proxy
spec:
  hosts:
    - proxy.corp.example
  addresses:
    - 203.0.113.10/32
  ports:
    - number: 3128
      name: tcp-proxy
      protocol: TCP
  location: MESH_EXTERNAL
  resolution: NONE

把 IP 和端口替换为实际的代理端点。此示例按地址匹配 TCP;hosts 并不选择隧道内的加密网站。

应用仍然需要它支持的代理输入,例如兼容客户端使用 HTTPS_PROXY=http://203.0.113.10:3128。ServiceEntry 不会让未配置的应用发出代理请求。

注册这条代理路由,而不是它之后要隧道到的每个网站。转发代理打开后续连接,并决定账号和请求的目标是否被允许。针对第一跳 TCP 的 mesh 授权既不会提供该代理授权,也不会给应用任何选路指令。

相关文章