【问题标题】:How to protect endpoints from public access on aws-alb-ingress-controller?如何保护端点免受 aws-alb-ingress-controller 上的公共访问?
【发布时间】:2020-06-15 11:44:16
【问题描述】:

有没有办法保护端点免受公共访问和/或只有一个 IP 列表才能访问它,就像在带有 sn-p-server 注释的 nginx-ingress-controller (NLB) 上一样?

谢谢

【问题讨论】:

    标签: amazon-web-services kubernetes kubernetes-ingress


    【解决方案1】:

    Nginx-ingress 有注解whitelist-source-range

    您可以通过nginx.ingress.kubernetes.io/whitelist-source-range 注释指定允许的客户端IP 源范围。该值是CIDRs 的逗号分隔列表,例如10.0.0.0/24,172.10.0.1.

    对于 LoadBalancer 中的访问控制,您可以使用以下注释: alb.ingress.kubernetes.io/inbound-cidrs

    指定允许访问 LoadBalancer 的 CIDR。

    例子:

    alb.ingress.kubernetes.io/inbound-cidrs: 10.0.0.0/24
    

    如果指定了alb.ingress.kubernetes.io/security-groups,此注释将被忽略。

    还有alb.ingress.kubernetes.io/security-groups,它指定了您要附加到 LoadBalancer 的安全组。

    当此注解不存在时,控制器将自动创建 2 个安全组:第一个安全组将附加到 LoadBalancer 并允许从inbound-cidrs 访问listen-ports。第二个安全组将附加到 EC2 实例,并允许来自为 LoadBalancer 创建的第一个安全组的所有 TCP 流量。

    例子:

    alb.ingress.kubernetes.io/security-groups: sg-xxxx, nameOfSg1, nameOfSg2
    

    【讨论】:

      猜你喜欢
      • 2020-09-06
      • 1970-01-01
      • 1970-01-01
      • 2020-07-03
      • 2018-12-27
      • 1970-01-01
      • 2021-05-29
      • 1970-01-01
      • 2022-10-24
      相关资源
      最近更新 更多