主机的Kubernetes入口白名单IP

时间:2020-03-11 10:33:59

标签: nginx kubernetes kubernetes-ingress nginx-config nginx-ingress

如何将不同主机但同一路径的IP地址列入白名单?

example.com-应该没有白名单。所有其他必须列入白名单。

apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  annotations:
    kubernetes.io/ingress.class: nginx
spec:
  rules:
  - host: login.example.com
    http:
      paths:
      - backend:
          serviceName: login
          servicePort: 4444
        path: /
  - host: admin.example.com
    http:
      paths:
      - backend:
          serviceName: admin
          servicePort: 3333
        path: /
  - host: api.example.com
    http:
      paths:
      - backend:
          serviceName: api
          servicePort: 2222
        path: /
  - host: example.com
    http:
      paths:
      - backend:
          serviceName: wp
          servicePort: 1111
        path: /

2 个答案:

答案 0 :(得分:1)

注释: nginx.ingress.kubernetes.io/whitelist-source-range:“ 1.1.1.1/24”

答案 1 :(得分:0)

@ANISH基本上为您提供了一个关于 nginx.ingress.kubernetes.io/whitelist-source-range的好主意,您可以从这里开始。

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

要为所有Ingress规则全局配置此设置,请 可以在NGINX ConfigMap中设置whitelist-source-range值。

但是,如果您不想将其应用于所有入口规则-只需创建2个单独的入口即可。 1个用于白名单的主机,第二个用于您的example.com主机