Белый список Kubernetes Ingress для хоста - PullRequest
0 голосов
/ 11 марта 2020

Как я могу внести в белый список 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 ]

1 голос
/ 11 марта 2020

аннотации: nginx .ingress.kubernetes.io / whitelist-source-range: "1.1.1.1/24"

0 голосов
/ 16 марта 2020

В основном @ ANI SH дал вам хорошее представление о nginx .ingress.kubernetes.io / whitelist-source-range , с которого вы можете начать.

Вы можете указать допустимые диапазоны IP-адресов клиентов через аннотацию nginx .ingress.kubernetes.io / whitelist-source-range. Значение представляет собой список CIDR, разделенных запятыми, например, 10.0.0.0/24,172.10.0.1.

Чтобы настроить этот параметр глобально для всех правил Ingress, значение белого списка-source-range может быть установлено в NGINX ConfigMap.

Однако, если вы не хотите применять его ко всем своим правилам входа - просто создайте 2 отдельных входа. 1 для хостов из белого списка и второй для хоста example.com

...